summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBill Allombert <ballombe@debian.org>2011-11-16 12:33:27 +0100
committerIgor Pashev <pashev.igor@gmail.com>2013-03-05 16:39:28 +0000
commitdd7279795c97aa356727d366a2149c9bc838b496 (patch)
treea87d19d2e5220f5b38aec3b5b036235a59f971c9
downloadmenu-dd7279795c97aa356727d366a2149c9bc838b496.tar.gz
Imported Debian version 2.1.46debian/2.1.46
-rw-r--r--AUTHORS8
-rw-r--r--COPYING340
-rw-r--r--ChangeLog2
-rw-r--r--Doxyfile1142
-rw-r--r--INSTALL236
-rw-r--r--Makefile.am8
-rw-r--r--Makefile.in603
-rw-r--r--NEWS2
-rw-r--r--README13
-rw-r--r--aclocal.m4891
-rwxr-xr-xautogen.sh11
-rw-r--r--config.h.in97
-rwxr-xr-xconfigure6063
-rw-r--r--configure.ac42
-rw-r--r--debian/bug.presubj8
-rw-r--r--debian/changelog2208
-rw-r--r--debian/compat1
-rw-r--r--debian/conffiles4
-rw-r--r--debian/control21
-rw-r--r--debian/copyright30
-rw-r--r--debian/menu.doc-base19
-rw-r--r--debian/menu.lintian-overrides1
-rw-r--r--debian/postinst23
-rw-r--r--debian/prerm8
-rwxr-xr-xdebian/rules104
-rw-r--r--debian/triggers3
-rw-r--r--debian/update-menus.sh5
-rw-r--r--default/README7
-rw-r--r--default/ash1
-rwxr-xr-xdepcomp530
-rw-r--r--doc/BUGS24
-rw-r--r--doc/Makefile.am66
-rw-r--r--doc/Makefile.in461
-rw-r--r--doc/README.changes64
-rw-r--r--doc/README.config-menus11
-rw-r--r--doc/README.menu-methods10
-rw-r--r--doc/README.new-sections12
-rw-r--r--doc/README.package-menus24
-rw-r--r--doc/README.pre1428
-rw-r--r--doc/README.translations52
-rw-r--r--doc/TODO31
-rw-r--r--doc/announce-2116
-rw-r--r--doc/cmap.xpm32
-rw-r--r--doc/install-menu.143
-rwxr-xr-xdoc/menu.direntry11
-rw-r--r--doc/menu.html/ch1.html207
-rw-r--r--doc/menu.html/ch2.html192
-rw-r--r--doc/menu.html/ch3.html1249
-rw-r--r--doc/menu.html/ch4.html145
-rw-r--r--doc/menu.html/ch5.html226
-rw-r--r--doc/menu.html/ch6.html224
-rw-r--r--doc/menu.html/ch7.html821
-rw-r--r--doc/menu.html/ch8.html665
-rw-r--r--doc/menu.html/index.html208
-rw-r--r--doc/menu.info.gzbin0 -> 22247 bytes
-rw-r--r--doc/menu.sgml1758
-rw-r--r--doc/menu.txt.gzbin0 -> 21549 bytes
-rw-r--r--doc/menufile.5214
-rw-r--r--doc/menufile.fr.5231
-rw-r--r--doc/su-to-root.156
-rw-r--r--doc/su-to-root.fr.161
-rw-r--r--doc/translate129
-rw-r--r--doc/update-menus.1177
-rw-r--r--doc/update-menus.fr.1194
-rwxr-xr-xexamples/9wm32
-rw-r--r--examples/README33
-rwxr-xr-xexamples/afterstep48
-rwxr-xr-xexamples/afterstep-joost35
-rwxr-xr-xexamples/cat28
-rwxr-xr-xexamples/ctwm32
-rwxr-xr-xexamples/dwww46
-rw-r--r--examples/example_executable_menufile43
-rwxr-xr-xexamples/fvwm37
-rwxr-xr-xexamples/fvwm258
-rwxr-xr-xexamples/fvwm9548
-rwxr-xr-xexamples/gnome-panel48
-rw-r--r--examples/menu.config3
-rw-r--r--examples/menu.h91
-rwxr-xr-xexamples/pdmenu68
-rw-r--r--examples/system.9wmrc-menu33
-rw-r--r--examples/system.ctwmrc-menu199
-rw-r--r--examples/system.fvwm2rc381
-rw-r--r--examples/system.fvwm2rc95520
-rw-r--r--examples/system.fvwmrc-menu513
-rw-r--r--examples/system.steprc-menu301
-rw-r--r--examples/system.twmrc-menu104
-rw-r--r--examples/translate_menus99
-rwxr-xr-xexamples/twm34
-rw-r--r--install-menu/Makefile.am11
-rw-r--r--install-menu/Makefile.in428
-rw-r--r--install-menu/functions.cc474
-rw-r--r--install-menu/functions.h301
-rw-r--r--install-menu/hints.cc774
-rw-r--r--install-menu/hints.h122
-rw-r--r--install-menu/install-menu.cc1034
-rw-r--r--install-menu/install-menu.h239
-rw-r--r--install-menu/menu-tree.cc556
-rw-r--r--install-menu/menu-tree.h64
-rwxr-xr-xinstall-sh323
-rwxr-xr-xmissing360
-rwxr-xr-xmkinstalldirs40
-rw-r--r--po-sections/Makefile.am32
-rw-r--r--po-sections/Makefile.in325
-rw-r--r--po-sections/README18
-rw-r--r--po-sections/ar.po446
-rw-r--r--po-sections/ast.po447
-rw-r--r--po-sections/be.po447
-rw-r--r--po-sections/bg.po479
-rw-r--r--po-sections/bn.po478
-rw-r--r--po-sections/br.po440
-rw-r--r--po-sections/bs.po489
-rw-r--r--po-sections/ca.po479
-rw-r--r--po-sections/cs.po479
-rw-r--r--po-sections/da.po453
-rw-r--r--po-sections/de.po445
-rw-r--r--po-sections/dz.po477
-rw-r--r--po-sections/el.po450
-rw-r--r--po-sections/eo.po446
-rw-r--r--po-sections/es.po485
-rw-r--r--po-sections/et.po445
-rw-r--r--po-sections/eu.po448
-rw-r--r--po-sections/fi.po479
-rw-r--r--po-sections/fr.po489
-rw-r--r--po-sections/ga.po444
-rw-r--r--po-sections/gl.po474
-rw-r--r--po-sections/gu.po475
-rw-r--r--po-sections/he.po452
-rw-r--r--po-sections/hi.po485
-rw-r--r--po-sections/hr.po443
-rw-r--r--po-sections/hu.po477
-rw-r--r--po-sections/id.po476
-rw-r--r--po-sections/it.po476
-rw-r--r--po-sections/ja.po447
-rw-r--r--po-sections/ka.po445
-rw-r--r--po-sections/kk.po445
-rw-r--r--po-sections/km.po491
-rw-r--r--po-sections/ko.po476
-rw-r--r--po-sections/ku.po467
-rw-r--r--po-sections/lt.po449
-rw-r--r--po-sections/menu-sections.pot445
-rwxr-xr-xpo-sections/menufile2pot83
-rw-r--r--po-sections/mk.po446
-rw-r--r--po-sections/ml.po445
-rw-r--r--po-sections/mr.po488
-rw-r--r--po-sections/nb.po480
-rw-r--r--po-sections/ne.po446
-rw-r--r--po-sections/nl.po480
-rw-r--r--po-sections/nn.po495
-rw-r--r--po-sections/pa.po490
-rw-r--r--po-sections/pl.po451
-rw-r--r--po-sections/pt.po478
-rw-r--r--po-sections/pt_BR.po451
-rw-r--r--po-sections/ro.po448
-rw-r--r--po-sections/ru.po454
-rw-r--r--po-sections/sk.po443
-rw-r--r--po-sections/sq.po476
-rw-r--r--po-sections/sv.po446
-rw-r--r--po-sections/ta.po448
-rw-r--r--po-sections/th.po473
-rw-r--r--po-sections/tl.po487
-rw-r--r--po-sections/tr.po478
-rwxr-xr-xpo-sections/trme2po48
-rw-r--r--po-sections/uk.po478
-rw-r--r--po-sections/vi.po475
-rw-r--r--po-sections/wo.po489
-rw-r--r--po-sections/zh_CN.po473
-rw-r--r--po-sections/zh_TW.po445
-rw-r--r--po-su-to-root/Makefile.am29
-rw-r--r--po-su-to-root/Makefile.in322
-rw-r--r--po-su-to-root/ar.po51
-rw-r--r--po-su-to-root/bg.po53
-rw-r--r--po-su-to-root/cs.po48
-rw-r--r--po-su-to-root/de.po50
-rw-r--r--po-su-to-root/es.po75
-rw-r--r--po-su-to-root/et.po50
-rw-r--r--po-su-to-root/eu.po51
-rw-r--r--po-su-to-root/fr.po54
-rw-r--r--po-su-to-root/gl.po50
-rw-r--r--po-su-to-root/gu.po47
-rw-r--r--po-su-to-root/hu.po46
-rw-r--r--po-su-to-root/ja.po49
-rw-r--r--po-su-to-root/ko.po49
-rw-r--r--po-su-to-root/lt.po50
-rw-r--r--po-su-to-root/ml.po49
-rw-r--r--po-su-to-root/nb.po51
-rw-r--r--po-su-to-root/pt.po50
-rw-r--r--po-su-to-root/pt_BR.po51
-rw-r--r--po-su-to-root/ro.po49
-rw-r--r--po-su-to-root/ru.po54
-rw-r--r--po-su-to-root/su-to-root.pot45
-rw-r--r--po-su-to-root/sv.po49
-rw-r--r--po-su-to-root/ta.po52
-rw-r--r--po-su-to-root/th.po48
-rw-r--r--po-su-to-root/uk.po57
-rw-r--r--po-su-to-root/vi.po52
-rw-r--r--po/Makefile.am29
-rw-r--r--po/Makefile.in322
-rw-r--r--po/ast.po414
-rw-r--r--po/cs.po372
-rw-r--r--po/da.po377
-rw-r--r--po/de.po379
-rw-r--r--po/el.po382
-rw-r--r--po/eo.po378
-rw-r--r--po/es.po411
-rw-r--r--po/et.po377
-rw-r--r--po/eu.po403
-rw-r--r--po/fi.po384
-rw-r--r--po/fr.po385
-rw-r--r--po/gl.po381
-rw-r--r--po/it.po385
-rw-r--r--po/ja.po416
-rw-r--r--po/menu.pot338
-rw-r--r--po/nb.po379
-rw-r--r--po/nl.po378
-rw-r--r--po/nn.po376
-rw-r--r--po/pl.po371
-rw-r--r--po/pt.po381
-rw-r--r--po/pt_BR.po391
-rw-r--r--po/ro.po388
-rw-r--r--po/ru.po383
-rw-r--r--po/sv.po378
-rw-r--r--po/th.po369
-rw-r--r--po/tr.po381
-rw-r--r--po/uk.po382
-rw-r--r--po/vi.po400
-rw-r--r--po/zh_CN.po368
-rw-r--r--po/zh_TW.po370
-rw-r--r--scripts/Makefile.am6
-rw-r--r--scripts/Makefile.in327
-rwxr-xr-xscripts/su-to-root119
-rw-r--r--stamp-h1
-rw-r--r--stamp-h.in0
-rw-r--r--update-menus/Makefile.am8
-rw-r--r--update-menus/Makefile.in425
-rw-r--r--update-menus/common.h52
-rw-r--r--update-menus/compose.hpp393
-rw-r--r--update-menus/exceptions.h102
-rw-r--r--update-menus/parsestream.cc467
-rw-r--r--update-menus/parsestream.h176
-rw-r--r--update-menus/stringtoolbox.cc182
-rw-r--r--update-menus/stringtoolbox.h111
-rw-r--r--update-menus/update-menus.cc1097
-rw-r--r--update-menus/update-menus.h157
243 files changed, 74102 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..42f9147
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,8 @@
+Originally written and maintained by
+Joost Witteveen <joostje@debian.org>
+up to release 2.1.5-10
+
+Current developers:
+
+Bill Allombert <ballombe@debian.org>
+Morten Brix Pedersen <morten@wtf.dk>
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..ac131e6
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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 0000000..6fb3135
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,2 @@
+
+Look in debian/changelog file.
diff --git a/Doxyfile b/Doxyfile
new file mode 100644
index 0000000..2187f27
--- /dev/null
+++ b/Doxyfile
@@ -0,0 +1,1142 @@
+# Doxyfile 1.3.7
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = menu
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = doxygen
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 2 levels of 10 sub-directories under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of source
+# files, where putting all generated files in the same directory would otherwise
+# cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
+# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese,
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# This tag can be used to specify the encoding used in the generated output.
+# The encoding is not always determined by the language that is chosen,
+# but also whether or not the output is meant for Windows or non-Windows users.
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
+# forces the Windows encoding (this is the default for the Windows binary),
+# whereas setting the tag to NO uses a Unix-style encoding (the default for
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is used
+# as the annotated text. Otherwise, the brief description is used as-is. If left
+# blank, the following values are used ("$name" is automatically replaced with the
+# name of the entity): "The $name class" "The $name widget" "The $name file"
+# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explicit @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 8
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = update-menus install-menu
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
+
+FILE_PATTERNS =
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+
+INPUT_FILTER =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = NO
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes that
+# lay further from the root node will be omitted. Note that setting this option to
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that a graph may be further truncated if the graph's image dimensions are
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..23e5f25
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,236 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
+Software Foundation, Inc.
+
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. (Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.)
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You only need
+`configure.ac' if you want to change it or regenerate `configure' using
+a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+Compilers and Options
+=====================
+
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about. Run `./configure --help' for
+details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not support the `VPATH'
+variable, you have to compile the package for one architecture at a
+time in the source code directory. After you have installed the
+package for one architecture, use `make distclean' before reconfiguring
+for another architecture.
+
+Installation Names
+==================
+
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script). Here is a another example:
+
+ /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
+configuration-related scripts to be executed by `/bin/bash'.
+
+`configure' Invocation
+======================
+
+`configure' recognizes the following options to control how it operates.
+
+`--help'
+`-h'
+ Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..697fb79
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,8 @@
+SUBDIRS = update-menus install-menu doc scripts po po-sections po-su-to-root
+EXTRA_DIST = autogen.sh Doxyfile
+dist-hook:
+ mkdir $(distdir)/examples $(distdir)/default
+ for i in $(srcdir)/examples/*; do \
+ test -f $$i && cp $$i $(distdir)/examples; done
+ for i in $(srcdir)/default/*; do \
+ test -f $$i && cp $$i $(distdir)/default; done
diff --git a/Makefile.in b/Makefile.in
new file mode 100644
index 0000000..7fdeb39
--- /dev/null
+++ b/Makefile.in
@@ -0,0 +1,603 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = .
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = .
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(srcdir)/config.h.in \
+ $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
+ depcomp install-sh missing mkinstalldirs
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno configure.status.lineno
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+ { test ! -d $(distdir) \
+ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr $(distdir); }; }
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = update-menus install-menu doc scripts po po-sections po-su-to-root
+EXTRA_DIST = autogen.sh Doxyfile
+all: config.h
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+am--refresh:
+ @:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
+ cd $(srcdir) && $(AUTOMAKE) --gnu \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ echo ' $(SHELL) ./config.status'; \
+ $(SHELL) ./config.status;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+
+config.h: stamp-h1
+ @if test ! -f $@; then \
+ rm -f stamp-h1; \
+ $(MAKE) stamp-h1; \
+ else :; fi
+
+stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
+ @rm -f stamp-h1
+ cd $(top_builddir) && $(SHELL) ./config.status config.h
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_srcdir) && $(AUTOHEADER)
+ rm -f stamp-h1
+ touch $@
+
+distclean-hdr:
+ -rm -f config.h stamp-h1
+uninstall-info-am:
+
+# 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):
+ @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; \
+ (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"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @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; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (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; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ 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 || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(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; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) config.h.in $(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; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ $(am__remove_distdir)
+ mkdir $(distdir)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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; \
+ distdir=`$(am__cd) $(distdir) && pwd`; \
+ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+ (cd $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$top_distdir" \
+ distdir="$$distdir/$$subdir" \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r $(distdir)
+dist-gzip: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+dist-bzip2: distdir
+ tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+ $(am__remove_distdir)
+
+dist-tarZ: distdir
+ tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+ $(am__remove_distdir)
+
+dist-shar: distdir
+ shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+ $(am__remove_distdir)
+
+dist-zip: distdir
+ -rm -f $(distdir).zip
+ zip -rq $(distdir).zip $(distdir)
+ $(am__remove_distdir)
+
+dist dist-all: distdir
+ tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+ $(am__remove_distdir)
+
+# This target untars the dist file and tries a VPATH configuration. Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+ case '$(DIST_ARCHIVES)' in \
+ *.tar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+ *.tar.bz2*) \
+ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.Z*) \
+ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+ *.shar.gz*) \
+ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+ *.zip*) \
+ unzip $(distdir).zip ;;\
+ esac
+ chmod -R a-w $(distdir); chmod a+w $(distdir)
+ mkdir $(distdir)/_build
+ mkdir $(distdir)/_inst
+ chmod a-w $(distdir)
+ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
+ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
+ && cd $(distdir)/_build \
+ && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+ $(DISTCHECK_CONFIGURE_FLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) \
+ && $(MAKE) $(AM_MAKEFLAGS) dvi \
+ && $(MAKE) $(AM_MAKEFLAGS) check \
+ && $(MAKE) $(AM_MAKEFLAGS) install \
+ && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+ && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
+ distuninstallcheck \
+ && chmod -R a-w "$$dc_install_base" \
+ && ({ \
+ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
+ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
+ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
+ } || { rm -rf "$$dc_destdir"; exit 1; }) \
+ && rm -rf "$$dc_destdir" \
+ && $(MAKE) $(AM_MAKEFLAGS) dist \
+ && rm -rf $(DIST_ARCHIVES) \
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ $(am__remove_distdir)
+ @(echo "$(distdir) archives ready for distribution: "; \
+ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
+distuninstallcheck:
+ @cd $(distuninstallcheck_dir) \
+ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+ || { echo "ERROR: files left after uninstall:" ; \
+ if test -n "$(DESTDIR)"; then \
+ echo " (check DESTDIR support)"; \
+ fi ; \
+ $(distuninstallcheck_listfiles) ; \
+ exit 1; } >&2
+distcleancheck: distclean
+ @if test '$(srcdir)' = . ; then \
+ echo "ERROR: distcleancheck can only run from a VPATH build" ; \
+ exit 1 ; \
+ fi
+ @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
+ || { echo "ERROR: files left in build directory after distclean:" ; \
+ $(distcleancheck_listfiles) ; \
+ exit 1; } >&2
+check-am: all-am
+check: check-recursive
+all-am: Makefile config.h
+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)
+
+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 mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-hdr distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
+ check-am clean clean-generic clean-recursive ctags \
+ ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-hook \
+ dist-shar dist-tarZ dist-zip distcheck distclean \
+ distclean-generic distclean-hdr distclean-recursive \
+ distclean-tags distcleancheck distdir distuninstallcheck dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-info-am
+
+dist-hook:
+ mkdir $(distdir)/examples $(distdir)/default
+ for i in $(srcdir)/examples/*; do \
+ test -f $$i && cp $$i $(distdir)/examples; done
+ for i in $(srcdir)/default/*; do \
+ test -f $$i && cp $$i $(distdir)/default; done
+# 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/NEWS b/NEWS
new file mode 100644
index 0000000..6fb3135
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,2 @@
+
+Look in debian/changelog file.
diff --git a/README b/README
new file mode 100644
index 0000000..fb3d38e
--- /dev/null
+++ b/README
@@ -0,0 +1,13 @@
+README - menu
+-------------
+
+menu is a menu-generator originally made for Debian. It provides an
+update-menus program to generate menus for different providers of menus
+(both window managers and console applications like pdmenu).
+
+Menu files are placed in /usr/share/menu by packages. update-menus then reads
+these files and passes them to install-menu which generates a menu specified
+by a menu-method (placed in /etc/menu-method).
+
+The full documentation for menu can be found in doc/menu.txt.gz or
+doc/menu.html/
diff --git a/aclocal.m4 b/aclocal.m4
new file mode 100644
index 0000000..b7a0e85
--- /dev/null
+++ b/aclocal.m4
@@ -0,0 +1,891 @@
+# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005 Free Software Foundation, Inc.
+# This file 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.
+
+# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+ [AM_AUTOMAKE_VERSION([1.9.6])])
+
+# AM_AUX_DIR_EXPAND -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
+# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
+# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory. The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run. This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+# fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+# fails if $ac_aux_dir is absolute,
+# fails when called from a subdirectory in a VPATH build with
+# a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir. In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
+# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+# MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH. The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
+
+AC_DEFUN([AM_AUX_DIR_EXPAND],
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+
+# AM_CONDITIONAL -*- Autoconf -*-
+
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 7
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+ $1_TRUE=
+ $1_FALSE='#'
+else
+ $1_TRUE='#'
+ $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+ AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery. Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
+ [$1], CXX, [depcc="$CXX" am_compiler_list=],
+ [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+ [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
+ [depcc="$$1" am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+ [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_$1_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_$1_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+
+
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+
+
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
+
+# Generate code to set up dependency tracking. -*- Autoconf -*-
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+#serial 3
+
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[for mf in $CONFIG_FILES; do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # So let's grep whole file.
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+ dirpart=`AS_DIRNAME("$mf")`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`AS_DIRNAME(["$file"])`
+ AS_MKDIR_P([$dirpart/$fdir])
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+done
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+
+
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled. FIXME. This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 8
+
+# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
+AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
+
+# Do all the work for Automake. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 12
+
+# This macro actually does too much. Some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
+
+# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
+# AM_INIT_AUTOMAKE([OPTIONS])
+# -----------------------------------------------
+# The call with PACKAGE and VERSION arguments is the old style
+# call (pre autoconf-2.50), which is being phased out. PACKAGE
+# and VERSION should now be passed to AC_INIT and removed from
+# the call to AM_INIT_AUTOMAKE.
+# We support both call styles for the transition. After
+# the next Automake release, Autoconf can make the AC_INIT
+# arguments mandatory, and then we can depend on a new Autoconf
+# release and drop the old call support.
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_PREREQ([2.58])dnl
+dnl Autoconf wants to disallow AM_ names. We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+ test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+ [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+ [_AM_DEPENDENCIES(CC)],
+ [define([AC_PROG_CC],
+ defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [_AM_DEPENDENCIES(CXX)],
+ [define([AC_PROG_CXX],
+ defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+])
+
+
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated. The stamp files are numbered to have different names.
+
+# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
+# loop where config.status creates the headers, so we can generate
+# our stamp files there.
+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+[# Compute $1's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ $1 | $1:* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# AM_PROG_INSTALL_SH
+# ------------------
+# Define $install_sh.
+AC_DEFUN([AM_PROG_INSTALL_SH],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
+
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 2
+
+# Check whether the underlying file-system supports filenames
+# with a leading dot. For instance MS-DOS doesn't.
+AC_DEFUN([AM_SET_LEADING_DOT],
+[rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+
+# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
+# From Jim Meyering
+
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 4
+
+AC_DEFUN([AM_MAINTAINER_MODE],
+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+ dnl maintainer-mode is disabled by default
+ AC_ARG_ENABLE(maintainer-mode,
+[ --enable-maintainer-mode enable make rules and dependencies not useful
+ (and sometimes confusing) to the casual installer],
+ USE_MAINTAINER_MODE=$enableval,
+ USE_MAINTAINER_MODE=no)
+ AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+ AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+ MAINT=$MAINTAINER_MODE_TRUE
+ AC_SUBST(MAINT)dnl
+]
+)
+
+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+
+# Check to see how 'make' treats includes. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 3
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+ am__include=include
+ am__quote=
+ _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+
+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 4
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
+#
+# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
+# created by `make install' are always world readable, even if the
+# installer happens to have an overly restrictive umask (e.g. 077).
+# This was a mistake. There are at least two reasons why we must not
+# use `-m 0755':
+# - it causes special bits like SGID to be ignored,
+# - it may be too restrictive (some setups expect 775 directories).
+#
+# Do not use -m 0755 and let people choose whatever they expect by
+# setting umask.
+#
+# We cannot accept any implementation of `mkdir' that recognizes `-p'.
+# Some implementations (such as Solaris 8's) are not thread-safe: if a
+# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
+# concurrently, both version can detect that a/ is missing, but only
+# one can create it and the other will error out. Consequently we
+# restrict ourselves to GNU make (using the --version option ensures
+# this.)
+AC_DEFUN([AM_PROG_MKDIR_P],
+[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # We used to keeping the `.' as first argument, in order to
+ # allow $(mkdir_p) to be used without argument. As in
+ # $(mkdir_p) $(somedir)
+ # where $(somedir) is conditionally defined. However this is wrong
+ # for two reasons:
+ # 1. if the package is installed by a user who cannot write `.'
+ # make install will fail,
+ # 2. the above comment should most certainly read
+ # $(mkdir_p) $(DESTDIR)$(somedir)
+ # so it does not work when $(somedir) is undefined and
+ # $(DESTDIR) is not.
+ # To support the latter case, we have to write
+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+ # so the `.' trick is pointless.
+ mkdir_p='mkdir -p --'
+else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ for d in ./-p ./--version;
+ do
+ test -d $d && rmdir $d
+ done
+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+ if test -f "$ac_aux_dir/mkinstalldirs"; then
+ mkdir_p='$(mkinstalldirs)'
+ else
+ mkdir_p='$(install_sh) -d'
+ fi
+fi
+AC_SUBST([mkdir_p])])
+
+# Helper functions for option handling. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 3
+
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+
+# _AM_SET_OPTION(NAME)
+# ------------------------------
+# Set option NAME. Presently that only means defining a flag for this option.
+AC_DEFUN([_AM_SET_OPTION],
+[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+
+# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+# -------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+AC_DEFUN([_AM_IF_OPTION],
+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 4
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ if test "$[*]" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "$[2]" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries. This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+ AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Check how to create a tarball. -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+#
+# This file 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.
+
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
+#
+# Substitute a variable $(am__tar) that is a command
+# writing to stdout a FORMAT-tarball containing the directory
+# $tardir.
+# tardir=directory && $(am__tar) > result.tar
+#
+# Substitute a variable $(am__untar) that extract such
+# a tarball read from stdin.
+# $(am__untar) < result.tar
+AC_DEFUN([_AM_PROG_TAR],
+[# Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+ [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+ [m4_case([$1], [ustar],, [pax],,
+ [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar;
+ do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
+
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+]) # _AM_PROG_TAR
+
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..535ce0e
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,11 @@
+#! /bin/sh
+#This very stupid shell script is Public Domain.
+
+errorconf="returned an error code or did not exists at all. \
+You need autoconf >= 2.50 and automake >= 1.4. Sorry!"
+
+aclocal || { echo "aclocal $errorconf"; exit 1; }
+autoconf || { echo "autoconf $errorconf"; exit 1; }
+autoheader || { echo "autoheader $errorconf"; exit 1; }
+automake -a -c || { echo "automake $errorconf"; exit 1; }
+./configure --enable-maintainer-mode $*
diff --git a/config.h.in b/config.h.in
new file mode 100644
index 0000000..c673dcf
--- /dev/null
+++ b/config.h.in
@@ -0,0 +1,97 @@
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
+ */
+#undef HAVE_DIRENT_H
+
+/* Define to 1 if you have the <fcntl.h> header file. */
+#undef HAVE_FCNTL_H
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define to 1 if you have the <libintl.h> header file. */
+#undef HAVE_LIBINTL_H
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define to 1 if you have the `mkdir' function. */
+#undef HAVE_MKDIR
+
+/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
+#undef HAVE_NDIR_H
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the `strdup' function. */
+#undef HAVE_STRDUP
+
+/* Define to 1 if you have the `strerror' function. */
+#undef HAVE_STRERROR
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define to 1 if you have the <syslog.h> header file. */
+#undef HAVE_SYSLOG_H
+
+/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
+ */
+#undef HAVE_SYS_DIR_H
+
+/* Define to 1 if you have the <sys/file.h> header file. */
+#undef HAVE_SYS_FILE_H
+
+/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
+ */
+#undef HAVE_SYS_NDIR_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
+#undef HAVE_SYS_WAIT_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Name of package */
+#undef PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define as the return type of signal handlers (`int' or `void'). */
+#undef RETSIGTYPE
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Version number of package */
+#undef VERSION
diff --git a/configure b/configure
new file mode 100755
index 0000000..db26148
--- /dev/null
+++ b/configure
@@ -0,0 +1,6063 @@
+#! /bin/sh
+# Guess values for system-dependent variables and create Makefiles.
+# Generated by GNU Autoconf 2.65.
+#
+#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+#
+#
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
+fi
+
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in #(
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in #((
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ exit 1
+fi
+
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test "x$CONFIG_SHELL" = x; then
+ as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
+fi
+"
+ as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
+
+exitcode=0
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+ exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+ as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+ as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+ eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+ test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+ if (eval "$as_required") 2>/dev/null; then :
+ as_have_required=yes
+else
+ as_have_required=no
+fi
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ as_found=:
+ case $as_dir in #(
+ /*)
+ for as_base in sh bash ksh sh5; do
+ # Try only shells that exist, to save several forks.
+ as_shell=$as_dir/$as_base
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ CONFIG_SHELL=$as_shell as_have_required=yes
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ break 2
+fi
+fi
+ done;;
+ esac
+ as_found=false
+done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+ CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
+IFS=$as_save_IFS
+
+
+ if test "x$CONFIG_SHELL" != x; then :
+ # We cannot yet assume a decent shell, so we have to provide a
+ # neutralization value for shells without unset; and this also
+ # works around shells that cannot unset nonexistent variables.
+ BASH_ENV=/dev/null
+ ENV=/dev/null
+ (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+fi
+
+ if test x$as_have_required = xno; then :
+ $as_echo "$0: This script requires a shell more modern than all"
+ $as_echo "$0: the shells that I found on your system."
+ if test x${ZSH_VERSION+set} = xset ; then
+ $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+ $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+ else
+ $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
+ fi
+ exit 1
+fi
+fi
+fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
+
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
+# as_fn_error ERROR [LINENO LOG_FD]
+# ---------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with status $?, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$?; test $as_status -eq 0 && as_status=1
+ if test "$3"; then
+ as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
+ fi
+ $as_echo "$as_me: error: $1" >&2
+ as_fn_exit $as_status
+} # as_fn_error
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
+
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+
+ as_lineno_1=$LINENO as_lineno_1a=$LINENO
+ as_lineno_2=$LINENO as_lineno_2a=$LINENO
+ eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+ test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+ # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
+ sed -n '
+ p
+ /[$]LINENO/=
+ ' <$as_myself |
+ sed '
+ s/[$]LINENO.*/&-/
+ t lineno
+ b
+ :lineno
+ N
+ :loop
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+ t loop
+ s/-\n.*//
+ ' >$as_me.lineno &&
+ chmod +x "$as_me.lineno" ||
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensitive to this).
+ . "./$as_me.lineno"
+ # Exit status is that of the last command.
+ exit
+}
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in #(((((
+-n*)
+ case `echo 'xy\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
+ esac;;
+*)
+ ECHO_N='-n';;
+esac
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
+else
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
+ fi
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p='mkdir -p "$as_dir"'
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_clean_files=
+ac_config_libobj_dir=.
+LIBOBJS=
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
+PACKAGE_URL=
+
+ac_unique_file="update-menus/update-menus.cc"
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#ifdef STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# ifdef HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#ifdef HAVE_STRING_H
+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
+# include <memory.h>
+# endif
+# include <string.h>
+#endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_INTTYPES_H
+# include <inttypes.h>
+#endif
+#ifdef HAVE_STDINT_H
+# include <stdint.h>
+#endif
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+ac_subst_vars='LTLIBOBJS
+LIBOBJS
+PO_SUTOROOT
+PO_SECTIONS
+PO_PROGRAMS
+MO_SUTOROOT
+MO_SECTIONS
+MO_PROGRAMS
+EGREP
+GREP
+CPP
+am__fastdepCC_FALSE
+am__fastdepCC_TRUE
+CCDEPMODE
+ac_ct_CC
+CFLAGS
+CC
+am__fastdepCXX_FALSE
+am__fastdepCXX_TRUE
+CXXDEPMODE
+AMDEPBACKSLASH
+AMDEP_FALSE
+AMDEP_TRUE
+am__quote
+am__include
+DEPDIR
+OBJEXT
+EXEEXT
+ac_ct_CXX
+CPPFLAGS
+LDFLAGS
+CXXFLAGS
+CXX
+MAINT
+MAINTAINER_MODE_FALSE
+MAINTAINER_MODE_TRUE
+am__untar
+am__tar
+AMTAR
+am__leading_dot
+SET_MAKE
+AWK
+mkdir_p
+INSTALL_STRIP_PROGRAM
+STRIP
+install_sh
+MAKEINFO
+AUTOHEADER
+AUTOMAKE
+AUTOCONF
+ACLOCAL
+VERSION
+PACKAGE
+CYGPATH_W
+INSTALL_DATA
+INSTALL_SCRIPT
+INSTALL_PROGRAM
+target_alias
+host_alias
+build_alias
+LIBS
+ECHO_T
+ECHO_N
+ECHO_C
+DEFS
+mandir
+localedir
+libdir
+psdir
+pdfdir
+dvidir
+htmldir
+infodir
+docdir
+oldincludedir
+includedir
+localstatedir
+sharedstatedir
+sysconfdir
+datadir
+datarootdir
+libexecdir
+sbindir
+bindir
+program_transform_name
+prefix
+exec_prefix
+PACKAGE_URL
+PACKAGE_BUGREPORT
+PACKAGE_STRING
+PACKAGE_VERSION
+PACKAGE_TARNAME
+PACKAGE_NAME
+PATH_SEPARATOR
+SHELL'
+ac_subst_files=''
+ac_user_opts='
+enable_option_checking
+enable_maintainer_mode
+enable_dependency_tracking
+'
+ ac_precious_vars='build_alias
+host_alias
+target_alias
+CXX
+CXXFLAGS
+LDFLAGS
+LIBS
+CPPFLAGS
+CCC
+CC
+CFLAGS
+CPP'
+
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+ac_unrecognized_opts=
+ac_unrecognized_sep=
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+# (The list follows the same order as the GNU Coding Standards.)
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datarootdir='${prefix}/share'
+datadir='${datarootdir}'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+docdir='${datarootdir}/doc/${PACKAGE}'
+infodir='${datarootdir}/info'
+htmldir='${docdir}'
+dvidir='${docdir}'
+pdfdir='${docdir}'
+psdir='${docdir}'
+libdir='${exec_prefix}/lib'
+localedir='${datarootdir}/locale'
+mandir='${datarootdir}/man'
+
+ac_prev=
+ac_dashdash=
+for ac_option
+do
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval $ac_prev=\$ac_option
+ ac_prev=
+ continue
+ fi
+
+ case $ac_option in
+ *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *) ac_optarg=yes ;;
+ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case $ac_dashdash$ac_option in
+ --)
+ ac_dashdash=yes ;;
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir=$ac_optarg ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build_alias ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build_alias=$ac_optarg ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file=$ac_optarg ;;
+
+ --config-cache | -C)
+ cache_file=config.cache ;;
+
+ -datadir | --datadir | --datadi | --datad)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=*)
+ datadir=$ac_optarg ;;
+
+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
+ | --dataroo | --dataro | --datar)
+ ac_prev=datarootdir ;;
+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
+ datarootdir=$ac_optarg ;;
+
+ -disable-* | --disable-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid feature name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=no ;;
+
+ -docdir | --docdir | --docdi | --doc | --do)
+ ac_prev=docdir ;;
+ -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
+ docdir=$ac_optarg ;;
+
+ -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
+ ac_prev=dvidir ;;
+ -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
+ dvidir=$ac_optarg ;;
+
+ -enable-* | --enable-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid feature name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=\$ac_optarg ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix=$ac_optarg ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he | -h)
+ ac_init_help=long ;;
+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+ ac_init_help=recursive ;;
+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+ ac_init_help=short ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host_alias ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host_alias=$ac_optarg ;;
+
+ -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
+ ac_prev=htmldir ;;
+ -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
+ | --ht=*)
+ htmldir=$ac_optarg ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir=$ac_optarg ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir=$ac_optarg ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir=$ac_optarg ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir=$ac_optarg ;;
+
+ -localedir | --localedir | --localedi | --localed | --locale)
+ ac_prev=localedir ;;
+ -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
+ localedir=$ac_optarg ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst | --locals)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
+ localstatedir=$ac_optarg ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir=$ac_optarg ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c | -n)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir=$ac_optarg ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix=$ac_optarg ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix=$ac_optarg ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix=$ac_optarg ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name=$ac_optarg ;;
+
+ -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
+ ac_prev=pdfdir ;;
+ -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
+ pdfdir=$ac_optarg ;;
+
+ -psdir | --psdir | --psdi | --psd | --ps)
+ ac_prev=psdir ;;
+ -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
+ psdir=$ac_optarg ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir=$ac_optarg ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir=$ac_optarg ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site=$ac_optarg ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir=$ac_optarg ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir=$ac_optarg ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target_alias ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target_alias=$ac_optarg ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers | -V)
+ ac_init_version=: ;;
+
+ -with-* | --with-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid package name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=\$ac_optarg ;;
+
+ -without-* | --without-*)
+ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid package name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=no ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes=$ac_optarg ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries=$ac_optarg ;;
+
+ -*) as_fn_error "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information."
+ ;;
+
+ *=*)
+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+ # Reject names that are not valid shell variable names.
+ case $ac_envvar in #(
+ '' | [0-9]* | *[!_$as_cr_alnum]* )
+ as_fn_error "invalid variable name: \`$ac_envvar'" ;;
+ esac
+ eval $ac_envvar=\$ac_optarg
+ export $ac_envvar ;;
+
+ *)
+ # FIXME: should be removed in autoconf 3.0.
+ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ as_fn_error "missing argument to $ac_option"
+fi
+
+if test -n "$ac_unrecognized_opts"; then
+ case $enable_option_checking in
+ no) ;;
+ fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;;
+ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+ esac
+fi
+
+# Check all directory arguments for consistency.
+for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
+ datadir sysconfdir sharedstatedir localstatedir includedir \
+ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
+ libdir localedir mandir
+do
+ eval ac_val=\$$ac_var
+ # Remove trailing slashes.
+ case $ac_val in
+ */ )
+ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
+ eval $ac_var=\$ac_val;;
+ esac
+ # Be sure to have absolute directory names.
+ case $ac_val in
+ [\\/$]* | ?:[\\/]* ) continue;;
+ NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
+ esac
+ as_fn_error "expected an absolute directory name for --$ac_var: $ac_val"
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+ if test "x$build_alias" = x; then
+ cross_compiling=maybe
+ $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used." >&2
+ elif test "x$build_alias" != "x$host_alias"; then
+ cross_compiling=yes
+ fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
+ac_ls_di=`ls -di .` &&
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
+ as_fn_error "working directory cannot be determined"
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
+ as_fn_error "pwd does not report name of working directory"
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+ ac_srcdir_defaulted=yes
+ # Try the directory containing this script, then the parent directory.
+ ac_confdir=`$as_dirname -- "$as_myself" ||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_myself" : 'X\(//\)[^/]' \| \
+ X"$as_myself" : 'X\(//\)$' \| \
+ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_myself" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ srcdir=$ac_confdir
+ if test ! -r "$srcdir/$ac_unique_file"; then
+ srcdir=..
+ fi
+else
+ ac_srcdir_defaulted=no
+fi
+if test ! -r "$srcdir/$ac_unique_file"; then
+ test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
+ as_fn_error "cannot find sources ($ac_unique_file) in $srcdir"
+fi
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
+ac_abs_confdir=`(
+ cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg"
+ pwd)`
+# When building in place, set srcdir=.
+if test "$ac_abs_confdir" = "$ac_pwd"; then
+ srcdir=.
+fi
+# Remove unnecessary trailing slashes from srcdir.
+# Double slashes in file names in object file debugging info
+# mess up M-x gdb in Emacs.
+case $srcdir in
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
+esac
+for ac_var in $ac_precious_vars; do
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_env_${ac_var}_value=\$${ac_var}
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat <<_ACEOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE. See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+ -h, --help display this help and exit
+ --help=short display options specific to this package
+ --help=recursive display the short help of all the included packages
+ -V, --version display version information and exit
+ -q, --quiet, --silent do not print \`checking...' messages
+ --cache-file=FILE cache test results in FILE [disabled]
+ -C, --config-cache alias for \`--cache-file=config.cache'
+ -n, --no-create do not create output files
+ --srcdir=DIR find the sources in DIR [configure dir or \`..']
+
+Installation directories:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
+ --infodir=DIR info documentation [DATAROOTDIR/info]
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ --mandir=DIR man documentation [DATAROOTDIR/man]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
+ --htmldir=DIR html documentation [DOCDIR]
+ --dvidir=DIR dvi documentation [DOCDIR]
+ --pdfdir=DIR pdf documentation [DOCDIR]
+ --psdir=DIR ps documentation [DOCDIR]
+_ACEOF
+
+ cat <<\_ACEOF
+
+Program names:
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM run sed PROGRAM on installed program names
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+
+ cat <<\_ACEOF
+
+Optional Features:
+ --disable-option-checking ignore unrecognized --enable/--with options
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --enable-maintainer-mode enable make rules and dependencies not useful
+ (and sometimes confusing) to the casual installer
+ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors
+
+Some influential environment variables:
+ CXX C++ compiler command
+ CXXFLAGS C++ compiler flags
+ LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
+ nonstandard directory <lib dir>
+ LIBS libraries to pass to the linker, e.g. -l<library>
+ CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
+ you have headers in a nonstandard directory <include dir>
+ CC C compiler command
+ CFLAGS C compiler flags
+ CPP C preprocessor
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to the package provider.
+_ACEOF
+ac_status=$?
+fi
+
+if test "$ac_init_help" = "recursive"; then
+ # If there are subdirs, report their specific --help.
+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+ test -d "$ac_dir" ||
+ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
+ continue
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+ cd "$ac_dir" || { ac_status=$?; continue; }
+ # Check for guested configure.
+ if test -f "$ac_srcdir/configure.gnu"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_srcdir/configure"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure" --help=recursive
+ else
+ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ fi || ac_status=$?
+ cd "$ac_pwd" || { ac_status=$?; break; }
+ done
+fi
+
+test -n "$ac_init_help" && exit $ac_status
+if $ac_init_version; then
+ cat <<\_ACEOF
+configure
+generated by GNU Autoconf 2.65
+
+Copyright (C) 2009 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+ exit
+fi
+
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
+
+# ac_fn_cxx_try_compile LINENO
+# ----------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_cxx_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_cxx_try_compile
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_header_compiler=yes
+else
+ ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ ac_header_preproc=yes
+else
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+ yes:no: )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_mongrel
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $2 (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_func
+cat >config.log <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.65. Invocation command line was
+
+ $ $0 $@
+
+_ACEOF
+exec 5>>config.log
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
+
+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ $as_echo "PATH: $as_dir"
+ done
+IFS=$as_save_IFS
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+ for ac_arg
+ do
+ case $ac_arg in
+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ continue ;;
+ *\'*)
+ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ case $ac_pass in
+ 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
+ 2)
+ as_fn_append ac_configure_args1 " '$ac_arg'"
+ if test $ac_must_keep_next = true; then
+ ac_must_keep_next=false # Got value, back to normal.
+ else
+ case $ac_arg in
+ *=* | --config-cache | -C | -disable-* | --disable-* \
+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+ | -with-* | --with-* | -without-* | --without-* | --x)
+ case "$ac_configure_args0 " in
+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+ esac
+ ;;
+ -* ) ac_must_keep_next=true ;;
+ esac
+ fi
+ as_fn_append ac_configure_args " '$ac_arg'"
+ ;;
+ esac
+ done
+done
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log. We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Use '\'' to represent an apostrophe within the trap.
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
+trap 'exit_status=$?
+ # Save into config.log some information that might help in debugging.
+ {
+ echo
+
+ cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+ echo
+ # The following way of writing the cache mishandles newlines in values,
+(
+ for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) { eval $ac_var=; unset $ac_var;} ;;
+ esac ;;
+ esac
+ done
+ (set) 2>&1 |
+ case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ sed -n \
+ "s/'\''/'\''\\\\'\'''\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
+ ;; #(
+ *)
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+ ;;
+ esac |
+ sort
+)
+ echo
+
+ cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_vars
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+
+ if test -n "$ac_subst_files"; then
+ cat <<\_ASBOX
+## ------------------- ##
+## File substitutions. ##
+## ------------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_files
+ do
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
+ done | sort
+ echo
+ fi
+
+ if test -s confdefs.h; then
+ cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+ echo
+ cat confdefs.h
+ echo
+ fi
+ test "$ac_signal" != 0 &&
+ $as_echo "$as_me: caught signal $ac_signal"
+ $as_echo "$as_me: exit $exit_status"
+ } >&5
+ rm -f core *.core core.conftest.* &&
+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
+ exit $exit_status
+' 0
+for ac_signal in 1 2 13 15; do
+ trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -f -r conftest* confdefs.h
+
+$as_echo "/* confdefs.h */" > confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer an explicitly selected file to automatically selected ones.
+ac_site_file1=NONE
+ac_site_file2=NONE
+if test -n "$CONFIG_SITE"; then
+ ac_site_file1=$CONFIG_SITE
+elif test "x$prefix" != xNONE; then
+ ac_site_file1=$prefix/share/config.site
+ ac_site_file2=$prefix/etc/config.site
+else
+ ac_site_file1=$ac_default_prefix/share/config.site
+ ac_site_file2=$ac_default_prefix/etc/config.site
+fi
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+do
+ test "x$ac_site_file" = xNONE && continue
+ if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+ sed 's/^/| /' "$ac_site_file" >&5
+ . "$ac_site_file"
+ fi
+done
+
+if test -r "$cache_file"; then
+ # Some versions of bash will fail to source /dev/null (special files
+ # actually), so we avoid doing that. DJGPP emulates it as a regular file.
+ if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+$as_echo "$as_me: loading cache $cache_file" >&6;}
+ case $cache_file in
+ [\\/]* | ?:[\\/]* ) . "$cache_file";;
+ *) . "./$cache_file";;
+ esac
+ fi
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+$as_echo "$as_me: creating cache $cache_file" >&6;}
+ >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in $ac_precious_vars; do
+ eval ac_old_set=\$ac_cv_env_${ac_var}_set
+ eval ac_new_set=\$ac_env_${ac_var}_set
+ eval ac_old_val=\$ac_cv_env_${ac_var}_value
+ eval ac_new_val=\$ac_env_${ac_var}_value
+ case $ac_old_set,$ac_new_set in
+ set,)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,set)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,);;
+ *)
+ if test "x$ac_old_val" != "x$ac_new_val"; then
+ # differences in whitespace do not lead to failure.
+ ac_old_val_w=`echo x $ac_old_val`
+ ac_new_val_w=`echo x $ac_new_val`
+ if test "$ac_old_val_w" != "$ac_new_val_w"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ ac_cache_corrupted=:
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+ eval $ac_var=\$ac_old_val
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
+$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
+$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
+ fi;;
+ esac
+ # Pass precious variables to config.status.
+ if test "$ac_new_set" = set; then
+ case $ac_new_val in
+ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *) ac_arg=$ac_var=$ac_new_val ;;
+ esac
+ case " $ac_configure_args " in
+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
+ *) as_fn_append ac_configure_args " '$ac_arg'" ;;
+ esac
+ fi
+done
+if $ac_cache_corrupted; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
+fi
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+am__api_version="1.9"
+ac_aux_dir=
+for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+ for ac_t in install-sh install.sh shtool; do
+ if test -f "$ac_dir/$ac_t"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/$ac_t -c"
+ break 2
+ fi
+ done
+done
+if test -z "$ac_aux_dir"; then
+ as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
+fi
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
+ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
+ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
+
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in #((
+ ./ | .// | /[cC]/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+
+ done
+IFS=$as_save_IFS
+
+rm -rf conftest.one conftest.two conftest.dir
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ INSTALL=$ac_install_sh
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+$as_echo_n "checking whether build environment is sane... " >&6; }
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ if test "$*" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$*" != "X $srcdir/configure conftest.file" \
+ && test "$*" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ as_fn_error "ls -t appears to fail. Make sure there is not a broken
+alias in your environment" "$LINENO" 5
+ fi
+
+ test "$2" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ as_fn_error "newly created file is older than distributed files!
+Check your system clock" "$LINENO" 5
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+test "$program_prefix" != NONE &&
+ program_transform_name="s&^&$program_prefix&;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+ program_transform_name="s&\$&$program_suffix&;$program_transform_name"
+# Double any \ or $.
+# By default was `s,x,x', remove it if useless.
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # We used to keeping the `.' as first argument, in order to
+ # allow $(mkdir_p) to be used without argument. As in
+ # $(mkdir_p) $(somedir)
+ # where $(somedir) is conditionally defined. However this is wrong
+ # for two reasons:
+ # 1. if the package is installed by a user who cannot write `.'
+ # make install will fail,
+ # 2. the above comment should most certainly read
+ # $(mkdir_p) $(DESTDIR)$(somedir)
+ # so it does not work when $(somedir) is undefined and
+ # $(DESTDIR) is not.
+ # To support the latter case, we have to write
+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+ # so the `.' trick is pointless.
+ mkdir_p='mkdir -p --'
+else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ for d in ./-p ./--version;
+ do
+ test -d $d && rmdir $d
+ done
+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+ if test -f "$ac_aux_dir/mkinstalldirs"; then
+ mkdir_p='$(mkinstalldirs)'
+ else
+ mkdir_p='$(install_sh) -d'
+ fi
+fi
+
+for ac_prog in gawk mawk nawk awk
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AWK+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$AWK"; then
+ ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_AWK="$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$AWK" && break
+done
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
+esac
+rm -f conftest.make
+fi
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+ SET_MAKE=
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+ test -f $srcdir/config.status; then
+ as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE=menu
+ VERSION=2.1.45
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE "$PACKAGE"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+ac_config_headers="$ac_config_headers config.h"
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
+$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
+ # Check whether --enable-maintainer-mode was given.
+if test "${enable_maintainer_mode+set}" = set; then :
+ enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
+else
+ USE_MAINTAINER_MODE=no
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
+$as_echo "$USE_MAINTAINER_MODE" >&6; }
+
+
+if test $USE_MAINTAINER_MODE = yes; then
+ MAINTAINER_MODE_TRUE=
+ MAINTAINER_MODE_FALSE='#'
+else
+ MAINTAINER_MODE_TRUE='#'
+ MAINTAINER_MODE_FALSE=
+fi
+
+ MAINT=$MAINTAINER_MODE_TRUE
+
+ ac_ext=cpp
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+if test -z "$CXX"; then
+ if test -n "$CCC"; then
+ CXX=$CCC
+ else
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CXX+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CXX"; then
+ ac_cv_prog_CXX="$CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+CXX=$ac_cv_prog_CXX
+if test -n "$CXX"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
+$as_echo "$CXX" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$CXX" && break
+ done
+fi
+if test -z "$CXX"; then
+ ac_ct_CXX=$CXX
+ for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CXX"; then
+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CXX="$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
+if test -n "$ac_ct_CXX"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
+$as_echo "$ac_ct_CXX" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_CXX" && break
+done
+
+ if test "x$ac_ct_CXX" = x; then
+ CXX="g++"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CXX=$ac_ct_CXX
+ fi
+fi
+
+ fi
+fi
+# Provide some information about the compiler.
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
+
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C++ compiler works" >&5
+$as_echo_n "checking whether the C++ compiler works... " >&6; }
+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+
+# The possible output files:
+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
+
+ac_rmfiles=
+for ac_file in $ac_files
+do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
+ * ) ac_rmfiles="$ac_rmfiles $ac_file";;
+ esac
+done
+rm -f $ac_rmfiles
+
+if { { ac_try="$ac_link_default"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link_default") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
+ # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
+# in a Makefile. We should not override ac_cv_exeext if it was cached,
+# so that the user can short-circuit this test for compilers unknown to
+# Autoconf.
+for ac_file in $ac_files ''
+do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
+ ;;
+ [ab].out )
+ # We found the default executable, but exeext='' is most
+ # certainly right.
+ break;;
+ *.* )
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ then :; else
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ fi
+ # We set ac_cv_exeext here because the later test for it is not
+ # safe: cross compilers may not add the suffix if given an `-o'
+ # argument, so we may need to know it at that point already.
+ # Even if this section looks crufty: it has the advantage of
+ # actually working.
+ break;;
+ * )
+ break;;
+ esac
+done
+test "$ac_cv_exeext" = no && ac_cv_exeext=
+
+else
+ ac_file=''
+fi
+if test -z "$ac_file"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ as_fn_set_status 77
+as_fn_error "C++ compiler cannot create executables
+See \`config.log' for more details." "$LINENO" 5; }; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler default output file name" >&5
+$as_echo_n "checking for C++ compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
+ac_exeext=$ac_cv_exeext
+
+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+$as_echo_n "checking for suffix of executables... " >&6; }
+if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
+ # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ break;;
+ * ) break;;
+ esac
+done
+else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." "$LINENO" 5; }
+fi
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+$as_echo "$ac_cv_exeext" >&6; }
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+ { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if { ac_try='./conftest$ac_cv_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot run C++ compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." "$LINENO" 5; }
+ fi
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+$as_echo_n "checking for suffix of object files... " >&6; }
+if test "${ac_cv_objext+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
+ for ac_file in conftest.o conftest.obj conftest.*; do
+ test -f "$ac_file" || continue;
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+ break;;
+ esac
+done
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." "$LINENO" 5; }
+fi
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+$as_echo "$ac_cv_objext" >&6; }
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
+$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ac_compiler_gnu=yes
+else
+ ac_compiler_gnu=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
+$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GXX=yes
+else
+ GXX=
+fi
+ac_test_CXXFLAGS=${CXXFLAGS+set}
+ac_save_CXXFLAGS=$CXXFLAGS
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
+$as_echo_n "checking whether $CXX accepts -g... " >&6; }
+if test "${ac_cv_prog_cxx_g+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_cxx_werror_flag=$ac_cxx_werror_flag
+ ac_cxx_werror_flag=yes
+ ac_cv_prog_cxx_g=no
+ CXXFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ac_cv_prog_cxx_g=yes
+else
+ CXXFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+
+else
+ ac_cxx_werror_flag=$ac_save_cxx_werror_flag
+ CXXFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ac_cv_prog_cxx_g=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_cxx_werror_flag=$ac_save_cxx_werror_flag
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
+$as_echo "$ac_cv_prog_cxx_g" >&6; }
+if test "$ac_test_CXXFLAGS" = set; then
+ CXXFLAGS=$ac_save_CXXFLAGS
+elif test $ac_cv_prog_cxx_g = yes; then
+ if test "$GXX" = yes; then
+ CXXFLAGS="-g -O2"
+ else
+ CXXFLAGS="-g"
+ fi
+else
+ if test "$GXX" = yes; then
+ CXXFLAGS="-O2"
+ else
+ CXXFLAGS=
+ fi
+fi
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+ am__include=include
+ am__quote=
+ _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ fi
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
+$as_echo "$_am_result" >&6; }
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking was given.
+if test "${enable_dependency_tracking+set}" = set; then :
+ enableval=$enable_dependency_tracking;
+fi
+
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+
+
+if test "x$enable_dependency_tracking" != xno; then
+ AMDEP_TRUE=
+ AMDEP_FALSE='#'
+else
+ AMDEP_TRUE='#'
+ AMDEP_FALSE=
+fi
+
+
+
+
+depcc="$CXX" am_compiler_list=
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CXX_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CXX_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CXX_dependencies_compiler_type=none
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
+CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
+
+
+
+if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
+ am__fastdepCXX_TRUE=
+ am__fastdepCXX_FALSE='#'
+else
+ am__fastdepCXX_TRUE='#'
+ am__fastdepCXX_FALSE=
+fi
+
+
+
+
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ fi
+fi
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# != 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl.exe
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl.exe
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+ test -n "$ac_ct_CC" && break
+done
+
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
+fi
+
+fi
+
+
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "no acceptable C compiler found in \$PATH
+See \`config.log' for more details." "$LINENO" 5; }
+
+# Provide some information about the compiler.
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_compiler_gnu=yes
+else
+ ac_compiler_gnu=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_g=yes
+else
+ CFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_g=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_c89=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+ xno)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
+ *)
+ CC="$CC $ac_cv_prog_cc_c89"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
+
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+depcc="$CC" am_compiler_list=
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CC_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CC_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+
+
+if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+ am__fastdepCC_TRUE=
+ am__fastdepCC_FALSE='#'
+else
+ am__fastdepCC_TRUE='#'
+ am__fastdepCC_FALSE=
+fi
+
+
+
+ac_header_dirent=no
+for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
+ as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
+$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+#include <$ac_hdr>
+
+int
+main ()
+{
+if ((DIR *) 0)
+return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$as_ac_Header=yes"
+else
+ eval "$as_ac_Header=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$as_ac_Header
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
+_ACEOF
+
+ac_header_dirent=$ac_hdr; break
+fi
+
+done
+# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
+if test $ac_header_dirent = dirent.h; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+$as_echo_n "checking for library containing opendir... " >&6; }
+if test "${ac_cv_search_opendir+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char opendir ();
+int
+main ()
+{
+return opendir ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' dir; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_opendir=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test "${ac_cv_search_opendir+set}" = set; then :
+ break
+fi
+done
+if test "${ac_cv_search_opendir+set}" = set; then :
+
+else
+ ac_cv_search_opendir=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+$as_echo "$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+$as_echo_n "checking for library containing opendir... " >&6; }
+if test "${ac_cv_search_opendir+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char opendir ();
+int
+main ()
+{
+return opendir ();
+ ;
+ return 0;
+}
+_ACEOF
+for ac_lib in '' x; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+ ac_res=-l$ac_lib
+ LIBS="-l$ac_lib $ac_func_search_save_LIBS"
+ fi
+ if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_search_opendir=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext
+ if test "${ac_cv_search_opendir+set}" = set; then :
+ break
+fi
+done
+if test "${ac_cv_search_opendir+set}" = set; then :
+
+else
+ ac_cv_search_opendir=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+$as_echo "$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then :
+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+else
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ # Broken: success on invalid input.
+continue
+else
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+else
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether nonexistent headers
+ # can be detected and how.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ # Broken: success on invalid input.
+continue
+else
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+
+else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." "$LINENO" 5; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_header_stdc=yes
+else
+ ac_cv_header_stdc=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then :
+ :
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <ctype.h>
+#include <stdlib.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ return 2;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+
+else
+ ac_cv_header_stdc=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5
+$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
+if test "${ac_cv_header_sys_wait_h+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+#include <sys/wait.h>
+#ifndef WEXITSTATUS
+# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
+#endif
+#ifndef WIFEXITED
+# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
+#endif
+
+int
+main ()
+{
+ int s;
+ wait (&s);
+ s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_header_sys_wait_h=yes
+else
+ ac_cv_header_sys_wait_h=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5
+$as_echo "$ac_cv_header_sys_wait_h" >&6; }
+if test $ac_cv_header_sys_wait_h = yes; then
+
+$as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+for ac_header in fcntl.h sys/file.h syslog.h unistd.h libintl.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking return type of signal handlers" >&5
+$as_echo_n "checking return type of signal handlers... " >&6; }
+if test "${ac_cv_type_signal+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <sys/types.h>
+#include <signal.h>
+
+int
+main ()
+{
+return *(signal (0, 0)) (0) == 1;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_type_signal=int
+else
+ ac_cv_type_signal=void
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_signal" >&5
+$as_echo "$ac_cv_type_signal" >&6; }
+
+cat >>confdefs.h <<_ACEOF
+#define RETSIGTYPE $ac_cv_type_signal
+_ACEOF
+
+
+for ac_func in mkdir strdup strerror
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+eval as_val=\$$as_ac_var
+ if test "x$as_val" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+PO_PROGRAMS=`cd ${srcdir}/po; echo *.po`
+PO_SECTIONS=`cd ${srcdir}/po-sections; echo *.po`
+PO_SUTOROOT=`cd ${srcdir}/po-su-to-root; echo *.po`
+MO_PROGRAMS=`echo $PO_PROGRAMS | sed s/\.po/.mo/g`
+MO_SECTIONS=`echo $PO_SECTIONS | sed s/\.po/.mo/g`
+MO_SUTOROOT=`echo $PO_SUTOROOT | sed s/\.po/.mo/g`
+
+
+
+
+
+
+
+
+ac_config_files="$ac_config_files po-su-to-root/Makefile po/Makefile scripts/Makefile po-sections/Makefile doc/Makefile update-menus/Makefile install-menu/Makefile Makefile"
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems. If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, we kill variables containing newlines.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(
+ for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) { eval $ac_var=; unset $ac_var;} ;;
+ esac ;;
+ esac
+ done
+
+ (set) 2>&1 |
+ case $as_nl`(ac_space=' '; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ # `set' does not quote correctly, so add quotes: double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \.
+ sed -n \
+ "s/'/'\\\\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+ ;; #(
+ *)
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
+ ;;
+ esac |
+ sort
+) |
+ sed '
+ /^ac_cv_env_/b end
+ t clear
+ :clear
+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ t end
+ s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+ :end' >>confcache
+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
+ if test -w "$cache_file"; then
+ test "x$cache_file" != "x/dev/null" &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+$as_echo "$as_me: updating cache $cache_file" >&6;}
+ cat confcache >$cache_file
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+ fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+ # 1. Remove the extension, and $U if already installed.
+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
+ ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+ # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
+ # will be set to the directory where LIBOBJS objects are built.
+ as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+ as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
+done
+LIBOBJS=$ac_libobjs
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
+ as_fn_error "conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+ as_fn_error "conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
+ as_fn_error "conditional \"am__fastdepCXX\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+ as_fn_error "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_write_fail=0
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
+
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
+fi
+
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in #(
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
+fi
+
+
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in #((
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ exit 1
+fi
+
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+
+# as_fn_error ERROR [LINENO LOG_FD]
+# ---------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with status $?, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$?; test $as_status -eq 0 && as_status=1
+ if test "$3"; then
+ as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
+ fi
+ $as_echo "$as_me: error: $1" >&2
+ as_fn_exit $as_status
+} # as_fn_error
+
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
+
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in #(((((
+-n*)
+ case `echo 'xy\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
+ esac;;
+*)
+ ECHO_N='-n';;
+esac
+
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
+else
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
+ fi
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p='mkdir -p "$as_dir"'
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# Save the log message, to keep $0 and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling.
+ac_log="
+This file was extended by $as_me, which was
+generated by GNU Autoconf 2.65. Invocation command line was
+
+ CONFIG_FILES = $CONFIG_FILES
+ CONFIG_HEADERS = $CONFIG_HEADERS
+ CONFIG_LINKS = $CONFIG_LINKS
+ CONFIG_COMMANDS = $CONFIG_COMMANDS
+ $ $0 $@
+
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
+"
+
+_ACEOF
+
+case $ac_config_files in *"
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
+esac
+
+case $ac_config_headers in *"
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
+esac
+
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+# Files that config.status was made for.
+config_files="$ac_config_files"
+config_headers="$ac_config_headers"
+config_commands="$ac_config_commands"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ac_cs_usage="\
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration. Unless the files
+and actions are specified as TAGs, all are instantiated by default.
+
+Usage: $0 [OPTION]... [TAG]...
+
+ -h, --help print this help, then exit
+ -V, --version print version number and configuration settings, then exit
+ --config print configuration, then exit
+ -q, --quiet, --silent
+ do not print progress messages
+ -d, --debug don't remove temporary files
+ --recheck update $as_me by reconfiguring in the same conditions
+ --file=FILE[:TEMPLATE]
+ instantiate the configuration file FILE
+ --header=FILE[:TEMPLATE]
+ instantiate the configuration header FILE
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration commands:
+$config_commands
+
+Report bugs to the package provider."
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_version="\\
+config.status
+configured by $0, generated by GNU Autoconf 2.65,
+ with options \\"\$ac_cs_config\\"
+
+Copyright (C) 2009 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+
+ac_pwd='$ac_pwd'
+srcdir='$srcdir'
+INSTALL='$INSTALL'
+AWK='$AWK'
+test -n "\$AWK" || AWK=awk
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# The default lists apply if the user does not specify any file.
+ac_need_defaults=:
+while test $# != 0
+do
+ case $1 in
+ --*=*)
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
+ ac_shift=:
+ ;;
+ *)
+ ac_option=$1
+ ac_optarg=$2
+ ac_shift=shift
+ ;;
+ esac
+
+ case $ac_option in
+ # Handling of the options.
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ ac_cs_recheck=: ;;
+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
+ $as_echo "$ac_cs_version"; exit ;;
+ --config | --confi | --conf | --con | --co | --c )
+ $as_echo "$ac_cs_config"; exit ;;
+ --debug | --debu | --deb | --de | --d | -d )
+ debug=: ;;
+ --file | --fil | --fi | --f )
+ $ac_shift
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ as_fn_append CONFIG_FILES " '$ac_optarg'"
+ ac_need_defaults=false;;
+ --header | --heade | --head | --hea )
+ $ac_shift
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ as_fn_append CONFIG_HEADERS " '$ac_optarg'"
+ ac_need_defaults=false;;
+ --he | --h)
+ # Conflict between --help and --header
+ as_fn_error "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
+ --help | --hel | -h )
+ $as_echo "$ac_cs_usage"; exit ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil | --si | --s)
+ ac_cs_silent=: ;;
+
+ # This is an error.
+ -*) as_fn_error "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
+
+ *) as_fn_append ac_config_targets " $1"
+ ac_need_defaults=false ;;
+
+ esac
+ shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+ exec 6>/dev/null
+ ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+if \$ac_cs_recheck; then
+ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ shift
+ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+ CONFIG_SHELL='$SHELL'
+ export CONFIG_SHELL
+ exec "\$@"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+exec 5>>config.log
+{
+ echo
+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+ $as_echo "$ac_log"
+} >&5
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+#
+# INIT-COMMANDS
+#
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+
+# Handling of arguments.
+for ac_config_target in $ac_config_targets
+do
+ case $ac_config_target in
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+ "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ "po-su-to-root/Makefile") CONFIG_FILES="$CONFIG_FILES po-su-to-root/Makefile" ;;
+ "po/Makefile") CONFIG_FILES="$CONFIG_FILES po/Makefile" ;;
+ "scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;;
+ "po-sections/Makefile") CONFIG_FILES="$CONFIG_FILES po-sections/Makefile" ;;
+ "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+ "update-menus/Makefile") CONFIG_FILES="$CONFIG_FILES update-menus/Makefile" ;;
+ "install-menu/Makefile") CONFIG_FILES="$CONFIG_FILES install-menu/Makefile" ;;
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+
+ *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
+ esac
+done
+
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used. Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience. Make it in the build tree
+# simply because there is no reason against having it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Hook for its removal unless debugging.
+# Note that there is a small window in which the directory will not be cleaned:
+# after its creation but before its name has been assigned to `$tmp'.
+$debug ||
+{
+ tmp=
+ trap 'exit_status=$?
+ { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+' 0
+ trap 'as_fn_exit 1' 1 2 13 15
+}
+# Create a (secure) tmp directory for tmp files.
+
+{
+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
+ test -n "$tmp" && test -d "$tmp"
+} ||
+{
+ tmp=./conf$$-$RANDOM
+ (umask 077 && mkdir "$tmp")
+} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5
+
+# Set up the scripts for CONFIG_FILES section.
+# No need to generate them if there are no CONFIG_FILES.
+# This happens for instance with `./config.status config.h'.
+if test -n "$CONFIG_FILES"; then
+
+
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+ eval ac_cr=\$\'\\r\'
+fi
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
+ ac_cs_awk_cr='\r'
+else
+ ac_cs_awk_cr=$ac_cr
+fi
+
+echo 'BEGIN {' >"$tmp/subs1.awk" &&
+_ACEOF
+
+
+{
+ echo "cat >conf$$subs.awk <<_ACEOF" &&
+ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
+ echo "_ACEOF"
+} >conf$$subs.sh ||
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+ac_delim='%!_!# '
+for ac_last_try in false false false false false :; do
+ . ./conf$$subs.sh ||
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+
+ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
+ if test $ac_delim_n = $ac_delim_num; then
+ break
+ elif $ac_last_try; then
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+rm -f conf$$subs.sh
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+_ACEOF
+sed -n '
+h
+s/^/S["/; s/!.*/"]=/
+p
+g
+s/^[^!]*!//
+:repl
+t repl
+s/'"$ac_delim"'$//
+t delim
+:nl
+h
+s/\(.\{148\}\)..*/\1/
+t more1
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
+p
+n
+b repl
+:more1
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t nl
+:delim
+h
+s/\(.\{148\}\)..*/\1/
+t more2
+s/["\\]/\\&/g; s/^/"/; s/$/"/
+p
+b
+:more2
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t delim
+' <conf$$subs.awk | sed '
+/^[^""]/{
+ N
+ s/\n//
+}
+' >>$CONFIG_STATUS || ac_write_fail=1
+rm -f conf$$subs.awk
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+_ACAWK
+cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+ for (key in S) S_is_set[key] = 1
+ FS = ""
+
+}
+{
+ line = $ 0
+ nfields = split(line, field, "@")
+ substed = 0
+ len = length(field[1])
+ for (i = 2; i < nfields; i++) {
+ key = field[i]
+ keylen = length(key)
+ if (S_is_set[key]) {
+ value = S[key]
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+ len += length(value) + length(field[++i])
+ substed = 1
+ } else
+ len += 1 + keylen
+ }
+
+ print line
+}
+
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
+ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
+else
+ cat
+fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+ || as_fn_error "could not setup config files machinery" "$LINENO" 5
+_ACEOF
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
+s/:*\$(srcdir):*/:/
+s/:*\${srcdir}:*/:/
+s/:*@srcdir@:*/:/
+s/^\([^=]*=[ ]*\):*/\1/
+s/:*$//
+s/^[^=]*=[ ]*$//
+}'
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+fi # test -n "$CONFIG_FILES"
+
+# Set up the scripts for CONFIG_HEADERS section.
+# No need to generate them if there are no CONFIG_HEADERS.
+# This happens for instance with `./config.status Makefile'.
+if test -n "$CONFIG_HEADERS"; then
+cat >"$tmp/defines.awk" <<\_ACAWK ||
+BEGIN {
+_ACEOF
+
+# Transform confdefs.h into an awk script `defines.awk', embedded as
+# here-document in config.status, that substitutes the proper values into
+# config.h.in to produce config.h.
+
+# Create a delimiter string that does not exist in confdefs.h, to ease
+# handling of long lines.
+ac_delim='%!_!# '
+for ac_last_try in false false :; do
+ ac_t=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_t"; then
+ break
+ elif $ac_last_try; then
+ as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+
+# For the awk script, D is an array of macro values keyed by name,
+# likewise P contains macro parameters if any. Preserve backslash
+# newline sequences.
+
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
+sed -n '
+s/.\{148\}/&'"$ac_delim"'/g
+t rset
+:rset
+s/^[ ]*#[ ]*define[ ][ ]*/ /
+t def
+d
+:def
+s/\\$//
+t bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3"/p
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
+d
+:bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3\\\\\\n"\\/p
+t cont
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
+t cont
+d
+:cont
+n
+s/.\{148\}/&'"$ac_delim"'/g
+t clear
+:clear
+s/\\$//
+t bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
+d
+:bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
+b cont
+' <confdefs.h | sed '
+s/'"$ac_delim"'/"\\\
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ for (key in D) D_is_set[key] = 1
+ FS = ""
+}
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
+ line = \$ 0
+ split(line, arg, " ")
+ if (arg[1] == "#") {
+ defundef = arg[2]
+ mac1 = arg[3]
+ } else {
+ defundef = substr(arg[1], 2)
+ mac1 = arg[2]
+ }
+ split(mac1, mac2, "(") #)
+ macro = mac2[1]
+ prefix = substr(line, 1, index(line, defundef) - 1)
+ if (D_is_set[macro]) {
+ # Preserve the white space surrounding the "#".
+ print prefix "define", macro P[macro] D[macro]
+ next
+ } else {
+ # Replace #undef with comments. This is necessary, for example,
+ # in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+ if (defundef == "undef") {
+ print "/*", prefix defundef, macro, "*/"
+ next
+ }
+ }
+}
+{ print }
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ as_fn_error "could not setup config headers machinery" "$LINENO" 5
+fi # test -n "$CONFIG_HEADERS"
+
+
+eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
+shift
+for ac_tag
+do
+ case $ac_tag in
+ :[FHLC]) ac_mode=$ac_tag; continue;;
+ esac
+ case $ac_mode$ac_tag in
+ :[FHL]*:*);;
+ :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;;
+ :[FH]-) ac_tag=-:-;;
+ :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
+ esac
+ ac_save_IFS=$IFS
+ IFS=:
+ set x $ac_tag
+ IFS=$ac_save_IFS
+ shift
+ ac_file=$1
+ shift
+
+ case $ac_mode in
+ :L) ac_source=$1;;
+ :[FH])
+ ac_file_inputs=
+ for ac_f
+ do
+ case $ac_f in
+ -) ac_f="$tmp/stdin";;
+ *) # Look for the file first in the build tree, then in the source tree
+ # (if the path is not absolute). The absolute path cannot be DOS-style,
+ # because $ac_f cannot contain `:'.
+ test -f "$ac_f" ||
+ case $ac_f in
+ [\\/$]*) false;;
+ *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
+ esac ||
+ as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;;
+ esac
+ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+ as_fn_append ac_file_inputs " '$ac_f'"
+ done
+
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
+ # use $as_me), people would be surprised to read:
+ # /* config.h. Generated by config.status. */
+ configure_input='Generated from '`
+ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+ `' by configure.'
+ if test x"$ac_file" != x-; then
+ configure_input="$ac_file. $configure_input"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+$as_echo "$as_me: creating $ac_file" >&6;}
+ fi
+ # Neutralize special characters interpreted by sed in replacement strings.
+ case $configure_input in #(
+ *\&* | *\|* | *\\* )
+ ac_sed_conf_input=`$as_echo "$configure_input" |
+ sed 's/[\\\\&|]/\\\\&/g'`;; #(
+ *) ac_sed_conf_input=$configure_input;;
+ esac
+
+ case $ac_tag in
+ *:-:* | *:-) cat >"$tmp/stdin" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;;
+ esac
+ ;;
+ esac
+
+ ac_dir=`$as_dirname -- "$ac_file" ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_file" : 'X\(//\)[^/]' \| \
+ X"$ac_file" : 'X\(//\)$' \| \
+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ as_dir="$ac_dir"; as_fn_mkdir_p
+ ac_builddir=.
+
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
+
+case $srcdir in
+ .) # We are building in place.
+ ac_srcdir=.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
+esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+
+ case $ac_mode in
+ :F)
+ #
+ # CONFIG_FILE
+ #
+
+ case $INSTALL in
+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+ *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
+ esac
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# If the template does not know about datarootdir, expand it.
+# FIXME: This hack should be removed a few years after 2.60.
+ac_datarootdir_hack=; ac_datarootdir_seen=
+ac_sed_dataroot='
+/datarootdir/ {
+ p
+ q
+}
+/@datadir@/p
+/@docdir@/p
+/@infodir@/p
+/@localedir@/p
+/@mandir@/p'
+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
+*datarootdir*) ac_datarootdir_seen=yes;;
+*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ ac_datarootdir_hack='
+ s&@datadir@&$datadir&g
+ s&@docdir@&$docdir&g
+ s&@infodir@&$infodir&g
+ s&@localedir@&$localedir&g
+ s&@mandir@&$mandir&g
+ s&\\\${datarootdir}&$datarootdir&g' ;;
+esac
+_ACEOF
+
+# Neutralize VPATH when `$srcdir' = `.'.
+# Shell code in configure.ac might set extrasub.
+# FIXME: do we really want to maintain this feature?
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_sed_extra="$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s|@configure_input@|$ac_sed_conf_input|;t t
+s&@top_builddir@&$ac_top_builddir_sub&;t t
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
+s&@srcdir@&$ac_srcdir&;t t
+s&@abs_srcdir@&$ac_abs_srcdir&;t t
+s&@top_srcdir@&$ac_top_srcdir&;t t
+s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
+s&@builddir@&$ac_builddir&;t t
+s&@abs_builddir@&$ac_abs_builddir&;t t
+s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
+s&@INSTALL@&$ac_INSTALL&;t t
+$ac_datarootdir_hack
+"
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+
+test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
+ { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&5
+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&2;}
+
+ rm -f "$tmp/stdin"
+ case $ac_file in
+ -) cat "$tmp/out" && rm -f "$tmp/out";;
+ *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ esac \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+ ;;
+ :H)
+ #
+ # CONFIG_HEADER
+ #
+ if test x"$ac_file" != x-; then
+ {
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
+ } >"$tmp/config.h" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+ if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
+ else
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+ fi
+ else
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
+ || as_fn_error "could not create -" "$LINENO" 5
+ fi
+# Compute "$ac_file"'s index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ "$ac_file" | "$ac_file":* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for "$ac_file"" >`$as_dirname -- "$ac_file" ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_file" : 'X\(//\)[^/]' \| \
+ X"$ac_file" : 'X\(//\)$' \| \
+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`/stamp-h$_am_stamp_count
+ ;;
+
+ :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+$as_echo "$as_me: executing $ac_file commands" >&6;}
+ ;;
+ esac
+
+
+ case $ac_file$ac_mode in
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # So let's grep whole file.
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$mf" : 'X\(//\)[^/]' \| \
+ X"$mf" : 'X\(//\)$' \| \
+ X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$mf" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$file" : 'X\(//\)[^/]' \| \
+ X"$file" : 'X\(//\)$' \| \
+ X"$file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ as_dir=$dirpart/$fdir; as_fn_mkdir_p
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+done
+ ;;
+
+ esac
+done # for ac_tag
+
+
+as_fn_exit 0
+_ACEOF
+ac_clean_files=$ac_clean_files_save
+
+test $ac_write_fail = 0 ||
+ as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded. So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status. When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+ ac_cs_success=:
+ ac_config_status_args=
+ test "$silent" = yes &&
+ ac_config_status_args="$ac_config_status_args --quiet"
+ exec 5>/dev/null
+ $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+ exec 5>>config.log
+ # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+ # would make configure fail if this is the last instruction.
+ $ac_cs_success || as_fn_exit $?
+fi
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+fi
+
+
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..e23ad14
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,42 @@
+dnl Process this file with autoconf to produce a configure script.
+AC_INIT
+AC_CONFIG_SRCDIR([update-menus/update-menus.cc])
+
+AM_INIT_AUTOMAKE(menu,2.1.45)
+AM_CONFIG_HEADER(config.h)
+AM_MAINTAINER_MODE dnl Be nice with packagers, i.e. ourself
+dnl Checks for programs.
+AC_PROG_CXX
+
+AC_PROG_INSTALL
+
+dnl Checks for libraries.
+
+dnl Checks for header files.
+AC_HEADER_DIRENT
+AC_HEADER_STDC
+AC_HEADER_SYS_WAIT
+AC_CHECK_HEADERS(fcntl.h sys/file.h syslog.h unistd.h libintl.h)
+
+dnl Checks for library functions.
+AC_TYPE_SIGNAL
+AC_CHECK_FUNCS(mkdir strdup strerror)
+
+dnl Available po files.
+PO_PROGRAMS=`cd ${srcdir}/po; echo *.po`
+PO_SECTIONS=`cd ${srcdir}/po-sections; echo *.po`
+PO_SUTOROOT=`cd ${srcdir}/po-su-to-root; echo *.po`
+MO_PROGRAMS=`echo $PO_PROGRAMS | sed s/\.po/.mo/g`
+MO_SECTIONS=`echo $PO_SECTIONS | sed s/\.po/.mo/g`
+MO_SUTOROOT=`echo $PO_SUTOROOT | sed s/\.po/.mo/g`
+
+AC_SUBST(MO_PROGRAMS)
+AC_SUBST(MO_SECTIONS)
+AC_SUBST(MO_SUTOROOT)
+AC_SUBST(PO_PROGRAMS)
+AC_SUBST(PO_SECTIONS)
+AC_SUBST(PO_SUTOROOT)
+
+AC_CONFIG_FILES([po-su-to-root/Makefile po/Makefile scripts/Makefile po-sections/Makefile doc/Makefile update-menus/Makefile install-menu/Makefile Makefile])
+AC_OUTPUT
+
diff --git a/debian/bug.presubj b/debian/bug.presubj
new file mode 100644
index 0000000..92cf658
--- /dev/null
+++ b/debian/bug.presubj
@@ -0,0 +1,8 @@
+Reporting menu bugs
+-------------------
+
+If you are reporting a bug about the way menus are displayed, please
+provide the name and version of the window manager (or menu manager)
+you use. You can use the output of
+dpkg-query -l <window manager package name>
+
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..75055bf
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,2208 @@
+menu (2.1.46) unstable; urgency=low
+
+ * The "Marseille" release.
+ * Handling of l10n by Christian Perrier:
+ + Programs translations:
+ - Ukrainian updated by Serhij Dubyk.
+ - Brazilian Portuguese updated by Sérgio Cipolla.
+ Closes: #623121
+ + su-to-root translations:
+ - Ukrainian updated by Serhij Dubyk.
+ - Brazilian Portuguese updated by Sérgio Cipolla.
+ Closes: #623121
+ + Menu sections translations:
+ - Ukrainian updated by Serhij Dubyk.
+ - Brazilian Portuguese updated by Sérgio Cipolla.
+ Closes: #623121
+ - Danish updated by Joe Dalton. Closes: #624656
+
+ * doc/menu.sgml:
+ + Fix typo in chapter 3.7. Thanks Hideki Yamane. Closes: #625736
+ * update-menus/update-menus.cc
+ + 'update-menus --remove' failed to remove lock file.
+ Thanks Dave Steele. Closes: #648268
+ * debian/control
+ + Bump Standards-Version to 3.9.2.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 16 Nov 2011 12:33:27 +0100
+
+menu (2.1.45) unstable; urgency=low
+
+ * The "no ghost" release
+ * Handling of l10n by Christian Perrier:
+ + Programs translations:
+ - Danish updated. Closes: #609583
+ * su-to-root: add support for gksudo and kdesudo. Closes: #604085, #602118.
+ * update-menus/update-menus.cc:
+ + option --menufilesdir: do not require a trailing slash. Closes: #595032.
+ * debian/prerm:
+ + automatically remove generate system menu files when menu is removed.
+ Closes: #305764, #592441.
+ * update-menus/parsestream.cc:
+ + catch endoffile exception in init method, thanks Renzo Davoli.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 07 Mar 2011 11:58:39 +0100
+
+menu (2.1.44) unstable; urgency=low
+
+ * The "Bordeaux" release.
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Estonian added. Closes: #582243
+ + Programs translations:
+ - Estonian added.
+ + su-to-root translations:
+ - Estonian added.
+ * debian/control:
+ - Suggests menu-l10n.
+ - Bump Standards-Version to 3.9.1.
+ * Fix spelling error in /usr/share/menu/README.
+ Thanks to Filipus Klutiero. Closes: #592114
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 06 Sep 2010 16:48:27 +0200
+
+menu (2.1.43) unstable; urgency=low
+
+ * The "Javier Jugendtraum" release.
+ * menu repository on alioth.debian.org converted to subversion
+ * doc/su-to-root.1:
+ + Fix typo. Closes: #552153. Thanks Filipus Klutiero.
+ * doc/menu.sgml:
+ + Mention that the new menu structure was drafted by Linas Zvirblis.
+ * install-menu/functions.cc, install-menu/install-menu.cc:
+ + Add support for translation of menu entries in gettext domain
+ 'menu-entries'. Translations will be provided by the menu-l10n package.
+ Closes: #37716
+ * update automake-related scripts.
+
+ -- Bill Allombert <ballombe@debian.org> Sun, 24 Jan 2010 13:08:52 +0100
+
+menu (2.1.42) unstable; urgency=low
+
+ * The "answer to life, the universe and menu" release.
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Asturian added. Closes: #511622
+ - Kazakh added. Closes: #520998
+ - Bengali updated
+ - Breton added. Closes: #532686
+ - Slovak updated. Closes: #522746
+ + Programs translations:
+ - Asturian added. Closes: #511622
+
+ * debian/compat, debian/control
+ - Switch to debhelper v5.
+
+ * debian/control:
+ - Depends: add ${misc:Depends}
+ - Bump Standards-Version to 3.8.3.
+
+ * install-info transition:
+ + doc/Makefile.am, doc/menu.direntry:
+ - Add @direntry to menu.info. Closes: #528892
+ + debian/postinst, debian/prerm:
+ - Remove call to install-info.
+ + debian/rules:
+ - call dh_installinfo to handle info document.
+
+ * debian/postinst, debian/prerm:
+ - Remove useless commented parts.
+
+ * su-to-root:
+ - su-to-root failed to interpolate command when run by root.
+ Patch from Stefan Monnier. Closes: #522301
+
+ * menu.h:
+ - default setting of sort was disabling $sort.
+ Patch from Vaclav Ovsik. Closes: #504508
+
+ * doc/menu.sgml:
+ - Do not use /etc/X11 as example path. Closes: #498590
+ - Clean up 'postrm purge' example.
+ - Mention existence of dh_installmenu. Closes: #503140
+ - Remove note about wm-menu-config.
+
+ * configure.ac, */Makefile.am
+ - Fix uninstall target so that 'make distcheck' work again.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 18 Sep 2009 20:37:19 +0200
+
+menu (2.1.41) unstable; urgency=low
+
+ * The "true bubulle never burst" release
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Brazilian Portuguese updated by Eder Marques. Closes: #494159
+ - Georgian added by Aiet Kolkhi. Closes: #498422
+ - Greek updated by Emmanuel Galatoulas. Closes: #498463
+ - Catalan updated by Jordi mallach. Closes: #499298
+ * l10n: menu sections translation into Croatian updated by Josip Rodin,
+ Closes: #498055.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 24 Oct 2008 00:52:01 +0200
+
+menu (2.1.40) unstable; urgency=low
+
+ * The "Saint-Malo" release.
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Turkish updated by Mert Dirik. Closes: #484795
+ - Macedonian updated by Georgi Stanojevski. Closes: #486005
+ - Esperanto updated by Felipe Castro. Closes: #488591
+ - Swedish added by Martin Bagge. Closes: #488668
+ - Dutch updated by Benno Schulenberg. Closes: #490109
+ - Arabic updated by Ossama Khayat. Closes: #491541
+ - Italian updated by Milo Casagrande. Closes: #492387
+ + Programs translations:
+ - Esperanto updated by Felipe Castro. Closes: #488592
+
+ * debian/control:
+ + Bump Standards-Version to 3.8.0.
+
+ * update-menus/update-menus.cc:
+ + Accept states triggers-awaited and triggers-pending as installed.
+ Thanks Joey Hess for his explanation. Closes: #489040
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 24 Jul 2008 16:06:55 +0200
+
+menu (2.1.39) unstable; urgency=low
+
+ * The "thanks for all the patches" release.
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Indonesian updated by Arief Fitrianto. Closes: #469955
+ - Japanese updated by Hideki Yamane. Closes: #475543, #477982
+ - Malayalam updated by Praveen A. Closes: #479294
+ - Finnish updated by Tommi Vainikainen. Closes: #479351
+ - Malayalam updated by SZERVÃC Attila. Closes: #479354
+ - Kurdish updated by Erdal Ronahi. Closes: #479444
+ - Lithuanian updated by Kestutis Biliunas. Closes: #479451
+ - Turkish updated by Mert Dirik. Closes: #480013
+ - Albanian updated by Elian Myftiu. Closes: #480281
+ - Irish added by Kevin Scannell. Closes: #480880
+ - Polish updated by Marcin Owsiany. Closes: #481635
+ + su-to-root translations:
+ - Lithuanian updated by Kestutis Biliunas. Closes: #479453
+
+ * Patches from Robert Luberda:
+ - Fix diversion of output to /tmp/update-menus.XXX
+ - Exit cleanly if the dpkg database is broken. Closes: #341701
+
+ * debian/control, doc/su-to-root.1, doc/su-to-root.fr.1, scripts/su-to-root:
+ - Add support for ktsuss. Closes: #478841. Thanks Yves-Alexis Perez.
+
+ * Patch from Joey Hess:
+ - add trigger support stage 1. Closes: #473467.
+ *Note* To allow partial upgrades, lenny packages should not assume
+ menu support triggers.
+ + this fix a rare race condition when upgrading. Closes: #473464.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 12 May 2008 20:41:42 +0200
+
+menu (2.1.38) unstable; urgency=low
+
+ * The "little zebra" release.
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Russian updated by Yuri Kozlov. Closes: #462283
+ - Traditional Chinese updated by Tetralet. Closes: #464855
+ - Romanian updated by stan ioan-eugen. Closes: #466618
+ - Basque updated by Piarre Beobide. Closes: #468682
+ + programs translations:
+ - French completed by Christian Perrier. Closes: #468466
+ - Romanian updated by stan ioan-eugen. Closes: #466618
+ + su-to-root translations:
+ - Romanian updated by stan ioan-eugen. Closes: #466618
+
+ * Work-around apt bug #463030 by calling setsid in daemon mode.
+ Closes: #462648. Thanks Dmitry E. Oboukhov for the patch.
+
+ * Patch from Robert Luberda:
+ - Dependency check now handles virtual packages. Closes: #452801
+
+ * doc/menu.sgml:
+ - Remove excerpt from menu policy about authoritativeness
+ pasted by mistake. Closes: #466248. Thanks Robert Luberda.
+
+ * debian/bug.presubj:
+ - Remove color escape codes which are not displayed correctly by
+ current reportbug. Thanks Dan Jacobson.
+
+ * su-to-root:
+ - Fix support for sux.
+ - Fix command quoting for sudo. Closes: #465136. Thanks Daniel Hahler.
+ - Fix typo passwd->password. Closes: #462645. Thanks Salvatore Bonaccorso.
+
+ * examples/translate_menus:
+ - automatic conversion from old section names to new names would replace
+ Locking by Lockinging. Closes: #468385. Thanks Yves-Alexis Perez.
+
+ * doc/Makefile.am:
+ - No more install the 'default' directory. Closes: #467238.
+ - Work around debiandoc-sgml bug #468772 by forcing locale to C.
+ Closes: #467239. Thanks Dan Jacobson.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 05 Mar 2008 16:59:55 +0100
+
+menu (2.1.37) unstable; urgency=low
+
+ * the "what happened to release early, release often ?" release.
+ * Handling of l10n by Christian Perrier:
+ + programs translations:
+ - Dutch updated by Tim Dijkstra. Closes: #446009
+ - Traditional Chinese updated by Kanru Chen. Closes: #446125
+ - Russian updated by Yuri Kozlov. Closes: #446136
+ - Spanish updated by Javier Fernández-Sanguino Peña. Closes: #446309
+ - Finnish updated by Tommi Vainikainen. Closes: #445927
+ - Spanish updated by Jacobo Tarrio. Closes: #446481
+ - Czech updated by Miroslav Kure. Closes: #446677
+ - Dutch updated by Tim Dijkstra. Closes: #446009
+ - Vietnamese updated by Clytie Siddall. Closes: #446993
+ - German updated by Sven Joachim. Closes: #448943
+ - Norwegian Bokmål updated by Hans F. Nordhaug.
+ Closes: #450959, #451298
+ - Basque by Piarres Beobide. Closes: #445939
+ - Swedish by Daniel Nylander. Closes: #445948
+ - Polish by Wojciech Zareba. Closes: #445977, #445962
+ - Thai by Theppitak Karoonboonyanan. Closes: #445931
+ - Portuguese by Antonio Amorim. Closes: #445994
+ + Menu sections translations:
+ - Belarusian updated by Pavel Piatruk. Closes: #446557
+ - Czech updated by Miroslav Kure. Closes: #446677
+ - Galician updated by Jacobo Tarrio. Closes: #446616
+ - German updated by Sven Joachim. Closes: #447044
+ - Korean updated by Sunjae Park. Closes: #448051
+ - Hebrew updated by Lior Kaplan. Closes: #442234
+ - Dzongkha updated by Tenzin Dendup. Closes: #455862
+ - Spanish updated by Javier Fernández-Sanguino Peña. Closes: #457707
+ - Simplified Chinese updated by Xu Wang. Closes: #459983
+ - Slovak updated by Peter Mann. Closes: #460520
+ - Polish by Emil Nowak. Closes: #443797
+ + su-to-root translations:
+ - Czech added by Miroslav Kure. Closes: #446677
+
+ * doc/menufile.fr.5:
+ - corrected typo, thanks to Cyril Brulebois for spotting it.
+ Closes: #449067
+
+ * debian/control:
+ + Remove versionned Depends on >= pre-sarge dpkg.
+ + Bump Standards-Version to 3.7.3
+
+ * update-menus/update-menus.cc:
+ - Fix g++-4.2 warning about string conversion. Closes: #445490.
+ Thanks Sven Joachim.
+
+ * install-menu/install-menu.cc, install-menu/menu-tree.cc,
+ update-menus/update-menus.cc:
+ - Add missing #include <cstring>, required with g++ 4.3. Closes: #455435.
+ Thanks Martin Michlmayr for his explanation.
+
+ * update-menus/parsestream.cc:
+ - Fix segfault for unknown compatibility level. Closes: #431988.
+ Thanks Rafael Laboissiere.
+
+ * debian/control, doc/su-to-root.1, doc/su-to-root.fr.1, scripts/su-to-root:
+ - Add support for the KDE4 version of kdesu (hereby nicknamed kde4su).
+ Closes: #460483. Thanks Armin Berres.
+
+ * doc/menufile.5:
+ - Apply patch from Kobayashi Noritada to fix typos. Closes: #449388.
+
+ * debian/changelog:
+ - Remove useless 'Local variables' section at the end of the file.
+ Closes: #445483. Thanks Sven Joachim.
+
+ * debian/menu.doc-base:
+ - Change section to Debian. Closes: #450924.
+ Thanks to Colin Watson and Drew Parsons.
+ - Rewrite abstract and update Author field.
+
+ * update-menus/update-menus.cc, po/fr.po:
+ - error "Execution of %1 generated no output or returned an error.":
+ + Fix French translation.
+ + Does not display it when there is no output and the exit status is 0.
+ Closes: #445728. Thanks Andreas Tille.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 21 Jan 2008 21:54:26 +0100
+
+menu (2.1.36) unstable; urgency=low
+
+ * The "slow but steady" release
+ * Handling of l10n by Christian Perrier:
+ + Menu sections translations:
+ - Remove duplicate entries in the POT file
+ - Re-generate PO files from the new POT file
+ - Tamil completed by Tirumurti Vasudevan. Closes: #432177
+ - Vietnamese completed by Clytie Siddall. Closes: #432282
+ - Basque completed by Piarres Beobide. Closes: #432295
+ - Thai completed by Theppitak Karoonboonyanan. Closes: #433431
+ - Bulgarian completed by Damyan Ivanov. Closes: #433626
+ - French completed by Jean-Philippe Guérard. Closes: #435919
+ - Portuguese completed by Miguel Figueiredo. Closes: #433679
+ - Nepali completed by Shiva Prasad Pokharel. Closes: #435342
+ - Gujarati completed by Kartik Mistry. Closes: #435436
+
+ + su-to-root translations:
+ - Basque added by Piarres Beobide. Closes: #432301
+ - Norwegian Bokmål added by Hans Fredrik Nordhaug. Closes: #433046
+ - Thai completed by Theppitak Karoonboonyanan. Closes: #433435
+ - Bulgarian completed by Damyan Ivanov. Closes: #433621
+
+ + programs translations:
+ - Basque added by Piarres Beobide. Closes: #432303
+
+ * doc/menu.sgml, doc/menufile.5, doc/menufile.fr.5:
+ - update examples to new menu structure. Closes: #434217, #438444.
+ * update-menus, doc/update-menus.1, doc/update-menus.fr.1, po/menu.pot:
+ - new option --nodpkgcheck to allow to proceed external databases.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 03 Oct 2007 12:03:14 +0200
+
+menu (2.1.35) unstable; urgency=low
+
+ * The "far cry" release.
+ * su-to-root translations
+ - Gujarati added by Kartik Mistry. Closes: #428481
+ - Hungarian added by SZERVÃC Attila. Closes: #428495
+ - Galician added by Jacobo Tarrio. Closes: #428501
+ - Swedish added by Daniel Nylander. Closes: #428542
+ - Tamil added by Tirumurti Vasudevan. Closes: #428562
+ - Bulgarian added by Damyan Ivanov. Closes: #428648
+ - Arabic added by Ossama Khayat. Closes: #428652
+ - Portuguese added by Ricardo Silva. Closes: #428657
+ - Vietnamese added by Clytie Siddall. Closes: #428789
+ - German added by Helge Kreutzmann. Closes: #428912
+ - Spanish added by Javier Fernández-Sanguino Peña. Closes: #429000
+ - Malayalam added by Praveen. Closes: #429369
+ - Korean added by Sunjae Park. Closes: #430753
+ - French added by Steve Petruzzello.
+ - Russian added by Yuri Kozlov. Closes: #431245
+ * su-to-root: fix missing quotes in printf arguments.
+ * debian/rules: use 'install -p' to preserve timestamp.
+ * move to new menu structure:
+ - examples/translate_menus: convert old section names to new names.
+ - doc/menu.sgml doc/menufile.5 doc/menufile.fr.5: updated.
+ - po-sections/menu-messages.pot: updated.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 4 Jul 2007 15:23:06 +0200
+
+menu (2.1.34) unstable; urgency=low
+
+ * The "black arrow" release.
+ * Apply patch from Martin Michlmayr to fix compilation with GCC 4.3.
+ Closes: #417431.
+ * su-to-root:
+ - tighten the script. Closes: #416302.
+ - add support for SU_TO_ROOT_SU=sudo. Closes: #410875
+ - l10n support. Closes: #383321. Thanks Michelle Konzack.
+ - support for a /etc/su-to-rootrc config file.
+ * Menu translations
+ - Marathi added by Priti Patil. Closes: #416797
+ - Punjabi added by Amanpreet Singh Alam. Closes: #427300
+ * Programs translations
+ - Spanish updated by Javier Fernández-Sanguino Peña. Closes: #423277
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 6 Jun 2007 20:09:59 +0200
+
+menu (2.1.33) unstable; urgency=low
+
+ * The "and justice for all" release.
+ * Apply patch from Tim Dijkstra to simplify wait_dpkg() to not require
+ signal to be sent between the parent and the child to work around a
+ race condition in glibc, probably bug #223110. Closes: #374834.
+ * Menu translations
+ - Portuguese updated by Miguel Figueiredo. Closes: #399241
+ - Malayalam added by Praveen. Closes: #402016
+ - Tamil added by Tirumurti Vasudevan.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 22 Dec 2006 15:20:52 +0100
+
+menu (2.1.32) unstable; urgency=medium
+
+ * The "maintainer on strike" release
+ * Medium urgency for i18n only upload.
+ * This release was prepared by Christian Perrier.
+ * Menu translations
+ - Bengali added by Jamil Ahmed
+ - Gujarati added by Kartik Mistry
+ - Albanian added by Elian Myftiu. Closes: #394702
+ - Macedonian added by Georgi Stanojevski. Closes: #396033
+ - Bosnian added by Safir Secerovic.
+ Closes: #396403, #396432, #396651, #397326
+ - Hindi added by Guntupalli Karunakar (still 4u)
+ * Programs translations
+ - Vietnamese updated by Clytie Siddal. Closes: #393622
+
+ -- Bill Allombert <ballombe@debian.org> Sat, 11 Nov 2006 18:36:22 +0100
+
+menu (2.1.31) unstable; urgency=medium
+
+ * The "it is not dead, it's sleeping" release.
+ * Medium urgency for i18n and documentation fix only upload.
+ * menufile.5, menufile.fr.5:
+ - section WindowManagers was mispelled.
+ * Program translations: (Thanks Christian Perrier for processing them).
+ - French update by Jean-Luc Coulon. Closes: #344434
+ - Russian update by Yuri Kozlov. Closes: #386789
+ - Swedish update by Daniel Nylander. Closes: #386701
+ - Thai update by Theppitak Karoonboonyanan. Closes: #386921
+ - Czech update by Miroslav Kure. Closes: #387343
+ - Vietnamese update by Clytie Siddall. Closes: #387577
+ * Menu translations
+ - Slovak update by Peter Mann.
+ - Wolof translation by Mouhamadou Mamoune Mbacke.
+ - Kurdish translation by Erdal Ronahi. Closes: #387763, 387764
+ - Korean translation by Sunjae Park. Closes: #391335
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 11 Oct 2006 01:17:24 +0200
+
+menu (2.1.30) unstable; urgency=low
+
+ * The "check for free" release.
+ * New po/menu.pot file to translate.
+ * Add Dzongkha menu sections translation. Thanks, Jurmey Rabgay.
+ * Add Arabic menu sections translation. Thanks, Ossama M. Khayat.
+ Closes: #377427
+ * Add Thai menu messages and sections translations.
+ Thanks, Theppitak Karoonboonyanan. Closes: #377511
+ * Add Tagalog menu sections translation. Thanks, Eric Pareja.
+ Closes: #382337
+ * configure.ac, po/Makefile.am, po-sections/Makefile.am:
+ + automatically compute the list of available po files when running
+ configure instead of hard-coding them. This should make life easier
+ for Christian and Mohammed.
+ * su_to-root: if both gksu and kdesu are available, select kdesu
+ in preference of gksu if running under KDE. Thanks Fathi Boudra.
+ * su_to-root.1, su_to-root.fr.1: document which program is called when
+ SU_TO_ROOT_X is not set. Closes: #352464. Noticed by Filipus Klutiero.
+ * Improve menu.sgml and manpages following suggestions from Daniel Barclay.
+ Closes: #354403, thanks a lot for the thorough review.
+ * update-menus:
+ + In verbose mode, report menu entries that depend on a missing package.
+ Closes: #386446. Requested by Frank Küster.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 8 Sep 2006 19:08:30 +0200
+
+menu (2.1.29) unstable; urgency=low
+
+ * The "spotted giraffe" release.
+ * Replace depcomp symlink by the depcomp script. Closes: #375103.
+ * Add Khmer menu sections translation. Thanks, Khoem Sokhem. Closes: #375062.
+
+ -- Bill Allombert <ballombe@debian.org> Tue, 27 Jun 2006 20:52:38 +0200
+
+menu (2.1.28) unstable; urgency=low
+
+ * The "Happy birthday" release
+ * Morten Brix Pedersen:
+ - Actually write pid to update-menus.pid.
+ Thanks to Pierre Thierry who discovered this bug.
+ * Fix the menu.pot file. Closes: #343327. Thanks Thomas Huriaux.
+ * debian/rules:
+ + Undo incorrect change in 2.1.26 that caused update-menus to be shipped
+ executable. Closes: #368814. Thanks Peter Chubb
+ * Fix typos in su-to-root's French manpage. Thanks Filipus Klutiero.
+ Closes: #352465.
+ * Improve menu.sgml following suggestions from Daniel Barclay, first stage,
+ see bug #354403.
+ * Update Greek menu sections translation. Thanks Konstantinos Margaritis.
+ Closes: #344587.
+ * Update Galician menu sections translation. Thanks Jacobo Tarrio.
+ Closes: #359074.
+ * Add Nepali menu sections translation. Thanks, Shiva Pokharel
+ Closes: #374272
+ * Add Belarusian menu sections translation. Thanks, Pavel Piatruk
+ Closes: #373240
+ * Update Hungarian menu sections translation. Thanks, Attila Szervác
+ Closes: #374622
+ * Bump Standards-Version to 3.7.2.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 22 Jun 2006 20:40:52 +0200
+
+menu (2.1.27) unstable; urgency=low
+
+ * The "Mock Turtle" release
+ * Allow to remove generated menus. Closes: #81495, thanks Yann Dirson.
+ - New config option removemenu that should remove the menu.
+ - New install-menu option --remove to call removemenu.
+ - New update-menus option --remove to call install-menu with --remove.
+ * Clean up manpages (first stage).
+ * Changes proposed by Nicolas François:
+ - Add French su-to-root.1 and menufile.5 translations.
+ - Remove verbatim environment from su-to-root.1 and install-menu.1
+
+ -- Bill Allombert <ballombe@debian.org> Sun, 11 Dec 2005 14:35:19 +0100
+
+menu (2.1.26) unstable; urgency=low
+
+ * The "And no, I'm not accepting job offers (2)" release.
+ * Menu-methods should now use #!/usr/bin/install-menu
+ * Fix update-menus counting of menuentries in verbose mode.
+ Closes: #315304. Thanks Shlomi Fish.
+ * Add Bulgarian menu sections translation. Thanks Yavor Doganov.
+ Closes: #315841.
+ * Add Slovak menu sections translation. Thanks Peter Mann.
+ Closes: #330182
+ * Bump Standards-Version to 3.6.2.
+ * debian/postinst, debian/prerm, debian/rules: Undivert update-menus.
+ * scripts/wm-menu-config, doc/wm-menu-config.8: removed.
+ * install-menu and su-to-root are now in /usr/bin and symlinks in
+ /usr/sbin.
+ * debian/copyright: update FSF address and bump copyright date.
+ * debian/menu.sgml: Fix typos, thanks Francesco Poli and
+ Miguel Gea Milvaques. Closes: #328947.
+ * debian/rules, debian/control, debian/conffiles:
+ + Switch to debhelper v4.
+ + Hack to prevent /etc/menu/README and /etc/menu-methods/README
+ to be marked as conffiles.
+ * update-menus was segfaulting on non-readable directories.
+ Closes: #331247. Thanks Felipe Almeida Lessa.
+ * The functions firstentry(), entryindex() and lastentry() did not work
+ when sorting was used. Closes: #231826. Thanks Jorgen Schäfer.
+ * Morten Brix Pedersen:
+ - Add missing virtual destructor to class 'func'.
+
+ -- Bill Allombert <ballombe@debian.org> Tue, 4 Oct 2005 18:31:56 +0200
+
+menu (2.1.25) unstable; urgency=low
+
+ * The "Welcome to Etch" release
+ * Documentation changes-only upload to transition from /usr/lib/menu
+ to /usr/share/menu. Sarge menu support both locations already,
+ /usr/lib/menu having higher priority than /usr/share/menu.
+ Closes: #92428. Thanks Jochen Voss.
+ * debian/rules: Move README from /usr/lib/menu to /usr/share/menu.
+ * debian/control: Rewrite package description.
+ * Clean up manpages.
+ * Update Portuguese menu sections translation.
+ Thanks Miguel Figueiredo. Closes: #311308.
+ * Remove gpm default menu entry. Closes: #187728.
+ * Changes by Christian Perrier:
+ - Correct extra space before exclamation mark before a program message
+ - Update german menu messages and sections translations.
+ Thanks Jens Seidel. Closes: #312852
+
+ -- Bill Allombert <ballombe@debian.org> Sun, 12 Jun 2005 18:57:18 +0200
+
+menu (2.1.24) unstable; urgency=medium
+
+ * The "head or tail" release
+ * Fix .menus typo in menufile.5. Closes: #306564. Thanks Sean Finney.
+ * Add Vietnamese menu messages and menu sections translations.
+ Thanks Clytie Siddall. Closes: #307450, #308953.
+ * Update Esperanto menu sections translation. Thanks MJ Ray.
+ * Add Esperanto menu messages translation. Thanks MJ Ray.
+ * Unfuzzy Norwegian Bokmål menu messages translation.
+
+ -- Bill Allombert <ballombe@debian.org> Tue, 24 May 2005 10:34:47 +0200
+
+menu (2.1.23) unstable; urgency=low
+
+ * The "getting over Vancouver" release
+ * Add Norwegian Bokmål menu messages and sections translation. Thanks
+ Hans Fredrik Nordhaug. Closes: #298079.
+ * Fix quoting in su-to-root manpage. Thanks Kevin Ryde. Closes: #300643.
+ * default/csh: moved to csh package. Thanks Matej Vela.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 23 Mar 2005 18:49:10 +0100
+
+menu (2.1.22) unstable; urgency=low
+
+ * The "Debian translators still rule" release
+ * Add Basque menu sections translation. Thanks Piarres Beobide.
+ Closes: #295598.
+ * Update Russian menu sections translation. Thanks Nikolai Prokoschenko.
+ Closes: #295607.
+ * Add Galician menu messages and sections translation. Thanks Jacobo Tarrio.
+ Closes: #295620, #295768.
+ * Add Traditional Chinese menu messages and sections translation.
+ Thanks Kanru Chen and Asho Yeh. Closes: #295794, #295683.
+ * Update Turkish menu messages translation. Thanks Recai Oktas.
+ Closes: #295732.
+ * Add Bahasa Indonesian menu sections translation. Thanks Arief S Fitrian.
+ Closes: #295796.
+ * Add Greek menu messages translation. Thanks Konstantinos Margaritis.
+ Closes: #295987
+ * Add Romanian menu sections translation. Thanks Sorin Batariuc.
+ Closes: #296090.
+ * Clean up the BUGS file.
+ * debian/bug.presubj: display "Reporting menu bugs" in red to stand out.
+ * su-to-root: add support for sux and for a .su-to-rootrc config file.
+ Closes: #272752. Thanks Fabian Franz.
+ * Morten Brix Pedersen:
+ - Fixed two typos in the Danish menu program translation.
+ - Corrected the counting of menu entries in verbose output.
+ Closes: #280081. Thanks Andrew Burton.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 24 Feb 2005 16:53:25 +0100
+
+menu (2.1.21) unstable; urgency=low
+
+ * The "time for ugly work-around" release
+ * Add Czech menu messages translation. Thanks Miroslav Kure.
+ Closes: #287308.
+ * debian/control: uncapitalize synopsis.
+ * debian/postinst, debian/prerm, debian/rules:
+ Divert update-menus by a script that checks if update-menus is executable.
+ This is a work-around for broken postrm scripts in woody. Closes: #289702.
+ Thanks Adam C Powell IV for noticing them.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 20 Jan 2005 17:21:31 +0100
+
+menu (2.1.20) unstable; urgency=low
+
+ * The "deer Rudolf" release
+ * Call getpwuid() once and cache the value. This avoid stressing
+ needlessly NIS. Thanks to Steven R. Evatt.
+ * Extend the documentation of onlyrunasuser.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 15 Dec 2004 00:51:03 +0100
+
+menu (2.1.19) unstable; urgency=low
+
+ * The "Debian translators rule!" release
+ * Update Finnish menu section translations, fixing a serious translation
+ error noticed by Mika Wahlroos. Closes: #276122.
+ * Update Brazillian menu section translation. Thanks André Luís Lopes.
+ * Update Russian menu messages translation. Thanks Yuri Kozlov.
+ Closes: #268638.
+ * Fix Norwegian Nynorsk menu message translation. Thanks HÃ¥vard Korsvoll.
+ * Update Spanish menu messages translation. Thanks Javier Fernandez-Sanguino
+ Peña.
+ * Update Chinese menu messages translation. Thanks Carlos Z.F. Liu.
+ * Add German menu messages translation. Thanks Tobias Toedter.
+ * Add Portuguese menu message and menu section translation. Thanks
+ António Amorim.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 1 Nov 2004 17:15:40 +0100
+
+menu (2.1.18) unstable; urgency=low
+
+ * The "Sarge is still warm" release
+ * Update Japanese menu message translation. Thanks Goto Masanori.
+ * Update Finnish menu message translation. Thanks Tommi Vainikainen.
+ * Update Brazillian menu message translation. Thanks André Luís Lopes.
+ * Update Dutch menu message translation. Thanks Tim Dijkstra.
+ Closes: #274355.
+ * Update Norwegian Nynorsk menu message translation. Thanks HÃ¥vard Korsvoll.
+ * Add file README.translations to document the way menu sections are
+ translated.
+ * Document it is possible to add entries for menu sections.
+ * Morten Brix Pedersen:
+ - Allow character classes in regular expressions. This fix the parsing
+ of translate_menus. Closes: #271659. Thanks, Paul Seelig.
+ - Only use letters and digits as possible shortcut keys. Closes: #259349
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 4 Oct 2004 10:59:02 +0200
+
+menu (2.1.17) unstable; urgency=medium
+
+ * The "yellow pig" release
+ * urgency medium: i18n-only release.
+ * Add Lithuanian menu section translation, by Kęstutis Biliūnas.
+ Closes: #266134
+ * Add Croatian menu section translation by Krunoslav Gernhard.
+ Closes: #268054
+ * Add Hebrew menu section translation by Lior Kaplan.
+ Closes: #269120
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 3 Sep 2004 13:45:06 +0200
+
+menu (2.1.16) unstable; urgency=low
+
+ * The "Sarge is waiting for us!" release
+ * Jens Arvidsson:
+ - Update Swedish translation.
+ * Morten Brix Pedersen:
+ - Treat userprefix prefixed by // as an absolute path instead of just a
+ relative path. Closes: #252637, #252891.
+ - Revert change in 2.1.15: Don't let outputencoding default to LOCALE by
+ default. This was causing too many problems. Closes: #258865.
+ * Update Polish menu message translation, thanks Marcin Owsiany.
+ * Add Italian menu message translation, by Stefano Canepa.
+
+ -- Bill Allombert <ballombe@debian.org> Sat, 7 Aug 2004 11:25:22 +0200
+
+menu (2.1.15) unstable; urgency=low
+
+ * The "spring clean up" release
+ * Jens Arvidsson:
+ - Update Swedish translation.
+ * Update Italian menu-section translation. Thanks Stefano Canepa.
+ * Fix German menu-section translation. Closes: #254416.
+ Thanks Eduard Bloch and Sebastian Rittau.
+ * Update French translation of update-menus manpage. Closes: #256992.
+ Thanks Sylvain Cherrier.
+ * Fix po/Makefile.am so that tr.mo is installed. Sorry for not noticing
+ sooner.
+ * Morten Brix Pedersen:
+ - Update Danish translation.
+ - Fix wrong error message when install-menu couldn't open a menu-method.
+ - outputencoding now defaults to LOCALE when no value is specified.
+ - No longer require startmenu and endmenu to be defined.
+ - Call getuid() once and cache the result.
+ - Document behaviour when multiple fields are specified in the same menu
+ entry. Closes: #250224.
+ - Add example of an executable menufile to examples/. Closes: #252606
+ Thanks Marc Haber.
+ * Sort menu entry according to the current locale. Note that this works
+ only if the menu-method uses the locale encoding. Closes: #200447.
+ * Fix error message for update-menus --menumethod. Closes: #251857.
+ * Parse update-menus options with getopt_long.
+ * Improve update-menus --help message.
+ * Avoid [a-z] regexp since that breaks under Estonian locales.
+ Closes: #254894. Thanks to Jaan Pullerits for the explanation.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 2 Jul 2004 18:35:16 +0200
+
+menu (2.1.14) unstable; urgency=low
+
+ * The "multilingual" release
+ * Update German menu-section translation. Thanks Sebastian Rittau.
+ * Update Hungarian menu-section translation. Thanks Attila Szervá.
+ * Update Italian menu-section translation. Thanks Stefano Canepa.
+ * Morten Brix Pedersen:
+ - Change a wrong error message from "Could not open directory" to "Could
+ not create directory".
+ - Added --version option to update-menus.
+ * Rename 'repeat_lang' menu option to 'outputlanguage' to match
+ 'outputencoding'.
+ * Document --version in update-menus.1 and update-menus.fr.1.
+ * Add /etc/menu-methods/lang.h which define sections_translations() as
+ the list of translations available in this package.
+ * Do not install obsolete README.changes.
+ * Fix term() definition in /etc/menu-methods/menu.h.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 27 May 2004 15:58:52 +0200
+
+menu (2.1.13) unstable; urgency=low
+
+ * The "sell your car" release
+ * Apply patch from Carlos O'Donell for hppa support.
+ Closes: #248773. Thanks Grant Grundler.
+ * Move wm-menu-config manpage to section 8 and insist it is deprecated.
+ * Fix cppesc() to work correctly under non C locales.
+ * Fix su-to-root to not change $HOME. This make sure xlib can find
+ the X session cookie. Thanks to isaac on IRC for testing the patch.
+ Closes: #246886. This adresses the last case of #150314.
+ * Add Ukrainian menu sections translation by Eugeniy Meshcheryakov.
+ Closes: #244067.
+ * Add Russian menu sections and messages translation by Dan Korostelev.
+ Closes: #245353.
+ * Add Greek menu sections translation by Konstantinos Margaritis.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 14 May 2004 17:17:07 +0200
+
+menu (2.1.12) unstable; urgency=low
+
+ * The "quickfix" release.
+ * Jens Arvidsson:
+ - Updated Swedish menu messages translation.
+ * Morten Brix Pedersen:
+ - Fix bug where section="/" failed when translations were enabled.
+ Closes: #243531.
+ - Prevent infinite recursion in replace($s,$replace,$with) when $with
+ match $replace.
+ * Fix typo in Chinese menu sections translation. Closes: #242742. Thanks
+ Carlos Z.F. Liu.
+ * Add Turkish translations of menu messages and menu sections.
+ Closes: #243690. Thanks Cagatay Tengiz and Recai Oktas.
+ * Update Catalan menu sections translation. Thanks Jordi Mallach.
+ * Rename --menufiledir to --menufilesdir as documented. Update translations
+ accordingly. Closes: #241289. Thanks Jean-Luc Coulon.
+ * Reformat and extend the documentation about the menu entry format.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 15 Apr 2004 17:43:07 +0200
+
+menu (2.1.11) unstable; urgency=low
+
+ * The "Go bravely with Joey" release.
+ * Morten Brix Pedersen:
+ - Only enable translated section names when both 'outputencoding' and
+ 'repeat_lang' has been set.
+ - Set repeat_lang="LOCALE" per default. menu-methods now only need to set
+ outputencoding in order to enable translations.
+ - Update Danish menu translation.
+ - Fixed some inconsistent behaviour with "substitute section->section"
+ Closes: #216851. Thanks Jean-Philippe Guérard.
+ - Fix compilation with g++ 2.95.
+ * su-to-root:
+ + New -X for need=X11 entries that support for gksu and kdesu.
+ Closes: #166844. Thanks Jason Hildebrand.
+ + Handle usage by root more sanely.
+ + update manpage.
+ * debian/control:
+ + Suggest gksu|kdebase-bin. Install one of those if su-to-root cannot
+ access the X server. Closes: #150314. Thanks Raoul Borenius.
+ * Update Brazillian menu messages translation. Thanks André Luís Lopes.
+ * Add Norwegian nynorsk menu messages and sections translations.
+ Thanks HÃ¥vard Korsvoll.
+ * Add Swedish menu messages and sections translation. Thanks Jens Arvidsson.
+ * Update Spanish menu sections translation and add Spanish menu messages
+ translation. Thanks Javier Fernandez-Sanguino Peña.
+ * Update Japanese menu sections translation and add Japanese menu messages
+ translation. Thanks Goto Masanori.
+ * Update Dutch menu messages translation. Closes: #239324.
+ Thanks Tim Dijkstra.
+ * Add French menu messages translation. Thanks Jean-Luc Coulon.
+ * Jens Arvidsson:
+ - Add Swedish menu messages and sections translation.
+
+ -- Bill Allombert <ballombe@debian.org> Tue, 6 Apr 2004 00:38:55 +0200
+
+menu (2.1.10-1) unstable; urgency=low
+
+ * The "Friday 12" release.
+ * Morten Brix Pedersen:
+ - replacewith($str, $replace, $with) now outputs an error if $replace and
+ $with isn't the same length.
+ - Don't segfault when there are syntax errors in translate_menus
+ (Closes: #221757)
+ - Unknown identifiers now generates a warning instead of an error.
+ - Implement a replace() function. Closes: #223948
+ - Modify basename() function to do as advertised in the documentation.
+ - When conversion for a translated menu section failed, fallback to the
+ original string.
+ - Implement a shell() function.
+ * Update Dutch menu message translation. Closes: #230525. Thanks Tim
+ Dijkstra.
+ * Add Chinese menu messages and sections translations. Closes: #232403.
+ Thanks Carlos Z.F. Liu and Yongtao Yang.
+ * Remove dconfig-text entry from gpm default menu entry: Closes: #234178.
+ * Document that menu files must be encoded in 7bit only.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 12 Mar 2004 13:39:31 +0100
+
+menu (2.1.9-5) unstable; urgency=low
+
+ * The "calc inflates severity" release.
+ * Add Polish menu message translation and update Polish menu section
+ translation. Thanks Marcin Owsiany.
+ * Update French menu section translation. Closes: #225716. Thanks
+ Jean-Philippe Guérard.
+ * Fix typos in error messages. Closes: #227070. Thanks Tommi Vainikainen.
+ * Add Finnish translations. Closes: #227038. Thanks Tommi Vainikainen.
+ * Add Brazillian menu message translation. Closes: #227627. Thanks Gustavo
+ Noronha Silva.
+ * Add GPL boiler-plate to all C++ source files.
+ * Add Dutch menu message translation. Closes: #228221. Thanks Tim Dijkstra.
+ * Remove documentation of non-existent function process_menudirs.
+ Closes: #228448. Thanks Chris Cheney.
+ * Fix userprefix() and rootprefix() functions. Closes: #228628. Thanks Chris
+ Cheney.
+ * Add Czech menu section translation. Closes: #229203. Thanks Miroslav Kure.
+ * Morten Brix Pedersen:
+ - Update Danish sections translation and convert to UTF-8.
+ - Update Danish menu translation and convert to UTF-8.
+
+ -- Bill Allombert <ballombe@debian.org> Sat, 24 Jan 2004 15:43:43 +0100
+
+menu (2.1.9-4) unstable; urgency=low
+
+ * The "Happy New Year" release.
+ * Add Polish menu message translation and update menu section translation.
+ Thanks Marcin Owsiany.
+ * Add Dutch menu section translation. Closes: #224292. Thanks Tim Dijkstra.
+ * Set root umask to 022 not 002. Closes: #224685. Thanks Ethan Benson.
+ * Add GPL boiler-plate to update-menus/update-menus.cc
+ * Improve term() examples in menu.h.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 22 Dec 2003 02:15:35 +0100
+
+menu (2.1.9-3) unstable; urgency=low
+
+ * The "i18n" release.
+ * Improved messages.
+ * Menu will skip menu-method with no userprefix (resp. rootprefix) if run
+ as user (resp. root). Closes: #81493.
+ * Add symlinks for su-to-root and install-menu in /usr/bin. Note that sarge
+ packages must use the /usr/sbin path. Closes: #202857. Thanks Joey Hess.
+ * Add /usr/share/bug/menu/presubj for bugs reporting tips.
+ * Fix update-menus options handling.
+ * doc/menu.sgml:
+ + deprecate onlyrunasroot and onlyrunasuser.
+ + deprecate wm-menu-config.
+ + document proper postinst/postrm scripts.
+ * Add unofficial but frequently used sections to po-sections.
+ * Update french translation of menu sections. Closes: #200738. Thanks
+ Jean-Philippe Guérard. I forgot it in the previous release.
+ * Fix unicodification of this file.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 12 Dec 2003 16:31:38 +0100
+
+menu (2.1.9-2) unstable; urgency=low
+
+ * The "long awaited" release.
+ * Add Catalan translation of menu sections. Thanks Jordi Mallach.
+ * Add Japanese translation of menu sections. Thanks GOTO Masanori.
+ * Morten Brix Pedersen:
+ - Finally make the output of update-menus and install-menu properly
+ i18n'ed. Translators should now start translating menu.pot in po/.
+ Closes: #200072
+ - Added Danish translation of the above.
+ - Add menu sections Games/Simulation and Apps/Education to
+ menu-section.pot.
+ - Executable menu entries weren't executed. Fixed. Closes: #217502
+ * Add menu sections Games/Simulation and Apps/Education to menu.sgml and
+ menufile.5.
+ * Convert this file to UTF-8.
+ * Bump Standards-Version to 3.6.1.
+ * install-menu now accept options before argument. Thanks Denis Barbier.
+ * Remove Conflicts: pdmenu (<=0.5.9) dated 1997.
+ * Don't ship the outdated README.changes file.
+ * Fix typo in menu.h file and add sort=tolower(title()) to make sort order
+ case insensitive. Closes: #209257. Thanks Daniel Burrows.
+ * menu.sgml: insist that menu title must be capitalized.
+ * postinst/postrm: Remove pre-menu-1.0 kludges.
+ * debian/rules: ship update-menus non executable.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 3 Nov 2003 15:51:57 +0100
+
+menu (2.1.9-1) unstable; urgency=low
+
+ * The "And no, I'm not accepting job offers" release.
+ * Change contact address to `menu@packages.debian.org'.
+ * doc/menufile.5: Update list of menu sections.
+ * default/bash: removed. Thanks Matthias Klose.
+ * debian/rules: do not create empty dir /usr/share/pixmaps.
+ Closes: #196713. Thanks Ryan Murray.
+ * doc/menu.sgml:
+ + Fix capitalisation of `Debian'.
+ + Improve section `How a user can override the menus'.
+ + Move 'Variables and functions' to a new chapter and format it properly.
+ * update-menus.cc: use F_GETLK instead of F_SETLK to query dpkg lock.
+ * Morten Brix Pedersen:
+ - Just skip the file when its missing a tag, instead of stopping
+ completely. Closes: #56839
+ - menu-methods can now define the charset/encoding which the outputted
+ section names should be in by using the outputencoding variable.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 26 Jun 2003 22:25:08 +0200
+
+menu (2.1.8-2) unstable; urgency=low
+
+ * The "Thanks Joost, for the great Debian menu system" release.
+ * Set myself as maintainer since Joost has officially retired.
+ * Add menu-one-file to doc, for building alioth doc.
+ * Add Italian translation of menu sections. Thanks Stefano Canepa.
+ * Add German translation of menu sections. Thanks Sebastian Rittau.
+ * Complete Brazilian translation of menu sections. Thanks André Luís Lopes.
+ * Add French translation of update-menus man pages.
+ Thanks Sylvain Cherrier. Closes: #193004
+ * Remove hello, octave and xftp default menu entries.
+ * Bump Standards-Version to 3.5.10.0.
+ * No more require icons to use the colors from cmap.xpm.
+ Closes:#193231, #175430, #192218, #97080
+ * No more install cmap.xpm. Closes:#172092
+ * Document menu methods are required to use title(), icon() and term()
+ instead of $title, $icon and hard-coded call to x-terminal-emulator,
+ so that user can configure the behaviour in menu.h.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 23 May 2003 00:08:40 +0200
+
+menu (2.1.8-1) unstable; urgency=low
+
+ * Put in CVS at alioth.debian.org
+ * Hard code version in configure.in so that menu can be build without
+ the debian directory.
+ * Complete french translation of menu sections. Thanks Jean-Philippe
+ Guérard.
+ * Complete spanish translation of menu sections. Thanks Javier
+ Fernández-Sanguino Peña.
+ * Complete polish translation of menu sections. Thanks Marcin Owsiany.
+ * Add brazilian translation of menu sections. Thanks André Luís Lopes.
+ * Remove obsolete Apps/Games --> Games in translate_menus.
+ * Morten Brix Pedersen <morten@wtf.dk>:
+ - Add Danish translation of menu sections.
+ - Fix a segmentation fault which happened when translate_menus only
+ contained one line.
+ - Special characters no longer needs to be double-escaped. Closes: #94466
+ - Document the fact that titles in entries must be unique. Closes: #46629
+ - Fix segmentation fault when using forcetree and hint_optimize.
+ Closes: #149468, #189396
+ - Add basesection variable. Closes: #136947
+ - Support multiple package requirement. Closes: #114620
+ * Ship prebuild documentation in source tarball to work around sp failure
+ on m68k.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 7 Apr 2003 20:31:51 +0200
+
+menu (2.1.7-3) unstable; urgency=low
+
+ * Fix es.trme translation. Closes: #144043.
+ * Apply patch from Morten Brix Pedersen to document how to put
+ entries in the root menu. Closes: #41132
+ * Document that !include menu.h is required in menu-method.
+ * Remove 'Ja, hoor' debugging message when using hints.
+ * debiandoc-sgml 1.1.75 has reached testing so remove the versionned
+ Build-Depends.
+ * Depends on dpkg (>= 1.10). Thanks Jens Müller. Closes: #186160
+ * Patch from Morten Brix Pedersen :
+ - Added documentation for several methods in menutree and hints classes.
+ - Rename variables to more saner names, instead of single-letter variable
+ names, thus making the code more readable.
+ - Many code cleanups (more consistent placement of braces and parens,
+ better use of iterator-pointer syntax).
+ - Added "const" to several methods..
+ - Fixes warnings with g++ 3.3.
+ - Some size() and length() checks replaced by empty() checks.
+ - Some variables declaration moved closer to their use.
+ - Removal of some unused variables and members in classes. This makes the
+ binary slightly smaller.
+ - messages/menufile2pot: Changed #!/bin/perl to #!/usr/bin/perl
+ * Rename menu-messages to menu-sections and messages to po-sections.
+ * Rename po-section/Makefile to Makefile.am so that Dagfinn can bash me.
+ * Fix po directory.
+ * Fix the autostuff to the point where make distcheck works.
+ * Fix manpages sections.
+ * Add polish translation of menu sections. Thanks Marcin Owsiany.
+ * Add hungarish translation of menu sections. Thanks <gcoder@coder.hu>.
+ * Remove obsolete default menu entries.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 3 Apr 2003 17:19:28 +0200
+
+menu (2.1.7-2) unstable; urgency=low
+
+ * Fix double slash bug in verbose output. Thanks Olivier Guilyardi.
+ * Apply patch from Morten Brix Pedersen that fix segfault when
+ hint_optimize=true. Closes: #152324, #182592.
+ * Remove doc/bugreport (superseded by BUGS).
+ * Update BUGS and menu.sgml to use --stdout insteat of cat.
+ * Update Joey email address in menu.sgml.
+ * Apply patch from Dagfinn Ilmari Mannsaker <ilmari@ping.uio.no>
+ that make doc/Makefile.am more automake compliant. Closes: #182771
+ * Build-Depends on debiandoc-sgml (>= 1.1.74) to work around a bug in
+ previous versions. Thanks Dagfinn Ilmari Mannsaker. Closes: #182778
+ * Apply patch from Morten Brix Pedersen to get the list of installed
+ packages instead of the list of selected packages.
+ Closes: #62086, #166298, #182684
+ * Add french translation of menu section (by myself).
+ * Fix missing charset/encoding in other po files.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 6 Mar 2003 18:02:41 +0100
+
+menu (2.1.7-1) unstable; urgency=low
+
+ * The "Won't that be grand fun ?" release.
+ * Try to not link statically on mips and arm.
+ * Try setlocale patch from Goto Masanori. Closes: #125700
+ * Some fix in menufile(5). Documents hints. Closes: #79046
+ * Make update-menus -h and manpage up-to-date with the code.
+ * Remove obsolete add-log-mailing-address from changelog.
+ * Bump Standards-Version to 3.5.8
+ * Credit Morten in AUTHORS file.
+ * Patch from Morten Brix Pedersen :
+ - Compiles with gcc 2.95 again.
+ - install-menu now creates all new files with umask 002, ignoring root
+ umask Closes: #136864, #126525
+ - When verbose is enabled, the number of menu entries read in each directory
+ is outputted to console.
+ - Renamed some variables and functions to more saner names.
+ - Moved all #defines to common.h.
+ - Reorder declarations in header files to move important stuff to the top.
+ - std::string is now used directly instead of using the derived wrapper
+ class String, which shouldn't have been there in the first place.
+ - Many unnecessary calls to new and delete removed, prefer construction on
+ the stack instead.
+ - Make some member functions const.
+ - Compatibility with automake 1.7.
+ - New --stdout option for update-menus.
+
+ -- Bill Allombert <ballombe@debian.org> Tue, 25 Feb 2003 14:58:45 +0100
+
+menu (2.1.6-2) unstable; urgency=low
+
+ * The "What ? Nothing ? Not even the slightliest remorse ?" release.
+ * Fix some low caps in long description.
+ * Add -g to build options according to new policy.
+ * Add support for DEB_BUILD_OPTIONS noopt. nostrip is handled by dh_strip.
+ * Remove confusing CXXFLAGS setting in */Makefile.am
+ * Remove default/amd. Thanks Philippe Troin.
+ * Remove obsolete default menu entries.
+ * Better error message for autogen.sh. Closes: #178927
+ * 'make install' now install install-menu in /usr/sbin. Closes: #178924
+ * Remove obsolete menu-method directory
+ * Remove broken l10n support( intl and po directories.)
+ This should be redone properly.
+ * Convert doc/Makefile to automake and fix it.
+ * Now make install/uninstall should work even as non root.
+ * Patch from Morten Brix Pedersen :
+ - fix g++ 3.2 issues. Closes: #177663
+ - Doesn't depend on the HOME variable anymore, but on the value in
+ /etc/passwd instead. Falls back to the HOME variable if this fails.
+ - Removed gcc-2.7.2.1 work arounds.
+ - 0 used instead of NULL (more correct in C++)
+ - map<String, String, less<String> > changed to map<String, String> -
+ since less is the default sort anyway.
+ - changed some C header types to use the C++ equal one. e.g. cstdlib
+ instead of stdlib.h
+ - use empty() instead of checking on size() or length()
+ - at some places, avoid calling new, just allocate object on the stack
+ - remove after() function from String class, just use substr() directly
+ - some old outcommented code removed
+ - use a templated funcN class instead of the func0, func1, func2 etc. classes
+ - removed 'using namespace std' in header files, thus meaning that many types
+ now are prefixed by std::
+ - removed exception class not used
+ - removed duplicated function with different name
+ - install-menu -h was referencing itself as menu-method.
+ - Removed --showtime optim from install-menu, it had no effect when
+ being used.
+ - Renamed -dodebug option to -v / --verbose
+ * Closes: #90617,#57576 which are no more reproducible with this patch.
+
+ -- Bill Allombert <ballombe@debian.org> Fri, 31 Jan 2003 17:24:31 +0100
+
+menu (2.1.6-1) unstable; urgency=low
+
+ * The "If it boots, it's perfect" release.
+ * Add support for menu entries in /usr/share/menu.
+ * Move default entries to /usr/share/menu/default.
+ * Update documentation to reflect /usr/share/menu/default changes.
+ * su-to-root script: Apply patch from Matt Zimmerman for handling uid 0 user
+ sanely. Closes: #172831
+ * Patch from Morten Brix Pedersen to avoid some C++ exceptions.
+ * Move cmap.xpm to doc so that it is not installed twice. Closes:#172282
+ Thanks Matej Vela <vela@debian.org>.
+ * Don't install the doc twice.
+ * Synchronize the preferred menu structure with the menu-policy document.
+ Closes:#172281 Thanks Matej Vela <vela@debian.org>.
+ * Remove the dummy install-fvwmgenmenu program.
+
+ -- Bill Allombert <ballombe@debian.org> Wed, 18 Dec 2002 13:58:35 +0100
+
+menu (2.1.5-14) unstable; urgency=low
+
+ * Apply patch from Morten Brix Pedersen <morten@wtf.dk> for building
+ with gcc-3.2.
+ * Add menufile.5 to debian/manpages. Closes: #162172 Thanks, Tobias Wolter
+ * Apply patch from Javier Fernandez-Sanguino Pena to menufile2pot.
+ Closes: #110737.
+ * Add a comment about translation in update-menus manpage. Closes: #144050.
+ * postinst/prerm use /bin/sh and check for pidof.
+
+ -- Bill Allombert <ballombe@debian.org> Mon, 23 Sep 2002 20:56:58 +0200
+
+menu (2.1.5-13) unstable; urgency=low
+
+ * The "Lucky 13 but for which ?" release.
+ * Apply patch from Morten Brix Pedersen <morten@wtf.dk> for building
+ with gcc-3.0. Closes: #95366, #104732
+ * Fix po files to work with gettext 0.11. Closes: #159987.
+ * Update po/Makefile.in.in to match aclocal.m4.
+ * More s,/usr/doc,/usr/share/doc, Closes: #159589 Thanks Laurent Bonnaud.
+ * Spurious less wm-menu-config.1.
+ * Add doc-base support (debian/menu.doc-base). Closes: #31160
+ * Remove obsolete debian/menu file.
+ * Add debhelper token in maintainer scripts.
+ * Acknowledge Joey Hess patch (Closes: #87497)
+ * Bump Standards-Version to 3.5.7.0
+
+ -- Bill Allombert <ballombe@debian.org> Sun, 8 Sep 2002 12:58:20 +0200
+
+menu (2.1.5-12) unstable; urgency=low
+
+ * Add gettext to Build-Depends. Closes: #159629. Thanks, James Troup.
+ * Change references to /usr/X11R6/include/X11/{bitmaps,pixmaps}
+ to /usr/share/pixmaps. Closes: #102310. Thanks Henrique de Moraes Holschuh
+ * fix may->many typo in doc/README.package-menus.
+ Closes: #151979. Thanks Frederico Grau.
+ * Acknowledge previous NMUs:
+ Thanks Joey Hess (Closes: #84936, #127921)
+ Thanks Julian Gilbey (Closes: #55603)
+ * Closes: #44714, #86260, #103059 which are `fixed' for ages.
+ Thanks go to Colin Watson for spotting them.
+
+ -- Bill Allombert <ballombe@debian.org> Thu, 5 Sep 2002 11:09:07 +0200
+
+menu (2.1.5-11) unstable; urgency=low
+
+ * Add myself to Uploaders field.
+ * Add Build-Depends. Closes: #95341,#95151
+ * Remove dangerous use of automake in debian/rules.
+ Closes: #133159 Thanks, Guido Guenther.
+ * Add AM_MAINTAINER_MODE to configure.in, add file autogen.sh
+ * Remove unused/dangerous files ltconfig,ltmain.sh
+ * Fix various typo (reported by), thanks :
+ s/menu's/menu/ in description. Closes: #79475 (Jonathan D. Amery)
+ s/frontents/frontends/ in description. Closes: #125128 (Matt Zimmerman)
+ s/quite/quiet/ in update-menus.1.
+ Closes: #96886 (Malcolm Parsons,Edward Betts)
+ s/it's/its/ in update-menus.1. Closes: #129881 (Ken Shan)
+ s/generate the/generation of/ in install-menu.1.
+ Closes: #120735 (Tomas Pospisek)
+ s,/usr/doc/menu,/usr/share/doc/menu, in all files.
+ Closes: #98363,#103188,#134924
+ (Stephen Stafford,Martin Quinson,André Dahlqvist)
+ lots of typo in menu.sgml. Closes: #57832 (Christian T. Steigies)
+ * Install and remove info file correctly in postinst/prerm.
+ * Rename menu info entry to "Debian menu".
+ Closes: #42333,#117236 Thanks David Coe, John Candlish.
+ * Add synopsis to su-to-root and its manpage.
+ Closes: #103039 Thanks, Galen Hancock.
+ * Apply patch from Colin Watson to su-to-root. Closes: #103879
+ * Policy compliant compiler options in debian/rules.
+ * Move cmap.xpm to /usr/share/pixmaps. Closes: #125588 Thanks, Lee Maguire.
+ * Switch to dh_installman and install install-fvwmgenmenu.sh.1 in the
+ right directory. Closes: #104383 Thanks, Colin Watson.
+ * Remove call to install-menu in postrm. Thanks, Lintian.
+ * Use pidof instead of killall, since killall is not essential.
+
+ -- Bill Allombert <ballombe@debian.org> Sun, 1 Sep 2002 00:05:29 +0200
+
+menu (2.1.5-10.2) unstable; urgency=high
+
+ * NMU. Link statically on ARM as well.
+
+ -- Phil Blundell <pb@debian.org> Sun, 14 Jul 2002 15:58:16 +0100
+
+menu (2.1.5-10.1) unstable; urgency=low
+
+ * NMU. Statically link menu on mips and mipsel to work around a
+ likely toolchain bug of some sort. sorta kinda Closes: #127921
+
+ -- Joey Hess <joeyh@debian.org> Fri, 15 Feb 2002 23:01:02 -0500
+
+menu (2.1.5-10) unstable; urgency=low
+
+ * Added .ja translations, from GOTO Masanori <gotom@debian.or.jp>
+ * Added .es franslations, from user-es package,
+ Javier Fernandez-Sanguino Pen~a <jfs@computer.org>,
+ closes: #106505
+ * Added patch from Fabian Sturm <f@rtfs.org> for GNU Hurd,
+ Closes: #105674
+
+ -- joost witteveen <joostje@debian.org> Sun, 29 July 2001 15:02:27 +0300
+menu (2.1.5-9) unstable; urgency=low
+
+ * Now only use the locale for LC_MESSAGES, also for install-menu
+ (forgot to add this in 2.1.5-7).
+
+
+ -- joost witteveen <joostje@debian.org> Mon, 2 May 2001 14:02:27 +0300
+menu (2.1.5-8) unstable; urgency=low
+
+ * Now only use the locale for LC_MESSAGES. Closes: #90317, #95658
+
+ -- joost witteveen <joostje@debian.org> Mon, 30 Apr 2001 14:02:27 +0300
+
+menu (2.1.5-7) unstable; urgency=low
+
+ * Applied patch for Hurd locking issue. Closes: #72166
+ * update-menus locking code hoped errno wouldn't be changed
+ after a successful call to close(). Wrong, and showed up
+ on the Hurd. Fixed.
+ * manually applied (hopefully all) fixes to the manual pages in
+ bugreport. Closes: 86260
+
+ -- joost witteveen <joostje@debian.org> Thu, 29 Mar 2001 10:02:27 +0200
+
+menu (2.1.5-6.1) unstable; urgency=low
+
+ * NMU for bug-squashing party. The -prune in doc/Makefile
+ was being used correctly. Package now builds again. Closes: #84936
+
+ -- Joey Hess <joeyh@debian.org> Sat, 24 Feb 2001 15:02:27 -0800
+
+menu (2.1.5-6) unstable; urgency=low
+
+ * Fixed error thouwn in case translation file could not be found
+ (this cased errors if user didn't have that file in home dir).
+ closes: #63586, #64805
+ * removed dpkg-dev entry in default dpkg menu entry file.
+ closes: #58999
+ * the default menu.h file now uses x-terminal-emulator, instead of xterm
+ Closes: #67557
+ * the sort function in the menu-methods file now by default is
+ $sort ":" $title. This makes it work more like it's expected.
+ (before, it would ignore the $sort tag-variable from the menu entry
+ files). Closes: #44674
+ * if run while another update-menus is already running, but dpkg
+ is not running (manually started), then update-menus now exits
+ (as the verbose output promised, but it never did in older versions).
+ Closes: #67760
+
+ -- joost witteveen <joostje@debian.org> Sat, 29 Jul 2000 00:51:12 +0300
+
+menu (2.1.5-5) unstable; urgency=low
+
+ * allowed 'section="/"' in the menu entry files.
+ * added also_run command, suggestion from Mandrake developer
+ Frederic Lepied, <flepied@mandrakesoft.com>.
+ * install-menu now doesn't generate empty menus any more
+ (also reported by Frederic Lepied)
+ * Applied patch from (again) Frederic Lepied to make it (at least
+ some times) continue if there's an error in a menu-entry-file.
+ Whether that's a good thing I don't know, but there have been
+ so many people requesting that now that I'll just give in.
+ * same patch from Frederic also made the install-menu processes
+ have the parent's environment.
+
+ -- joost witteveen <joostje@debian.org> Mon, 3 Apr 2000 00:22:24 +0300
+
+menu (2.1.5-3) frozen unstable; urgency=low
+
+ * recompile, rest identical to version of Julian Gilbey.
+ Just recompiling sems to fixing the `missing menu entry' problem.
+
+ -- joost witteveen <joostje@debian.org> Sat, 22 Jan 2000 19:11:35 +0100
+
+menu (2.1.5-2.1) frozen unstable; urgency=low
+
+ * Non-maintainer upload (at joost's request)
+ * Correct install-menu problem which was leaving some generated menus
+ incomplete and broken (closes: #55603 (RC bug))
+
+ -- Julian Gilbey <jdg@debian.org> Thu, 20 Jan 2000 23:31:24 +0000
+
+menu (2.1.5-2) unstable; urgency=low
+
+ * Should add: (see 2.1.4-5).
+ * "onlyrunasroot" checking done as soon as possible, so that
+ install-menu doens't check for sane-ness of varables if
+ run as non-root.
+ * Fixed segfault in case rootprefix/usrprefix is undefined.
+ Closes: #53933, #52961
+ * added a `repeat_lang="LOCALE"' directive, to get back the old
+ `unasked for' translation behavior (where update-menus would
+ translate into the current LOCALE).
+
+ -- joost witteveen <joostje@debian.org> Wed, 5 Jan 2000 22:09:12 +0100
+
+menu (2.1.5-1) unstable; urgency=low
+
+ * This is an interim release; it breaks the (never used anyway)
+ `old' gettext translations, but allows gnome etc WM's to
+ creat startup files with translations for various languages.
+
+ * moved last files from /usr/doc to /usr/share/doc. Same for /usr/info.
+ * install-menu: added a translate() function.
+ * install-menu: added a forall() function.
+
+ -- joost witteveen <joostje@debian.org> Sun, 5 Dec 1999 19:04:42 +0100
+
+
+menu (2.1.4-4) unstable; urgency=low
+
+ * Applied patch in 47259, to fix spaces/tabs in menu.sgml.
+ Closes: #47259.
+ * (minor) updates to menu.sgml docs.
+ * Corrected help (-h) text of install-menu
+ * when user starts install-menu, and it wants to read an
+ examplercfile, install-menu now also searches it in $rootprefix
+ (not just in ${HOME}/$userprefix/).
+ Closes: #50867, #50298
+ * !include-ed files in the menu-methods are also looked for in
+ /etc/menu-methods, if they cannot be found in ~/.menu-methods.
+ (if non-root starts install-menus).
+ * (install-menu) error message if $section etc are empty should
+ be clearer about that menu first reads whole line, and that somewhere
+ on that line section wasn't defined.
+ * (adstring.cc) if `basepos' in report() isn't 0, then maybe I should
+ print `[...]' at the start of the line.
+
+ -- joost witteveen <joostje@debian.org> Mon, 22 Nov 1999 22:36:16 +0100
+
+menu (2.1.4-3) unstable; urgency=low
+
+ * Upgraded debhelper, and added usr/doc link removeal/link creation
+ stuff in prerm/postinst.
+ * Upgraded standards version.
+ * now use `string::size_type' for all string iterators, rather
+ than `unsigned int'. Closes: #47177
+
+ -- joost witteveen <joostje@debian.org> Tue, 12 Oct 1999 21:43:26 +0200
+
+menu (2.1.4-2) unstable; urgency=low
+
+ * In update-menus, terminate arguments to execve /etc/menu-methods/*
+ scripts with NULL. (forgot that, didn't actually seem to cause
+ problems, though).
+ * install-menu segfault-ed on the prefix() function if run from
+ update-menus as non-root (and only then). Caused by clearing of
+ enviromenent of new update-menus. Fixed (in install-menu).
+ * In update-menus, just before execve-ing the /etc/menu-methods/*
+ scritps, close(1), and then dup it from fd 0. This appears to
+ make pipes work again in the postrun etc commands in the
+ /etc/menu-methods/* scripts. Closes: #46971
+
+ -- joost witteveen <joostje@debian.org> Sat, 9 Oct 1999 17:01:14 +0200
+
+menu (2.1.4-1) unstable; urgency=low
+
+ * remove -n "$icon" as xterm arguments, as that was fake. Closes: #46788
+ * update-menus now reports error status of /etc/menu-methods/*
+ scripts
+ * When run under dpkg, don't print messages about
+ /tmp/update-menus.$$ files any more.
+ * Partially removed debugstatements to debug menu-2.1.3-2 actually
+ caused line numbers reported on errors to be wrong. Fixed.
+ * Finally used derived execptions (removed those for g++ 2.7, but
+ now they work again).
+ * More adoptations to stdc++'s string class (warning!)
+ * Use -Wall again.
+
+ -- joost witteveen <joostje@debian.org> Tue, 7 Oct 1999 22:28:08 +0200
+
+menu (2.1.3-3) unstable; urgency=low
+
+ * Due to changes in the way the rope::find() function in
+ libstdc++ works, menu 2.1.3-2 at all mem and then segfaulted.
+ now using `string' again (no rope), and fixed that segfault.
+ * Applied second patch from Joey Hess, to close open
+ filehandles (this time the `32!=r' version)
+
+ -- joost witteveen <joostje@debian.org> Tue, 5 Oct 1999 22:28:08 +0200
+
+menu (2.1.3-2) unstable; urgency=low
+
+ * Added menuentries for gpm, dpkg. (in default menu files, should be
+ in gpm/dpkg packages anyway).
+ * Applied patch from Joey Hess, to close open filehandles.
+ * Fixed error in adstring.h, that caused (one) compilation error
+ on newer versions of g++/libstdc++
+ * Fixed minor `possibly uninitialised variable' warning
+ * Replaced -Wall with -W on the g++ commandline, as a bug in
+ newer g++ or libstdc++-dev versions cause a whole load of warning
+ messages, on just including rope.h.
+
+ -- joost witteveen <joostje@debian.org> Sat, 2 Oct 1999 22:28:08 +0200
+
+menu (2.1.3-1) unstable; urgency=low
+
+ * Updated the description of this package, as it was
+ somewhat outdated.
+ * Added /etc/menu-methods/menu.config to the conffiles. Fixes: Bug#42379
+ * use sigprocmask to unblock the signal I use. Under apt, libc&pthread
+ used to block SIGUSR1. To get around this, also use SIGUSR2 now.
+ I don't want to see this bug any more! Fixes: 42051, etc.
+
+ -- joost witteveen <joostje@debian.org> Wed, 4 Aug 1999 12:41:08 +0200
+
+menu (2.1.2-4) unstable; urgency=low
+
+ * Another test-release for bug 42051. More debugging added
+
+ -- joost witteveen <joostje@debian.org> Mon, 2 Aug 1999 18:18:46 +0200
+
+menu (2.1.2-3) unstable; urgency=low
+
+ * Another test-release for bug 42051. Added printf just before
+ the exit(0) in the signal hander, and made the debugging output
+ slightly more clear.
+
+ -- joost witteveen <joostje@debian.org> Sat, 31 Jul 1999 01:39:06 +0200
+
+menu (2.1.2-2) unstable; urgency=low
+
+ * Test-release for bug 42051. Added tests for returnvalues of
+ fork() and kill() calls. Although it seems unlikely that fork()
+ returning -1 is the cause of the hangs, it is good to exclude it.
+
+ -- joost witteveen <joostje@debian.org> Thu, 29 Jul 1999 12:52:11 +0200
+
+menu (2.1.2-1) unstable; urgency=low
+
+ * #41783, `furter->further';
+ * #41783, delete empty logfiles. Fixes: #41783
+ (Note: the empty logfile does stay some time in /tmp: it only
+ vanishes when update-menus finished running).
+ * Using signals to communicate between forked-in-background child
+ and parent as to when the parent can exit(0). Now the
+ second update-menus started in one run of dpkg will (by default)
+ exit totally silently.
+
+ -- joost witteveen <joostje@debian.org> Fri, 23 Jul 1999 16:23:13 +0200
+
+menu (2.1.1-1) unstable; urgency=low
+
+ * Fixed segfault on empty menu-entry-files. Fixes: #41131
+ * Fixed messy translate_menu handling. Fixes: Bug#41077
+
+ -- joost witteveen <joostje@debian.org> Thu, 22 Jul 1999 15:45:16 +0200
+
+menu (2.1.1-0) unstable; urgency=low
+
+ * Applied patch in Bug#41620, fixes: #41620
+ * Added stripdir() function, that does what basename()
+ should have done
+ * Fixed bug in basename(), that made it drop the last char.
+
+ -- joost witteveen <joostje@debian.org> Tue, 20 Jul 1999 22:53:05 +0200
+
+menu (2.1.0-2) unstable; urgency=low
+
+ * OK, postrm actually installed the info file instead of removing it.
+ * /etc/menu-method/menu.h was messed up. Fixed.
+
+ -- joost witteveen <joostje@debian.org> Tue, 6 Jul 1999 04:34:48 +0200
+
+menu (2.1.0-1) unstable; urgency=low
+
+ * menu.text now called menu.txt, fixing: #40569
+ * While I was at it, also added menu.info
+ * Now use automake, autoconf.
+ * Now use debhelper
+ * Now i18n-ized. (Though only available language is Esperanto,
+ and it's not very much use internationalising menu, as it only
+ is used by system admins etc. I done it mostly to get experience
+ with the process).
+ * Also `i18n'-ized the text in the Debian tree. So, if you now
+ do "LC_ALL=eo update-menus", the tree (and some titles) will
+ appear in Esperanto (That's the only language available now).
+ Documentation, and some structure for the maintainers work etc,
+ shoudl still be provided, but techinically it's working.
+
+ -- joost witteveen <joostje@debian.org> Tue, 6 Jul 1999 03:25:53 +0200
+
+menu (2.0.0-5) unstable; urgency=low
+
+ * Removed bugs from the hint_mixedpenalty, should now work OK.
+ * removed strange code that would cause menu to write to
+ the rootprefix instead of userprefix, if userprefix didn't exist.
+ * Speedup, especially for systems with big menutrees.
+ * Added for menu-methods: onlyrunasroot, onlyrunasuser, preruntest
+
+ -- joost witteveen <joostje@debian.org> Tue, 29 Jun 1999 21:57:46 +0200
+
+menu (2.0.0-4) unstable; urgency=low
+
+ * Applied spelling-fixes patch to install-fvwmgenmenu.sh.
+ Fixes: #39847
+ * Added file /usr/doc/menu/menu.text.gz. Fixes: #39829
+ * Added sort= definition in install-menu config file.
+ Now it's possible to sort depending on whether something
+ is a submenu etc.
+ * Added a hint_mixedpenalty parameter to the hint optimization
+ routines. (still buggy)
+
+ -- joost witteveen <joostje@debian.org> Tue, 22 Jun 1999 23:45:36 +0200
+
+menu (2.0.0-3) unstable; urgency=low
+
+ * Spelling fixes by Ray dassen
+ * removed bashisms in debian/rules
+ * minor corrections to menu.sgml
+ * the cat `menu-method' now doesn't cercumvent the silly compat
+ restrictions of menu-1.5 any more, as those restrictions don't exist
+ any more.
+ * oops, nearly made lintian report an error, as install-fvwmgenmenu.sh
+ didn't have an manual page yet... (Created one, and updated the
+ install-fvwmgenmenu manual page)
+ * upped the default hint_mlpenalty in menu.h to 2000, as it seems that
+ people with more packages installed need it, and execution time
+ doesn't really grow to the moon.
+
+ -- joost witteveen <joostje@debian.org> Sun, 20 Jun 1999 22:56:53 +0200
+
+menu (2.0.0-2) unstable; urgency=low
+ * Added little bit of info about the hints in /usr/doc/menu/menu.sgml
+ (and corrected errors)
+ * added compat= option in the update-menus config file, so that
+ one could also have all menu entry files in menu-2 format (though
+ that is not advisable!)
+ * fixed bug in install-fvwmgenmenu.sh script, that would generate
+ wrong cp commant in explanation of what to do.
+
+ -- joost witteveen <joostje@debian.org> Sat, 19 Jun 1999 16:30:45 +0200
+
+menu (2.0.0-1) unstable; urgency=low
+
+ * Hints. (automatic optimization of menu tree)
+ * Removed /usr/lib/menu/default/debiandoc-sgml, fixes: 32530
+ * changed /etc/menus/ to /etc/menu in menufile(5).
+ * in update-menus I now check for the return value of stat()
+ * Finally removed that compat code. Now all menu-method files
+ that still used the two-years old syntax will not work any more
+ (generate an nice message, as opposed to the segfault in 1.5-20).
+ Also, the first (#!/...) line in the menu-method scripts doesn't
+ have to be "#!/usr/sbin/install-menu" any more, as the new-syntax
+ menu data is now always used.
+ * Now using stl rope, instead of that home-brewn replacement of the
+ String class from libg++.
+ * typo in default dpkg menuentry file.
+ * update-menus doesn't read menu entry files that have names that
+ end in ".bak" or start with "menu.config".
+ * There's now a `menu-2' compat mode, where you don't have to
+ use '\' at the end of every continuation line, but have to
+ use ';' to signal the end of a line of input. (activate in menu-method
+ files by "compat=menu-2", or in any file with "!C menu-2")
+ * Fixed segmentation fault in Translate stuff, and another error
+ that caused update-menus to use only the first translate definition
+ in /etc/menu-methods/translate_menus
+ -- joost witteveen <joostje@debian.org> Fri, 18 Jun 1999 21:50:18 +0200
+
+menu (1.5-20) unstable; urgency=low
+
+ * added rm -rf debian/files, to clean target in rules file,
+ fixes: 34178
+ * removed bash-isms from the example postinst file in
+ the documentation.
+ * many other documentation updates.
+ * mentioned in the docs that you can use `#' as comment
+ specifier in the menu entry files. Fixes: 34371
+ * removed xbase menu-entry-file. Fixes: ???. Hope all entries in
+ there really now are present in the X packages, though.
+ * removed xrn, xpuzzles, tcsh, rxvt, latex2html, imagemagick
+ default menuentry files, as they are now all in their own packages.
+ * spelling fix in su-to-root (priveleges -> privileges), fixes: 35720
+ * new functions: level(), firstentry(), lastentry(), nstring()
+ * entrycount() now doesn't return the number of entries in submenu of
+ the current child, but the number of entries in this menu.
+ * Although the $sort support was largely untested, it does work. Added
+ better explanation to menu.sgml
+ * error messages now report the line with the error better.
+ * New functions: rcfile() examplercfile() mainmenutitle() rootsection()
+ rootprefix() userprefix() treewalk() postoutput() preoutput(). They
+ output whatever they are defined to be in the menu-method file.
+ Fixes: 36171
+
+ -- joost witteveen <joostje@debian.org> Sat, 1 May 1999 16:57:59 +0200
+
+menu (1.5-19) unstable; urgency=low
+
+ * Finaly fixed that `cannot remove lockfile' bug.
+ (now using `real' advisory locking, this really appears neccecary).
+ the new mechanism is a lot simpler, and every second update-menus
+ that gets started will die itself if there's already a lock on
+ the pidfile.
+ For this, also changed the postinst file, to `manually'
+ kill any old update-menus still running, as in this case we really
+ want the new update-menus to take over (not the old one).
+
+ -- joost witteveen <joostje@debian.org> Thu, 4 Mar 1999 23:10:58 +0100
+
+menu (1.5-18) unstable; urgency=low
+
+ * s/Udate/Update/, in update-menus.cc. fixes: 30214
+ * removed definition of def_error in configinfo, so that `throw
+ def_error' can now be caught outside the configinfo class. Maybe this
+ fixes NN. (not sure, cannot reproduce it).
+ * default `verbosity' level is now `quiet', fixing: 30372
+ * Added information about the /etc/menu-methods/menu.config file,
+ as this was completely lacking in the manual page.
+
+ -- joost witteveen <joostje@debian.org> Sun, 6 Dec 1998 21:20:37 +0100
+
+menu (1.5-17) frozen; urgency=low
+
+ * Added 'technical' section to preferred menu layout. (promised to do
+ that already long ago...)
+ * If install-menu runs as user, $rootprefix/ is used if $userprefix
+ doesn't exist. Fixes 26851, but not as nicely as Joey suggests.
+ (install-menu tests for the existance of the directory, not for the
+ files within that dir, so if $userprefix exists, it has to contain all
+ files).
+ * Updated standards version.
+ * Added manual pages for install-menu, install-fvwmgenmenu, su-to-root
+ wm-menu-config (for lintian)
+ * Fixed some misplacements in the menu.sgml file. In particular, part of
+ the section intended for `packages with wm's', was put under `packages
+ with applications'. This should have caused serious confusion.
+
+ -- joost witteveen <joostje@debian.org> Tue, 20 Oct 1998 22:33:00 +0200
+
+menu (1.5-16) unstable; urgency=low
+
+ * Corrected 'WindowManagers' entry in preferred menu tree (in the docs)
+ * Added plurals to pixmap directories. Fixes: 26479
+ * Changed 8 spaces to one tab in debian/rules. Fixes:26865
+
+ -- joost witteveen <joostje@debian.org> Sun, 20 Sep 1998 20:54:01 +0200
+
+menu (1.5-15) unstable; urgency=low
+
+ * Applied suggested changes in bugreport 25231. Fixes: 25231
+ * Added Apps/hamradio to preferred menu structure (nobody but
+ hamradioers will see it anyway (request by: Joop Stakenborg,
+ stakenborg@hyph.azr.nl))
+ * replaced '[[:space:]]' with '[ \t]' in update-menus. Should at
+ least make menu work around sed changes (Fixes: 25035)
+ * Moved 'waiting for dpkg to finnish' message to just before the fork(),
+ so that the user will now see it where it's expected (before, the
+ message sometimes came after dpkg started installing the next
+ pacakge). Also the message now only comes with the '-v' option.
+ -- joost witteveen <joostje@debian.org> Fri, 14 Aug 1998 22:24:43 +0200
+
+menu (1.5-14) unstable; urgency=low
+
+ * Added "Apps/Text" to the documentation
+ * now uses "dpkg --get-selections" to get the installed packages.
+ * applied suggested patch to su-to-root (default exit 1, only
+ retry if user answered Y or y).
+
+ -- joost witteveen <joostje@debian.org> Sat, 11 Jul 1998 22:30:08 +0200
+
+menu (1.5-13) unstable; urgency=low
+
+ * Removed the packaging manual entry.
+ * removed comments in the debian/rules file from imurdoc, saying it was
+ "last modified 1994", and other rather out of date stuff.
+ * Fixes to compile with egcs. (now uses optimisation!)
+ * More understandable error message if menuentry files are incorrectly
+ installed executable.
+ * update-menus now installs without the executable bit on, the postinst
+ turns it on.
+
+ -- joost witteveen <joostje@debian.org> Sat, 23 May 1998 16:33:12 +0200
+
+menu (1.5-12) frozen unstable; urgency=low
+ * Fixed postrm example in documentation. (actually, quite serious --
+ many window managers should now be changed, but fortunately the
+ bug fixed doesn't occur very easily).
+ * Fixed mis-handling of files that don't end with newline.
+ noticed by Jochen Kronjaeger <Kronjaeg@Stud-Mailer.Uni-Marburg.DE>
+ (thanks!)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Mon, 23 Mar 1998 20:42:14 +0100
+
+menu (1.5-11) unstable; urgency=low
+
+ * Went through the buglist again, and updated the default
+ menuentryfiles (and removed those that now exists in other
+ debian packages). Fixes: 13880 15081 17171 17215 17292.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 15 Mar 1998 10:39:08 +0100
+
+menu (1.5-10) unstable; urgency=low
+
+ * Oh, yes, Aaron Howell, you were right. I did forget to close (free)
+ some files. Fixed that, so this fixes: 17253
+ * Fixed error in install-menu that caused the creation directories
+ in / (at least for KDE and wmaker. Not sure why not for other wm's)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 15 Mar 1998 10:02:23 +0100
+
+menu (1.5-9) unstable; urgency=low
+
+ * Fixed several possible segmentation faults (all in error-reporting
+ routines)
+ * Input buffer for 'readline' increased to 10240 bytes. Fixes: #19482
+ (should really fix this sometime)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 12 Mar 1998 21:23:13 +0100
+menu (1.5-8) unstable; urgency=low
+
+ * Removed reference to README in all files where it was still referenced.
+ (many, many files, that was!)
+ * changed a \fL to a \fB in the menufile.5 manpage
+ (fix suggested by Joey Hess). fixes: #17187
+ * Make wm-menu-config an executable script.
+ * applied suggested fixes to doc/menu.sgml, fixes: #17475
+ * changed default warning "#Automatically generated file. Do not edit
+ (see /usr/doc/menu/README)" to point to /usr/doc/menu/html/index.html.
+ (This is placed at the top of the files install-menu generates).
+ * document the availability of "!include file" in the menuentry files
+ * Changed a "~/menu-methods" to "~/.menu-methods" in update-menus.1
+ * Numerous changes to the documentation, after many suggestions
+ from Yann Dirson (thanks!)
+ * Applied patch from Herberd, fixes:19056
+ * removed the libg++ dependancy code (not the libg++ package, it still
+ uses libstdc++).
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 8 Mar 1998 12:00:13 +0100
+
+menu (1.5-7) unstable; urgency=low
+
+ * Really added wm-menu-config file (Fixes: #17169)
+ * compressed menufile.5 (Fixes: #17168)
+ * Added geometry to rxvt entry in menu.h (as suggested in #17171)
+ * Really removed gv default menuentry. (Fixes: #17170)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 16 Jan 1998 02:23:13 +0100
+
+menu (1.5-6) unstable; urgency=low
+ * done nothing at all, fixes: #13648, #13657, #13676, #13677, #13680, #15765
+ (fixing 6 GRAVE bugs, by doing nothing)
+ * Removed default menufiles for xlockmore, fixes: #10831
+ * Added the "suggested" variables "geometry" and "visability" to
+ the menu.sgml file, and /etc/menu-method/menu.h.
+ * Added some comments to /usr/doc/menu/examples/cat
+ * Fixed the dpkg default menuentry file. Fixes: #14170, #15847
+ * Finally applied (most of) patch supplied by Nikita Schmidt.
+ Fixes: #14318
+ * removed convert-menuentry, fixes: #15914
+ * Applied patch from Dirk Luetjens <dirk@luedi.oche.de>
+ fixes: Bug#15871
+ * Now compresses update-menus.1 manual page
+ fixes: #14569
+ * Compressed changelog.Debian. Fixes: #15429
+ * Removed the following default menuentry files:
+ afterstep ddd fvwm2 fvwm95 gnuplot gv menu olvwm pixmap procps
+ vim xfig xpaint xxgdb
+ as they are already present in the packages themselves.
+ (list supplied by Andreas Jellinghaus <aj@fw-athene.wiwi.uni-karlsruhe.de>)
+ * Added a wm-menu-config script, and updated documentation.
+ Now window managers are encouraged to use this instead of directly
+ calling update-menus. (the script does more).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 15 Jan 1998 00:48:08 +0100
+
+menu (1.5-5) unstable; urgency=low
+
+ * Added ifelsefile, and catfile functions for Andreas Jellinghaus.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Tue, 7 Oct 1997 22:21:24 +0200
+
+menu (1.5-4) unstable; urgency=low
+
+ * Removed several "debugging" files (gmon.out, output of strace, etc).
+ * Now really create html documentation during pacakge build.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 18 Sep 1997 19:38:27 +0200
+
+menu (1.5-3) unstable; urgency=low
+ * Fixed a bug found by a close cooperation with the xpat2 maintainer
+ and Lars Wirzenius: if a menuentry (for xpat2 in this case) begins with
+ "?package(non-installed-package)", and has less than some number of
+ variable-assignements after the colon, update-menus reported an error.
+ (if there are "enough" assignemnts, no error will be reported, but
+ update-menu would create a bogus menuentry). Good work, guys!
+ * Switched the "postinst" and "postrm" labels in the documentation,
+ fixing bug#12522 (and 12521, for that matter).
+ * added a much bigger xbase menuentry file. This one really should
+ go into xbase itself, and Mark asked me for it, but I've had too
+ little time to really check this. Hopefully by including it in
+ menu it will recieve some more checking, untill I feel confident
+ enough to send it to Mark Eichin.
+ * Removed xlockmore menuentry file, is now part of xlockmore.
+ * (and I removed another menuentry file, but cannot remember
+ which one).
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 18 Sep 1997 19:18:44 +0200
+
+menu (1.5-2) unstable; urgency=low
+
+ * Added a sanity-check for instal-menus config file (prevents
+ setfaults).
+ * removed xlockmore default menu entries, they are now in the
+ xlockmore package (or will be, soon).
+ * corrected default dpkg menu entries.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 3 Aug 1997 22:19:11 +0200
+
+menu (1.5-1) unstable; urgency=low
+
+ * Added entrycount(), entryindex functions.
+ * Added add(), sub(), mult(), div() functions.
+ * moved cmap.xpm to .../pixmaps
+ * now includes sgml and html versions of README.
+ (due to restrictions of debiandoc, no info files can be made!)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 13 Jul 1997 13:13:11 +0200
+
+menu (1.4-2) unstable; urgency=low
+
+ * Now depends on libg++272. (Made possible by a dpkg-source bugfix
+ from Joey Hess).
+
+ * Few fixes to how debugging/error output is handled (cosmetic).
+ * this release still has a (harmless) race-condition (noticed
+ by Joey Hess),when two update-menus programmes run simultaniously
+ while dpkg -i something is running (or Suspended).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 10 Jul 1997 23:05:14 +0200
+
+menu (1.4-1) unstable; urgency=low
+
+ * Due to extra features/bugreporting, this version doesn't work well
+ with the menu-bugs in fvwm95_2.0.42a-10, and latex2html_96.1.h-5.
+
+ * added ability do "define" functions to install-menu.
+ (very usefull if you want to have a common xterm/rxvt for all
+ window managers)
+ * '!include \"/etc/menu-method/filename\"'
+ * read !include "filename" relative to current direcotry
+ * provide /etc/menu-method/menu.h example file.
+ * parsing of (all) files files somewhat rewritten; should be
+ more stable now (except for bugs).
+ * trailing spaces are stripped (so a \ at the end of the
+ line will always be a continuation line, even if there's a
+ space after it).
+ * _Much_ better error reporting.
+ * removed all those pesky "icon=none" from the example menufiles.
+ * in new menu format, "package(local.*)" is considered installed
+ * fix bug in hotkey generation
+ * first check for "examplercfile" (system.$wm-menu), and then create
+ output file.
+ * made the README in /usr/doc/menu/example/README somewhat clearer as
+ to what the purpose of these files is
+ * incorporated afterstep-package menu-method's into my example
+ menu-method (allong with the "!include menu.h" stuff).
+ * install-menu: added toupper() and tolower() functions
+ * do not attempt to read menuentry files with the name "core".
+ * Using libc6 now
+ * fixed gpmconfig entry.
+ * added Joey's cmap.xpm file.
+ * in compat mode (for old /etc/menu-methods's), write esccpp($title)
+ as identifier (fixes "install-menu uses text instead of x11 entry"
+ bug).
+ * in case of missing "section=" (in new-format menuentry), assume
+ seciont="/". (fixes a reported bug, I believe).
+ * "+" can now be part of a package name, in new-format menuentries.
+ (previously, doc++ and libg++ couldn't have a new-format menuentry).
+ * executable menuentries are now executed, and the stdout used as
+ menuentry (nice feature request from Joey Hess)
+ * update-menus now reads config info in /etc/menu-methods/menu.config
+ (or ~/.menu-methods/menu.config). Currently can specify only error
+ logging. (set "verbosity=quite" in /etc/menu-methods/menu.config to
+ remove all messages). Not very well tested yet.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 21 Jun 1997 13:24:55 +0200
+
+menu (1.3-2) frozen unstable; urgency=low
+ * couple of simple bug-fixes. All not very serious, but would
+ like this to go into frozen anyway.
+ * fixed menuentry(5) manual page (was simply wrong)
+ * made the default install messages somewhat nicer (in order not
+ to scare away newbies)
+ * Redirected stderr of the killall command in postinst to /dev/null
+ * fixed typos in extended description (in control file).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Wed, 14 May 1997 22:13:01 +0200
+
+menu (1.3-1) frozen unstable; urgency=low
+
+ * Only change: added ifeq(), ifneq(), ifeqelse(), ifroot() to install-menu
+ (and the README).
+ * Added a "killall update-menus" to postinst (to prevent problems if
+ update-menus is upgraded along with other packages that use it).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 8 May 1997 12:43:00 +0200
+
+menu (1.2-3) frozen unstable; urgency=low
+
+ * Another two-line-fix to update-menus, fixing the compat mode code.
+ (if no icon was defined, that resulted in errors for the compat mode).
+ * I would like this release to go into frozen, as it does
+ fix a long-standing bug (still present in frozen), and will
+ improve many people's experience with the menu's after isntalling
+ some "unstable" packages (some of which may need the new menu
+ functionality).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Mon, 5 May 1997 15:29:12 +0200
+
+menu (1.2-2) unstable; urgency=low
+
+ * Thanks, Andy Mortimer, for noticing I don't close the fd's.
+ doing that now.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 3 May 1997 15:43:46 +0200
+
+menu (1.2-1) unstable; urgency=low
+
+ * Changes to README (documents parent(), basename()).
+ * Slichtly changed the dpkg-lockfile detection in update-menus,
+ after a report from Andy Mortimer
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sat, 3 May 1997 14:52:45 +0200
+
+menu (1.2) unstable; urgency=low
+
+ * Fixes to example dwww script (though Jim Pick has a much
+ better one)
+ * Fixes to install-menu, for submenu entries.
+ * Fixes to update-menus, no core dup on malformed "?package(..)" in
+ menuentry files.
+ * extra functions replacewith(), prefix() (install-menu)
+ * make hotkeys case-insensitive.
+ * the genmenu=, prerun=, postrun= assignments can now contain
+ substitutions just like the startmenu etc ones.
+ * Added a "|| errno==EACCES" after the attempt to lock the dpkg lockfile
+ to hopefully check for all possible errno valus fcntl creates.
+ * changed the "your system is messed up badly" message to
+ something nicer (now it is "please help me track down
+ this problem I have")
+ * update-menus only gives the "forking to backround" text when
+ it didn't kill any other update-menus (so you'll only see it
+ once in a multy-package install session).
+
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Wed, 30 Apr 1997 22:55:57 +0200
+
+menu (1.1) unstable; urgency=low
+
+ * Added a few more example-menumenthods (afterstep, ctwm, twm, fvwm,
+ fvwm95, dwww). With dwww you now have descriptions of the packages
+ in the http://rulcmc.leidenuniv.nl/dwww/menu.html page.
+ (make that http://localhost/dwww/menu.html, after you've instaled it).
+ * These new menu-methods are now better than the old ones, as they
+ properly quote the title.
+ * fixed a few bugs in install-menu that caused it to interpret
+ ifnempty() and ifempty() the wrong way around (also ifelse,...).
+ * fixed permissions in /usr/doc/examples/*
+ * fixed a few "default" menuentries.
+
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Mon, 21 Apr 1997 23:30:28 +0200
+
+menu (1.0) unstable; urgency=low
+
+ * complete remake, added a lot of functionality.
+ * New features
+ - support for long titles and descriptions,
+ - much more flexible /etc/menu-methods files,
+ - if dpkg is running, forks into background, to get rid of that
+ "need to run update-menus twice" syndrome.
+ - support for hotkeys
+ * see /usr/doc/menu/BUGS for known limitations of this release.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Wed, 16 Apr 1997 20:06:45 +0200
+
+menu (0.11) unstable; urgency=low
+
+ * fix "#" bug (a # is only a comment if it follows a space or newline)
+ * add an example to create a www page for packages providing
+ "dwww" documentation
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 23 Jan 1997 22:27:30 +0100
+
+menu (0.10) unstable; urgency=low
+
+ * Manpages by Joey Hess (now it's a real package!)
+ * if user runs, and ~/.menu-methods exists, read the
+ config files from there (and don't process /etc/menu-methods).
+ * Add support for olvwm ("treewalk" attribute /etc/menumethods)
+ * -f -stdio is now standard (options are ignored, and always passed on
+ to /etc/menu-methods/*)
+ * files in /etc/menu-methods with anything other than letters/figures/_-
+ are silently ignored by update-menus
+ * some speedup in install-fvwmgenmenu (not as much as I'd hoped).
+ * added $d{var}, $s{var}, $b{var} variable substitutions
+ (request from Joey Hess).
+ * if getuid()!=0, also parse /etc/menus, /usr/lib/menus.
+ * Moved Lockscreen and Savescreen to Screen/ in default menus
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 12 Jan 1997 00:46:38 +0100
+
+menu (0.9) unstable; urgency=low
+
+ * "popup" bugfix
+ * Don't read /etc/menu-methods/*.* files (with a dot in it, usually
+ backup files from dpkg).
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 3 Jan 1997 14:31:15 +0100
+
+menu (0.8) unstable; urgency=low
+ * Fixing longstanding bug (one Joey reported loads of times)
+ when update-menus is run from a postinst (from a previously
+ uninstalled package), update-menus assumes this pacage is not installed.
+ Fixed by looking at commandline of ppid, and checking for
+ "bash /var/lib/dpkg/info/$package.postinst"
+ * The fvwmgenmenu now has a more general compat mode that should
+ supports all window-managers, without recompilation.
+ For more robustness, this mode is incompatible with the old
+ install-fvwm2menu programme, though (different/no cache files).
+ * update-menus has a mode to pipe the menuentries through
+ stdin of the menu-method installer programmes (-f --stdin option).
+ This should make everything somewhat faster.
+ * The old /etc/menu-methods/* config files may not work any more.
+ (Although I tried fvwm95, and that still works).
+ If your window manager doesn't have the debian menus any more, please
+ copy the relevant files from /usr/doc/menu/examples to
+ /etc/menu-methods, and run "update-menus -f".
+ * removes couple of /usr/lib/menu/default files that now are in the packages
+ themselves.
+ * update-menus hands -f uption to menu-methods
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 15 Dec 1996 22:37:25 +0100
+
+menu (0.7) unstable; urgency=low
+
+ * Added some 9wm support (now gwm is the only manager without support)
+ (Although only the pdmenu and fvwm95 packages support it. The other
+ window manager have support files in /usr/doc/menu/examples)
+ * One bugfix in update-menus.
+ * Added a few shells. These are in the "/Apps/Shells" section, and
+ therefore I had to rename "/Shells" to "/XShells". That OK with everybody?
+ * fvwm/twm/9wm install-fvwmgen menu compat modes now use full id's
+ for the submenu's (request from Joey)
+ * install-fvwmgenmenu now replaces $%{icon} with %icon% if icon!="none"
+ in the "supported" section in the config file. This is added
+ to the example config files for install-fvwmgenmenu
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Fri, 13 Dec 1996 19:01:39 +0100
+
+menu (0.6) unstable; urgency=low
+
+ * Added example files for twm and afterstep window manager. (along with
+ the already avaliable fvwm, fvwm2 example files).
+ * Again, the "default" support for fvwm2 has been removed (version 0.5),
+ as this should be in fvwm2. See /usr/doc/menu/examples/${wm} on how
+ to add support.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 8 Dec 1996 21:53:52 +0100
+
+menu (0.5) unstable; urgency=low
+
+ * do space-stripping for fvwm2 (should be in fvwm2 package, but never mind)
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 1 Dec 1996 13:54:10 +0100
+
+menu (0.4) unstable; urgency=low
+
+ * if the .updated-menus "cache" file has incorrect entries, update-menus
+ could loop forever. Removed this bug.
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Thu, 28 Nov 1996 12:28:17 +0100
+
+menu (0.3) unstable; urgency=medium
+ * Added Depends: shlibs line to controlfile.
+ * allowed for spaces in description fields (quote them with "sp ace")
+ (so now the "hello" App/Programming entry works!)
+ * install default menufile if new one in /etc/menu vanished
+ * Assume all packages called "local*" to be installed
+ * Now has provision for starting other menu managers (twm),
+ and fvwm{,2} modules (mostly untested). (this should be in the fvwm2
+ package, though). Note that due to a bug in fvwm2 (install-fvwm2menu?)
+ these don't work, at the moment. (See BUGS file in source)
+ * First remove the menu-id's of to-be-updated menufiles, as the old
+ menufile may have stale menu-id's in it.
+ * Added "-v" (verbose) option to update-menus and
+ /etc/menu-methods/fvwm2
+ * Still using filenames to encode the package names, but Lars has nearly
+ convinced me! (If only I knew how solaris works). Still, I made the
+ default menuentries conform Lars' ideas, and people using this package
+ can just make (temporarily) both the filename and the entryid have
+ the package name in it.
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Wed, 27 Nov 1996 21:08:02 +0100
+
+menu (0.2) unstable; urgency=low
+
+ * Added a few README's to the menu directories
+ * now advice the packages to put their menufiles in /usr/lib/menu, after
+ suggestion form Joey.
+ * Removed buglet from update-menus.
+ * Next is from the (unreleased) 0.1 version:
+ * Totally changed menu idea; the menu files are now conffiles
+ living in /etc/menu; and systemadm and users can run update-menus
+ any time something changed in the /etc/menu or the user's ~/.menu
+ database.
+ * Users can override system-wide menu-database.
+ (this is currently not fully implemented: there still is a bug
+ when removing system-menu entries)
+ * This menu-package now provides some 50 menu entries in /usr/lib/menu
+ after installes this package you'll get a nice menu instantly, and
+ hopefully, this will serve as a skeleton for other pacakge provides.
+ (of cource, /etc/menu entries override the /usr/lib/menu entries).
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Mon, 25 Nov 1996 20:35:34 +0100
+
+menu (0.1) unstable; urgency=low
+ * Totally changed menu idea; the menu files are now conffiles
+ living in /etc/menu; and systemadm and users can run update-menus
+ any time something changed in the /etc/menu or the user's ~/.menu
+ database.
+ * Users can override system-wide menu-database.
+ (this is currently not fully implemented: there still is a bug
+ when removing system-menu entries)
+ * This menu-package now provides some 50 menu entries in /usr/lib/menu
+ after installes this package you'll get a nice menu instantly, and
+ hopefully, this will serve as a skeleton for other pacakge provides.
+ (of cource, /etc/menu entries override the /usr/lib/menu entries).
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Sun, 24 Nov 1996 19:22:41 +0100
+
+menu (0.0) unstable; urgency=low
+
+ * initial release
+
+ -- joost witteveen <joost@rulcmc.leidenuniv.nl> Tue, 5 Nov 1996 22:42:09 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/debian/conffiles b/debian/conffiles
new file mode 100644
index 0000000..34b62eb
--- /dev/null
+++ b/debian/conffiles
@@ -0,0 +1,4 @@
+/etc/menu-methods/translate_menus
+/etc/menu-methods/menu.h
+/etc/menu-methods/lang.h
+/etc/menu-methods/menu.config
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..ab27f7a
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,21 @@
+Source: menu
+Section: admin
+Priority: optional
+Maintainer: Bill Allombert <ballombe@debian.org>
+Standards-Version: 3.9.2
+Build-Depends: debhelper (>= 5), texinfo, debiandoc-sgml, gettext
+
+Package: menu
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Suggests: menu-l10n, gksu|kdebase-bin|kdebase-runtime|ktsuss|sux
+Description: generates programs menu for all menu-aware applications
+ Debian menu keeps transparently the menus in the different
+ window-managers in sync with the list of installed programs.
+ .
+ Debian menu relies on a list of menu entries provided by programs
+ and a list of menu-methods provided by window-managers and other
+ menu-aware applications.
+ .
+ Menu provides system-level and user-level configuration and overrides
+ for both menu entries and menu-methods.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..69a9c24
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,30 @@
+This is the Debian menu system, written and maintained by Joost
+Witteveen <joostje@debian.org> until version 2.1.5-10.
+
+The Debian menu system is now maintained by Bill Allombert and Morten Brix
+Pedersen.
+
+The original source can always be found at:
+ ftp://ftp.debian.org/dists/unstable/main/source/
+
+This software is developed at:
+ http://alioth.debian.org/projects/menu
+
+Copyright (C) 1996-2003 Joost Witteveen,
+Modifications:
+Copyright (C) 2002-2005 Bill Allombert and Morten Brix Pedersen.
+
+ 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 with
+ the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth
+ Floor, Boston, MA 02110-1301, USA.
diff --git a/debian/menu.doc-base b/debian/menu.doc-base
new file mode 100644
index 0000000..05662b2
--- /dev/null
+++ b/debian/menu.doc-base
@@ -0,0 +1,19 @@
+Document: menu
+Title: Debian Menu System Manual
+Author: Joost Witteveen, Joey Hess, Christian Schwarz, Bill Allombert
+Abstract: This manual describes the how packages can register themselves
+ in the Debian Menu, how window-managers can interface with
+ the Menu System to build up-to-date menu files, and how administrators
+ and users can control the generated menus.
+Section: Debian
+
+
+Format: debiandoc-sgml
+Files: /usr/share/doc/menu/menu.sgml.gz
+
+Format: text
+Files: /usr/share/doc/menu/menu.txt.gz
+
+Format: HTML
+Index: /usr/share/doc/menu/html/index.html
+Files: /usr/share/doc/menu/html/*.html
diff --git a/debian/menu.lintian-overrides b/debian/menu.lintian-overrides
new file mode 100644
index 0000000..6d31fed
--- /dev/null
+++ b/debian/menu.lintian-overrides
@@ -0,0 +1 @@
+menu: prerm-calls-updatemenus
diff --git a/debian/postinst b/debian/postinst
new file mode 100644
index 0000000..387bfd9
--- /dev/null
+++ b/debian/postinst
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+set -e
+
+# Package maintainers, DO NOT use this as an example for how to
+# call update-menus in your postinst! This script does several things
+# you shouldn't do, and doesn't do other things that you should
+# do. See /usr/share/doc/menu/ for more info.
+
+case "$1" in
+triggered)
+ # This is triggered by any installation of a menu file and by
+ # any call to update-menus made in a package maintainer script.
+ test -x /usr/bin/update-menus && update-menus --trigger
+ exit 0
+;;
+*)
+ chmod a+x /usr/bin/update-menus
+ update-menus
+;;
+esac
+
+#DEBHELPER#
diff --git a/debian/prerm b/debian/prerm
new file mode 100644
index 0000000..762329b
--- /dev/null
+++ b/debian/prerm
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+set -e
+
+test -x /usr/bin/update-menus && update-menus --remove --trigger
+chmod a-x /usr/bin/update-menus
+
+#DEBHELPER#
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..062478e
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,104 @@
+#! /usr/bin/make -f
+# -*- mode: makefile; -*-
+#
+# Based on the sample file shipped with debhelper.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+arch := $(shell dpkg-architecture -qDEB_HOST_ARCH)
+
+CXXFLAGS = -g -Wall
+CFLAGS = -g -Wall
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+CXXFLAGS += -O0
+CFLAGS += -O0
+else
+CXXFLAGS += -O2
+CFLAGS += -O2
+endif
+
+build: build-stamp
+build-stamp:
+ dh_testdir
+ ./configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man
+ $(MAKE) CXXFLAGS="$(CXXFLAGS)" CFLAGS="$(CFLAGS)"
+ touch build-stamp
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp install-stamp config.log
+
+ # Add here commands to clean up after the build process.
+ [ ! -f Makefile ] || $(MAKE) distclean
+
+ dh_clean
+
+install: install-stamp
+install-stamp: build-stamp
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs \
+ etc/menu-methods \
+ etc/menu \
+ usr/share/menu \
+ usr/share/man/man1 \
+ usr/share/bug/menu
+
+
+ # Add here commands to install the package into debian/menu.
+ $(MAKE) install DESTDIR=`pwd`/debian/menu/
+
+ install -p -g root -o root -m 644 \
+ examples/translate_menus debian/menu/etc/menu-methods
+ install -p -g root -o root -m 644 \
+ examples/menu.h debian/menu/etc/menu-methods
+ install -p -g root -o root -m 644 \
+ po-sections/lang.h debian/menu/etc/menu-methods
+ install -p -g root -o root -m 644 \
+ examples/menu.config debian/menu/etc/menu-methods
+ #
+ install -p -g root -o root -m 644 \
+ doc/README.config-menus debian/menu/etc/menu/README
+ install -p -g root -o root -m 644 \
+ doc/README.menu-methods debian/menu/etc/menu-methods/README
+ install -p -g root -o root -m 644 \
+ doc/README.package-menus debian/menu/usr/share/menu/README
+ #
+ install -p -g root -o root -m 644 \
+ debian/bug.presubj debian/menu/usr/share/bug/menu/presubj
+ #
+ touch install-stamp
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do here, no architecture independant packages here.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_installdocs
+ dh_installman doc/update-menus.fr.1 doc/su-to-root.fr.1 \
+ doc/menufile.fr.5
+ dh_installinfo doc/menu.info.gz
+ dh_installchangelogs
+ dh_strip
+ dh_compress
+ dh_fixperms
+ #Ensure update-menus is not shipped executable
+ chmod a-x debian/menu/usr/bin/update-menus
+ dh_installdeb
+# refuse debhelper V3 conffiles behaviour.
+ cp debian/conffiles debian/menu/DEBIAN
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary
diff --git a/debian/triggers b/debian/triggers
new file mode 100644
index 0000000..285275f
--- /dev/null
+++ b/debian/triggers
@@ -0,0 +1,3 @@
+interest /usr/share/menu
+interest /usr/lib/menu
+interest /etc/menu-methods
diff --git a/debian/update-menus.sh b/debian/update-menus.sh
new file mode 100644
index 0000000..07aac5c
--- /dev/null
+++ b/debian/update-menus.sh
@@ -0,0 +1,5 @@
+#! /bin/sh
+
+if test -x /usr/bin/update-menus.real; then
+ exec /usr/bin/update-menus.real "$@"
+fi
diff --git a/default/README b/default/README
new file mode 100644
index 0000000..4aacc16
--- /dev/null
+++ b/default/README
@@ -0,0 +1,7 @@
+In this directory, the menu package has installed some example
+menu files. Although changing them in this directory may work,
+the local systemadmin (you?) is best adviced to put the local
+menu files in /etc/menu, as, otherwise your changes are deleted
+when you update the menu package.
+
+For more info, please read /usr/share/doc/menu/html
diff --git a/default/ash b/default/ash
new file mode 100644
index 0000000..616f169
--- /dev/null
+++ b/default/ash
@@ -0,0 +1 @@
+?package(ash):needs="text" section="Apps/Shells" title="Ash" command="/bin/ash -i"
diff --git a/depcomp b/depcomp
new file mode 100755
index 0000000..04701da
--- /dev/null
+++ b/depcomp
@@ -0,0 +1,530 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2005-07-09.11
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
+
+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 <bug-automake@gnu.org>.
+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
+
+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.
+ "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+ 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.
+ stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+ tmpdepfile="$stripped.u"
+ if test "$libtool" = yes; then
+ "$@" -Wc,-M
+ else
+ "$@" -M
+ fi
+ stat=$?
+
+ if test -f "$tmpdepfile"; then :
+ else
+ stripped=`echo "$stripped" | sed 's,^.*/,,'`
+ tmpdepfile="$stripped.u"
+ fi
+
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+
+ if test -f "$tmpdepfile"; then
+ outname="$stripped.o"
+ # 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,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+ sed -e "s,^$outname: \(.*\)$,\1:," < "$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"
+ ;;
+
+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 mecanism 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 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 $1 != '--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 $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+ # X makedepend
+ shift
+ cleared=no
+ for arg in "$@"; do
+ case $cleared in
+ no)
+ set ""; shift
+ cleared=yes ;;
+ esac
+ 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.
+ -*|$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 $1 != '--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, regardless of -o,
+ # because we must use -o when running libtool.
+ "$@" || exit $?
+ IFS=" "
+ for arg
+ do
+ case "$arg" in
+ "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+ set fnord "$@"
+ shift
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift
+ shift
+ ;;
+ esac
+ done
+ "$@" -E |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ echo " " >> "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+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-end: "$"
+# End:
diff --git a/doc/BUGS b/doc/BUGS
new file mode 100644
index 0000000..2f1c280
--- /dev/null
+++ b/doc/BUGS
@@ -0,0 +1,24 @@
+Reporting menu bugs
+---------------------
+
+If you are reporting a bug about the way menus are displayed, please
+provide the name and version of the window manager (or menu manager)
+you use. You can use the output of
+dpkg-query -l <window manager package name>
+
+-----------------------
+If you have a difficult to reproduce problem with install-menu
+-----------------------
+
+# update-menus --stdout > /tmp/menu-stdin
+# bzip2 /tmp/menu-stdin
+# tar -cvf /tmp/tar.tar /tmp/menu-stdin.bz2 #and any other interesting file
+# uuencode /tmp/tar.tar /tmp/tar.tar | mail -s tar.tar menu@packages.debian.org
+
+If you want to try out a menu-method yourselve several times
+(with minor changes etc), you can use the /tmp/menu-stdin file
+this way to start your menu-method without starting update-menus:
+
+/etc/menu-methods/my_wm < /tmp/menu-stdin
+
+
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..4f5d89a
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,66 @@
+all-local: menu.html/index.html menu.txt.gz menu.info.gz
+
+DOCS = announce-2 BUGS README.changes README.config-menus README.menu-methods README.new-sections README.package-menus README.pre1 TODO translate README.translations menu.sgml menu.direntry
+
+man_MANS = install-menu.1 menufile.5 su-to-root.1 update-menus.1
+EXTRA_DIST = $(man_MANS) $(DOCS) $(srcdir)/menu.html $(srcdir)/menu.txt.gz $(srcdir)/menu.info.gz update-menus.fr.1 su-to-root.fr.1 menufile.fr.5
+
+docdir=$(datadir)/doc
+pkgdocdir=$(docdir)/menu
+
+menu.html/index.html: menu.sgml
+ LANG=C debiandoc2html $<
+
+menu-one-file.html: menu.sgml
+ LANG=C debiandoc2html -1 -b menu-1-file $<
+ mv menu-1-file.html/index.html menu-one-file.html
+ rmdir menu-1-file.html
+
+menu-one-file: menu-one-file.html
+
+%.info: %.sgml %.direntry
+ LANG=C debiandoc2info -s ./$*.direntry $<
+
+%.txt: %.sgml
+ LANG=C debiandoc2text -O $< > $@
+
+%.gz: %
+ gzip --best --force --stdout $< > $@
+clean-local:
+ rm -f menu-one-file.html
+
+maintainer-clean-local:
+ rm -rf menu.html *.info* *.txt*
+
+install-default:
+ $(INSTALL) -d \
+ $(DESTDIR)$(pkgdatadir)/default
+ for i in $(top_srcdir)/default/*; do \
+ test -f $$i && $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdatadir)/default;\
+ done;
+
+install-data-local:
+ $(INSTALL) -d \
+ $(DESTDIR)$(pkgdocdir)/examples \
+ $(DESTDIR)$(pkgdocdir)/html \
+ $(DESTDIR)$(infodir)
+
+ for i in $(top_srcdir)/examples/*; do \
+ test -f $$i && $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdocdir)/examples;\
+ done;
+
+ $(INSTALL_DATA) $(srcdir)/menu.html/* $(DESTDIR)$(pkgdocdir)/html
+ $(INSTALL_DATA) $(srcdir)/menu.txt.gz $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/menu.info.gz $(DESTDIR)$(infodir)
+ $(INSTALL_DATA) $(srcdir)/menu.sgml $(DESTDIR)$(pkgdocdir)
+
+ $(INSTALL_DATA) $(srcdir)/BUGS $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/README.translations $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/../README $(DESTDIR)$(pkgdocdir)
+
+uninstall-default:
+ rm -rf $(DESTDIR)$(pkgdatadir)/default
+
+uninstall-local:
+ rm -rf $(DESTDIR)$(pkgdocdir)
+ rm -f $(DESTDIR)$(infodir)/menu.info.gz
diff --git a/doc/Makefile.in b/doc/Makefile.in
new file mode 100644
index 0000000..b84b422
--- /dev/null
+++ b/doc/Makefile.in
@@ -0,0 +1,461 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = doc
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+SOURCES =
+DIST_SOURCES =
+man1dir = $(mandir)/man1
+am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)"
+man5dir = $(mandir)/man5
+NROFF = nroff
+MANS = $(man_MANS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = $(datadir)/doc
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+DOCS = announce-2 BUGS README.changes README.config-menus README.menu-methods README.new-sections README.package-menus README.pre1 TODO translate README.translations menu.sgml menu.direntry
+man_MANS = install-menu.1 menufile.5 su-to-root.1 update-menus.1
+EXTRA_DIST = $(man_MANS) $(DOCS) $(srcdir)/menu.html $(srcdir)/menu.txt.gz $(srcdir)/menu.info.gz update-menus.fr.1 su-to-root.fr.1 menufile.fr.5
+pkgdocdir = $(docdir)/menu
+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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
+ 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
+uninstall-info-am:
+install-man1: $(man1_MANS) $(man_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
+ rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+install-man5: $(man5_MANS) $(man_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man5dir)" || $(mkdir_p) "$(DESTDIR)$(man5dir)"
+ @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.5*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 5*) ;; \
+ *) ext='5' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst"; \
+ done
+uninstall-man5:
+ @$(NORMAL_UNINSTALL)
+ @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.5*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 5*) ;; \
+ *) ext='5' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " rm -f '$(DESTDIR)$(man5dir)/$$inst'"; \
+ rm -f "$(DESTDIR)$(man5dir)/$$inst"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ $(mkdir_p) $(distdir)/$(srcdir)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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) all-local
+installdirs:
+ for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)"; 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)
+
+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-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local install-man
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man: install-man1 install-man5
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-local uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man5
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-local distclean distclean-generic distdir dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-man1 install-man5 install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic maintainer-clean-local mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am uninstall-local uninstall-man uninstall-man1 \
+ uninstall-man5
+
+all-local: menu.html/index.html menu.txt.gz menu.info.gz
+
+menu.html/index.html: menu.sgml
+ LANG=C debiandoc2html $<
+
+menu-one-file.html: menu.sgml
+ LANG=C debiandoc2html -1 -b menu-1-file $<
+ mv menu-1-file.html/index.html menu-one-file.html
+ rmdir menu-1-file.html
+
+menu-one-file: menu-one-file.html
+
+%.info: %.sgml %.direntry
+ LANG=C debiandoc2info -s ./$*.direntry $<
+
+%.txt: %.sgml
+ LANG=C debiandoc2text -O $< > $@
+
+%.gz: %
+ gzip --best --force --stdout $< > $@
+clean-local:
+ rm -f menu-one-file.html
+
+maintainer-clean-local:
+ rm -rf menu.html *.info* *.txt*
+
+install-default:
+ $(INSTALL) -d \
+ $(DESTDIR)$(pkgdatadir)/default
+ for i in $(top_srcdir)/default/*; do \
+ test -f $$i && $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdatadir)/default;\
+ done;
+
+install-data-local:
+ $(INSTALL) -d \
+ $(DESTDIR)$(pkgdocdir)/examples \
+ $(DESTDIR)$(pkgdocdir)/html \
+ $(DESTDIR)$(infodir)
+
+ for i in $(top_srcdir)/examples/*; do \
+ test -f $$i && $(INSTALL_DATA) $$i $(DESTDIR)$(pkgdocdir)/examples;\
+ done;
+
+ $(INSTALL_DATA) $(srcdir)/menu.html/* $(DESTDIR)$(pkgdocdir)/html
+ $(INSTALL_DATA) $(srcdir)/menu.txt.gz $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/menu.info.gz $(DESTDIR)$(infodir)
+ $(INSTALL_DATA) $(srcdir)/menu.sgml $(DESTDIR)$(pkgdocdir)
+
+ $(INSTALL_DATA) $(srcdir)/BUGS $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/README.translations $(DESTDIR)$(pkgdocdir)
+ $(INSTALL_DATA) $(srcdir)/../README $(DESTDIR)$(pkgdocdir)
+
+uninstall-default:
+ rm -rf $(DESTDIR)$(pkgdatadir)/default
+
+uninstall-local:
+ rm -rf $(DESTDIR)$(pkgdocdir)
+ rm -f $(DESTDIR)$(infodir)/menu.info.gz
+# 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/README.changes b/doc/README.changes
new file mode 100644
index 0000000..65581f4
--- /dev/null
+++ b/doc/README.changes
@@ -0,0 +1,64 @@
+Changes between pre 1.0 and 1.0:
+
+Basically, both update-menus and install-menu have been re-written
+from scratch.
+
+
+*************************************
+update-menus
+
+ *forks to background, waits for dpkg to finish (to get a _correct_
+ package listing). (This is now only done with dpkgs that don't support
+ triggers.)
+
+ *allows new menuentry format:
+ needs=text command=/usr/bin/vi section=Apps/Editors title=Vi \
+ longtitle="The editor that people complain even\
+ more about than the about weather, vi." \
+ id=vi sort=aa myfunkyvar=lichtbewolkt
+
+
+*************************************
+
+install-fvwmgen -> menu-method:
+
+ *Change of name (The old name wasn't very good anyway, and
+ it allows me to more easily change the format of the file).
+
+ *Format changed: ${title} is now written as either $title or
+ print($title) (the latter giving an error if $title is empty).
+ More about this in /usr/share/doc/menu/html.
+
+ *Long lines can be continued on next line with a "\".
+ (do make sure there are no spaces after the "\")
+
+ *in the menu-methods files, tabs, newlines, etc used to need
+ double \\, like "\\t, \\n". These is needed any more.
+ (now looks like "\t, \n").
+
+ *things like "startmenu=filename" don't work any more (nobody
+ knew this worked anyway).
+
+ *Lot's of new "functions", see README
+
+ *Slightly different interpretation of variables:
+
+ ${section} used to print the last part of the section name, now
+ it prints the full section in a submenu, or the full section
+ plus "/"$title in menuentries (or plus "/" $sort ":" $title
+ if $sort is defined).
+
+ ${fullsection} has been removed (section replaces this)
+
+ $subsection now prints what ${section} would have printed
+ with menu-0.11.
+
+ the id tag isn't needed any more. Now using $sort ":" $title to
+ determine if two menuentries are the same.
+
+ *in script: mainmenu= isn't accepted any more
+ (never used to work with "compat=gen").
+
+ *Now you can actually add icons etc to the submenu entries,
+ even to the root menus
+ needs="X11" section="Apps" title="Ap" hotkey=X icon="myiconfile"
diff --git a/doc/README.config-menus b/doc/README.config-menus
new file mode 100644
index 0000000..862b8ba
--- /dev/null
+++ b/doc/README.config-menus
@@ -0,0 +1,11 @@
+In this directory, the system administrator can install menufiles to
+override the menu files provided by Debian in /usr/lib/menu, /usr/share/menu
+and /usr/share/menu/default.
+
+The filename should be the name of the package that it is overriding,
+and may contain as many lines and menu entries as necessary.
+
+Please run 'update-menus' after changing or adding files.
+
+For more info, please read /usr/share/doc/menu/html.
+
diff --git a/doc/README.menu-methods b/doc/README.menu-methods
new file mode 100644
index 0000000..efced27
--- /dev/null
+++ b/doc/README.menu-methods
@@ -0,0 +1,10 @@
+In this directory the scripts files for the install programme
+of the various window managers are situated.
+
+update-menus runs all files in this directory, passing it all menuentries
+to install on stdin.
+
+The filenames in this directory must contain only letters/numbers or -_
+any other files (like the .bak, .dpkg-old, ...) are silently ignored.
+
+For more info, see /usr/share/doc/menu/html
diff --git a/doc/README.new-sections b/doc/README.new-sections
new file mode 100644
index 0000000..0f0d7a2
--- /dev/null
+++ b/doc/README.new-sections
@@ -0,0 +1,12 @@
+What I have in mind is something like
+
+section=Apps/Tools title=SomeClock es=Clocks/Digital/Simple
+
+section=Apps/Tools[/Clocks/Digital/Simple] title=SomeClock
+
+
+section=Apps/Tools title=SomeClock es=Clocks/Digital/Simple
+
+
+
+section=Apps[/hello] title=Tools
diff --git a/doc/README.package-menus b/doc/README.package-menus
new file mode 100644
index 0000000..9c78b5c
--- /dev/null
+++ b/doc/README.package-menus
@@ -0,0 +1,24 @@
+In this directory, each individual package should install its
+menu files. Although changing them in this directory to change
+the menus on your local system may work, the sysadmin (you?)
+is best advised to put the local menufiles in /etc/menu, as,
+otherwise your changes are deleted when you upgrade the corresponding
+packages. Users may override the system-wide defaults by putting
+their menuentry files in ~/.menu.
+
+
+For the package maintainer that wants to include menu files in his
+package:
+
+The files should have the name of the package that's installing it,
+and may contain as many lines (menu entries) as is necessary.
+
+For examples, please look in /usr/share/menu/default
+
+
+Also, in your postinst you should check for the availability of
+the update-menus command, and if available, execute it (no
+parameters needed).
+
+For more info, please read /usr/share/doc/menu/html
+
diff --git a/doc/README.pre1 b/doc/README.pre1
new file mode 100644
index 0000000..20c2e32
--- /dev/null
+++ b/doc/README.pre1
@@ -0,0 +1,428 @@
+This "package" is inspired by the install-fvwm2-menu from the debian fvwm2,
+but it tries to provide a somewhat more general interface for
+menu-building. With the update-menus command from this package,
+(and the /usr/lib/menu/$package files),
+no package needs to be modified for every X window manager again,
+and it provides a unified interface for both text- and X-oriented
+programmes.
+
+************************
+*It works like this:
+
+Each package includes a file in /usr/lib/menu/package-name. In this
+file, it will have one line per menu-entry, like this (from
+/usr/lib/menu/xpuzzles):
+ X11 Apps/Games/Puzzles xtriangle none "Xtriangle" /usr/games/xtriangles
+
+This describes the type of interface the package needs (X11),
+the menu section the menu entry should be in, an id, possibly
+an icon, the menu text, and the command that should be executed.
+
+Whenever root runs update-menus, it will check all new or
+changed menufiles in /etc/menu and /usr/lib/menu,
+and run the installation scripts display managers like fvwm2
+should provide in /etc/menu-methods on them.
+
+The menu package itself provides a set of default menu files,
+for people to get the idea, and to speed things up a bit
+(These files should be incorporated into the package).
+
+************************
+* (User-) Configuring the menu's
+
+A user can specify her/his own menu entries in the ~/.menu directory.
+the files in that directory should have names of installed packages, or
+"local.name", as update-menus assumes any "package" who's name starts
+with "local" is installed.
+
+A system admin should place system-wide menuentries in /etc/menu,
+(not in /usr/lib/menu/package, those will be overridden after an upgrade
+of package). Again, filenames must have a name of an installed package,
+or starting with "local".
+
+************************
+* Specifying "No-menu-entry"
+
+If a user wants to remove an entry from the system menu (in /etc/menu),
+then this will do the trick:
+ echo -n > ~/.menu/package
+The zero-size file will tell update-menus that the corresponding
+package should not have any menu-entries listed.
+
+************************
+* What should the each package do to use this:
+
+-Include a conffile file in /etc/menu/$package.
+ The name of the file should be $package, with $package the
+ package name of the binary package the menufile will be distributed
+ in. (in the case of single source packages that build many binary packages).
+ This file should contain, for each programme it likes to make
+ available in a menu:
+ text Math gnuplot none "Gnuplot" /usr/bin/gnuplot
+ ^ ^ ^ ^ ^ ^
+ | | | | | The binary to be executed
+ | | | | The menu-entry-name
+ | | | The pixmap in the menu entry
+ | | Some ID for this menu entry. .Please make this
+ | | ${package}/someid, where ${package} is the package name of the
+ | | package the menu file will be distributed in, as
+ | | we may require this later.
+ | The section in which the menu entry should appear
+ Type: X11 if this programme only runs on X11 displays
+ text if it only runs on text-oriented terminals;
+ (the window manager should spawn an
+ xterm or rxvt in this case)
+ vc if the program only runs at the Linux console (i.e.: svgalib)
+
+ A programme like gnuplot should NOT have an extra entry for
+ X11 like this:
+ X11 Apps/Math gnuplot none "Gnuplot" "xterm -e /usr/bin/gnuplot"
+ because it will then be next to impossible to configure the
+ window mangers to spawn rxvt instead.
+
+ If, on the other hand, a programme can both run like a real
+ X application, and on a terminal (like emacs), then two
+ entries should be listed (otherwise, emacs will also be run in
+ an xterm).
+
+-In your postinst and postrm script, add a line like:
+ if test -x /usr/bin/update-menus; then update-menus; fi
+
+-Do not make your package depend on the menu package.
+
+************************
+* The preferred layout of the menu (currently suggestion only):
+
+ Apps -- all normal apps
+ Editors -- editors (run it in xterm, if nothing else)
+ Net -- mail, news, web, irc, etc
+ Programming -- debuggers, etc
+ Shells -- Different shells, like bash, ksh, zsh, ...
+ Tools -- other tools: xclock, xmag, xman,
+ Viewers -- Picture viewers, gs, ...
+ Math -- Math apps like: gnuplot, octave, oleo,..
+ Graphics -- xpaint, xfig, xtiff,
+ Emulators -- Dosemu, ...
+ Sound --
+ System -- system administration and monitoring
+ Games -- games and recreations
+ Adventure -- walk around virtual space, zork, MOO's, etc
+ Arcade -- (any game where reflexes count)
+ Board -- Like: Gnuchess, pente, gnugo
+ Card -- solitaire, etc
+ Puzzles -- Stuff from xpuzzles, ...
+ Sports -- Games derived from "real world" sports
+ Strategy -- Build your world (Games like lincity, freeciv)
+ Tetris-like -- games involving falling blocks
+ Toys -- (oneko, xeyes, etc.)
+ Screen --
+ Lock -- xlock, etc.
+ Screen-saver --
+ Root-window -- things that fill the root window
+ Window-managers -- (change between fvwm, afterstep, etc)
+ Modules -- fvwm modules, etc.
+ XShells -- shells (like xterm, rxvt, ...)
+ (running the user's login shell in them).
+
+ This is basically what Joey Hess posted on debian-devel, with
+ Also, I moved the shells to the root, as I don't like to have to
+ go two levels deep for my shell -- but if others prefer that, I'll
+ happily revert this (and I moved xclock in tools, is that OK?)
+
+************************
+* What should each menu-manager (fvwm*, twm, pdmenu, ...) do?
+
+Provide a configfile-script in /etc/menu-methods that can read
+the menu-files. This script will be executed by update-menus
+with the to be installed menu-entries passed to the script via
+stdin.
+
+The scripts in /etc/menu-methods should be configfiles, if the user
+can tune the behaviour in the script (as is the case in the scripts
+provided in this package in /usr/share/doc/menu/examples/$wm).
+
+Run update-menus (if it exists) in the postinst, and remove the
+execute bit from the /etc/menu-methods in the postrm when called
+with remove.
+Example bash post{rm,inst} script:
+
+#postrm:
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/twm #or fvwm, ... whatever manager you're installing
+ case "$1" in
+ remove)
+ chmod a-x $inst
+ ;;
+ purge)
+ #remove the files that install-fvwmgenmenu creates:
+ rm /etc/X11/twm/{system.twmrc,menus.dat,menudefs.hook}
+ #maybe also rm $inst, if dpkg doesn't do that itself.
+ ;;
+ upgrade);;
+ *)
+ echo "postrm called with unknown argument \`$1'" >&2
+ exit 0
+ ;;
+ esac
+
+#postinst:
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/pdmenu #or fvwm, ... whatever manager you're installing
+ if [ -x /usr/bin/update-menus ] ; then
+ if [ -f $inst ]; then
+ chmod a+x $inst
+ update-menus;
+ fi
+ fi
+
+The menu package should not include any installer scripts for
+window managers (that's the job of the packages that install the
+window managers), but I do provide scripts for nearly all
+debian window managers in /usr/share/doc/menu/examples. See the readme
+on how to activate them. For an example, see the latest fvwm95 package
+(or olvwm).
+
+************************
+* Options to update-menus
+
+ -v verbose (generate a lot of output)
+ -d debug (loads of more output)
+ --show-time
+
+************************
+* What does update-menus do?
+
+when update-menu starts, it:
+ 1 sets a variable $dirs to
+ dirs="/etc/menu /usr/lib/menu /usr/lib/menu/default"
+ (and if a user runs runs it, it will add ~/.menu to the front
+ of that list)
+ 2 it reads the list of installed packages.
+ 3 for d in $dirs; do
+ - read files in $d
+ - check if corresponding package is installed, and, is listed
+ in the $d/.updated-menus file, checking the mod time in
+ $d/.updated-menus.
+ Depending on that information, either put the menufile $file in the
+ the install-menu-list, or the menuentry in the $remove-entries,
+ and do put the entries in the already-correctly-installed-list
+ 4 after going through all dirs, do
+ for method in `ls /etc/menu-methods`; do
+ $cat install-menu-list | method -f --stdin
+ done
+
+Ad step 3+4
+ - The $d/.updated-menus file lists not only the files in that directory
+ and it's mod-time (to check for changes), it also lists
+ the known menu-managers (i.e., the output of `ls /etc/menu-methods`)
+ at the time of the last installation. Based on this information,
+ steps 3+4 are changed a bit, to update/remove new/old menu-managers.
+Ad step 1+2+3+4
+ although I've used a sh-like syntax here, it's written in C++.
+
+************************
+* The /usr/sbin/install-fvwmgenmenu programme
+
+The files /etc/menu-methods/fvwm* are "executable" config files
+that begin with
+ #!/usr/sbin/install-fvwmgenmenu
+and thus start that programme, handing it the configuration file for the
+specific wm in argv[1]. This configuration consists of:
+ - the compatibility mode (used to be fvwm, 9wm, .. but now "gen" for all wm's)
+ - where the various files should be stored/read.
+ - what "types" are supported, and what wrapper files should
+ be used for each "type".
+See /usr/share/doc/menu/examples/ for some more comments.
+
+Options to install-fvwmgenmenu:
+ -v be verbose
+ -d Produce loads of debugging output
+ -f (always) force install (assume no packages are installed)
+ --install-files take the next arguments to be files woos menuentries
+ should be installed
+ --stdin (always) read menuentries from stdin.
+
+The -f and --stdin "options" exist because old versions used to
+have cache files and other complicated stuff. This didn't result
+in any speedups, and did complicate stuff. So we (Joey and I) decided
+to make -f and --stdin options that are always on (and can thus be
+ignored).
+
+Some window managers don't support the m4 or cpp
+preprocessing, and cannot read the menudefs.hook file
+from their system.*rc configfile. To still be able to use them,
+install-fvwmgenmenu will copy the file $path/$examplercfile to
+$path/$rcfile (with $path, $examplercfile and $rcfile defined
+in the install-fvwmgenmenu config file), and replace all
+occurrences of "install-menu-defs" with the $genmenu
+file it just generated. Although this approach looks quite
+clumsy, it does allow for one $path/$examplercfile on the system,
+(The m4/cpp approach puts a "include(/etc/X11/*/menudefs.hook)"
+in the system.*rc file, so users will never load their menudefs.hook
+file).
+To activate the file-copying in this way, simply define
+the $examplercfile and $rcfile variables in the install-fvwmgenmenu
+configuration file (/etc/menu-methods/fvwm*), and make sure
+there is a $path/$examplercfile ($path being either $rootprefix, or
+$userprefix)
+
+
+************************
+* "supported" section in the install-fvwmgenmenu config files.
+
+Each definition defines a display type that this window-manager supports.
+After the displaytype is the string that should be printed in the
+system."$wm"rc file for each menu entry that matches that display type.
+
+Install-fvwmgenmenu does the following variable expansions:
+ variable in conffile expands to in example below this is:
+ - - -
+ ${title} -> menutitle Xtriangle
+ ${section} -> lastpartofsection Puzzles
+ ${fullsection} -> full section Apps/Games/Puzzles
+ ${id} -> menuentry id xtriangle
+ ${icon} -> icon none
+ ${command} -> command /usr/games/xtriangles
+ ${type} -> type X11
+
+Example (see table above):
+ X11 Apps/Games/Puzzles xtriangle none "Xtriangle" /usr/games/xtriangles
+
+(where in the title, menu, ... are taken from the menuentry in the menufile).
+As a special exception, if no "${command}" occurs in the wrapper,
+" ${command}" is added at the end, so empty wrapper files will at least
+hand the command. A similar exception is made for "${title}" in the
+fvwm2 compat mode.
+
+Along the lines of ${var}, you can also use:
+
+ example example example purpose:
+${var} var "var"+'v' none | just expand var
+$d{var} var \"var\"+'v' none | escape Double quotes
+$s{var} var "var"+\'v\' none | escape Single quotes
+$b{var} var \"var\"+\'v\' none | escape Both single and double q
+$%{var} %var% %"var"% | for icons
+
+(In this table, the first line lists the value of ${var}, and the
+other lines list what $d{var}, ... would have produced).
+
+strings like \\n, \\t, ... for their ordinary will be substituted for
+their C expansions (But not \0xx).
+
+Note: the above only holds for "compat=gen". the other compat modes
+will be disabled in the future, and currently don't support everything
+that's described above
+
+************************
+* Other install-fvwmgenmenu config script items:
+*
+compat
+ Please make this "gen" only. (Old versions of install-fvwmgenmenu
+ used to take other compats, but "gen" is much more general).
+
+startmenu
+endmenu
+submenutitle
+ These define what to print for the beginning/end of a menu, and
+ how to the print a menuentry that pops up another menuentry.
+ They are substituted the same way as the "supported" stuff is.
+
+treewalk:
+ This string defines in what order to dump the $startmenu, $endmenu,
+ and $submenutitle (and it's children). Each char in the string
+ refers to :
+ c : dump children of menu.
+ m : dump this menu's $submenutitles
+ ( : dump $startmenu
+ ) : dump $endmenu
+ M : dump all $submenutitles of this menu and this menu's children.
+ The default is "c(m)". For olvwm, one needs: "(M)"
+
+database:
+ A cache file (old).
+
+genmenu:
+ The menufile to generate (usually something like system."$wm"rc).
+
+rcfile:
+ If the window manager doesn't support an "include filename" or
+ "read(filename)" statement in it's config file, you can rename
+ the wm's config file to system."$wm"rc-menu, and insert
+ a "install-menu-defs" line (without the quotes, or whitespace around
+ it, and "install-menu-defs" must be the only thing on the line)
+ in the system."$wm"rc-menu file. This will then get replaced
+ by the $genmenu file that was just created (see also $examplercfile).
+
+examplercfile:
+ if needed (see rcfile), this is the system.rc"$wm"-menu file.
+ In that case, make rcfile=system.rc"$wm".
+
+rootprefix:
+ The prefix to use when running as root (applies to $genmenu, $rcfile,
+ $examplercfile and other old cache files)
+
+userprefix:
+ see rootprefix, but when running as user.
+
+************************
+* Icons
+*
+
+Please, make sure the icons you specify are always available on the system.
+So, if you want to have an icon with your menuentry, the preferred method
+is to supply the icon with that package. Also, to prevent the distribution
+of icons files to turn too much into a mess, please put all icon
+files in /usr/X11R6/include/X11/{bitmap,pixmap}.
+
+If you, as a system admin, don't like the icons in the menu's, simply
+remove the $%{icon} from the files in /etc/menu-methods/$wm, and
+type "update-menus"
+
+
+If you want to specify an icon for a submenu (for example, the Editors
+submenu), just use the same syntax but leave the command empty:
+
+ X11 Apps menu/apps /usr/X11R6/include/X11/pixmap/icon.xpm "Editors"
+
+As there probably isn't one right package to include the submenu icons,
+I guess (as Joey suggested) the menu package is the only right place
+to have these menu's (Otherwise, problems arise when two packages
+supply different icons for the same submenu, and we can never be sure
+the icon files are available).
+
+
+************************
+* Taskbar/Titlebar (fvwm*)
+*
+
+The problem with the stuff in the taskbar is that all items are
+displayed all of the time. So, if 200 debian packages all were to
+register a button, the buttons would quickly fill the screen, making
+the exercise useless. The few applications that are considered important
+enough to be listed in the taskbar usually vary widely on each system,
+making it impossible to select a ``happy few'' apps that are allowed
+there on every debian system. If you want your fvwm2 to have a few
+buttons, you can install files for those packages in /etc/menu/$package,
+containing both the normal menu entries, and a line like
+ button Games/Puzzles xpuzzles/xmball path-to-pixmap.xpm "Xmball" /usr/games/xmball
+
+Then, do the following:
+cd /etc/menu-methods/
+cp fvwm2 fvwm2button
+vi fvwm2button
+#and remove all the "supported" entries, adding the one below. For the rest,
+leave everything the same except those listed below.
+
+supported
+ button="+ Style \"${title}\" TitleIcon ${icon} Exec ${command}\\n"
+endsupported
+startmenu: "AddToTitlebar \\n"
+endmenu: "\\n"
+submenutitle:""
+mainmenu:
+genmenu: "buttondefs.hook"
+
+
+
diff --git a/doc/README.translations b/doc/README.translations
new file mode 100644
index 0000000..5417af3
--- /dev/null
+++ b/doc/README.translations
@@ -0,0 +1,52 @@
+********************************************************
+*** ***
+*** Menu sections translations ***
+*** ***
+********************************************************
+
+Debian menu includes translations of menu sections names
+in various languages. The list is available in
+/etc/menu-methods/lang.h.
+
+A) Selecting the language:
+
+1) System-wide:
+The simplest way is to set up root locales and menu will be translated
+accordingly.
+
+Another solution is to add
+outputlanguage="xx"
+in /etc/menu-methods/menu.h
+where xx is you language code.
+
+2) User-wide:
+Just run update-menus under the locales of your choice.
+You can also copy the file
+/etc/menu-methods/<your favorite wm>
+to
+~/.menu-methods/
+and add
+outputlanguage="xx"
+where xx is you language code.
+
+3) KDE
+Make sure menu-xdg is installed and that root locales are not "C".
+Menu will be translated in all languages at once. The users just
+need to configure KDE to use their language and menus will follow.
+
+B) Problems:
+There are unfortunately lots of reasons why translations would fail:
+window-manager not supporting menu translations, not supporting your
+locale encoding or not supporting user menus.
+
+You can try to add
+outputencoding="LOCALE"
+at the start of /etc/menu-methods/<your favorite wm>
+and run update-menus under different locale encodings.
+
+C) Screenshots
+Some screenshots are available at
+<http://people.debian.org/~ballombe/menu-snapshot>.
+
+--
+Bill Allombert <ballombe@debian.org> Sun, 3 Oct 2004 19:23:53 +0200
diff --git a/doc/TODO b/doc/TODO
new file mode 100644
index 0000000..146cf05
--- /dev/null
+++ b/doc/TODO
@@ -0,0 +1,31 @@
+(Obsolete file by Joost)
+
+ TODO: Add a $source={Debian,System,User} tag (in update-menus),
+ andreas.
+
+ TODO: probably we need a translate() function too, to be able to do:
+ dir=translate(ifeq($Source,"User","Local User"))
+ etc.
+
+-----------------------
+buttonbars:
+-----------------------
+
+Something like a tag "buttonbarpriority=0--99" added to every
+menuentry, where buttonbarpriority=0 means that this entry is absolutely
+useless in the buttonbar, while buttonbarpriority=99 means that this
+menuentry really should be in the buttonbar on every debian computer
+(I'm assuming neither priority will be used in reality, if this ever
+is implemented).
+
+Then the file /etc/menu-methods/menu.h could have something like
+ buttonbarentries=8
+in it, suggesting that menu should create buttonbar entries for the
+8 highest priority buttonbar entries. (These numbers can then easily
+be overruled in user files in ~/.menu-methods/* or whatever).
+
+Thinking about this, this might actually be doable -- but I don't forsee
+any spare time comming up in my life soon, so it will take some time
+
+(note that the subject of buttonbars and menus has come up quite
+frequently on debian-devel).
diff --git a/doc/announce-2 b/doc/announce-2
new file mode 100644
index 0000000..c035750
--- /dev/null
+++ b/doc/announce-2
@@ -0,0 +1,116 @@
+Hi there,
+
+I've just released menu-2.0. It has many new features, one of
+wich is the optimization of the menu tree, using something I've
+called "hints". This is what I want to start discussion about
+with this email.
+
+********************
+First, why:
+
+On my system, there are only two entries in the
+/Apps/Editors submenu. But I'm sure that other systems have
+15 or more entries there. Both aren't optimal: on my system,
+the /Apps/Editors submenu could better be removed or merged
+with another menu; while on the other systems, /Apps/Editors
+should get other sub-entries. Because of the static-ness
+of the menu tree, it was never possible to attac this problem.
+Now, with "hints" it is.
+
+********************
+How it works:
+
+The hints actually work in a rather strange way: when
+hint_optimize=true (in the config file) then all $section
+elements (like "section=Apps/Editors", in the menuentry file)
+are added to the specified $hints variable (new variable in the
+menuentry file, could be "hints=Bulky,Expert,Serious" for Emacs).
+The order (/Apps/Editors or /Editors/Apps) of the resulting hints
+is completely ignored. Then, the
+hints for each menu entry are put in an array that is handed to
+the optimization routine, that will calculate a reasonable tree
+for those hints. That tree must comply with the following:
+
+
+When a user looks for a program "Program" with, say, hints
+"Good,Bulky,Heaven", then, while walking through the tree,
+it should at every node visited be clear for the user what
+submenu to select (or the menu should have "Program" directly
+in it). So, the toplevel menu may look like
+ Good
+ Hell
+ Microsoft
+because then a searcher for a menu entry with hints "Good,Bulky,Heaven"
+will know to select the submenu "Good". The toplevel menu may not look
+like
+ Good
+ Hell
+ Heaven
+as now it isn't clear whether to visit the Good or the Heaven submenu.
+
+That rule allows for many different trees, and the task of the
+optimization procedure is to select, in a finite amount of time, the
+tree that best matches the user's desire obout the optimimum number of
+menu entries.
+
+Menu is always free to discard hints, if they are not neccecary.
+
+Although this procedure ignores the real debian tree (so much
+discussed about), it does eventually come up that look surprisingly
+like just that tree.
+
+As soon as hints are specified for more menu entries, this procedure
+will allow menu to merge, say "Apps/Viewers" and "Apps/Sound", if we
+give both submenus the hint "MultiMedia". (Would be good on my system,
+as both contain less than 3 entries). If those submenus do get
+the "Multimedia" hint, then all `children' of those submenus (like
+GhostVieuw and RoseGarden) will automatically inherit those hints.
+
+********************
+What to discuss?
+
+Well, the hints have most effect if there is some overal uniformity
+in their use.
+
+For example, Emacs could be given a hints=Bulky, but if that is done,
+then all big editors should get a hints=Bulky, and not something like
+hints=Big, or hints=MS-like, as then menu will not any more be able
+to group all big editors in one menuentry.
+
+So, we should agree on some hints that can be used in most submenus
+(Big or Bulky probably could be used in many more submenus, as would
+X11, or Text), and there probably are some hints that can only be used
+in one submenu (like "Music" in the Apps/Sound section).
+
+The hints that apply to submenus (e.g., the hints=Multimedia for
+the submenus /Apps/Sound and /Apps/Viewers) can best be set in
+the menu package; the hints that apply to programs etc. have
+to be set in the menu entry files of those programs.
+
+Another problem is that English isn't my first language, and I
+don't really feel compatent enough to think of many english words
+that apply to several menu entries or submenus. I'm hoping other
+people are better at thinking of them:).
+
+
+********************
+Closing remarks:
+
+All of the tree optimization is optional, it will not happen by default
+(maybe I should however set hint_optimize=true in /etc/menu-methods/menu.h).
+
+These hints will provide for a (the only?) way out for those that dislike
+their overfull/underfull submenus.
+
+Yes, a variable menu tree _is_ also a disadvantage, if you want to tell
+a friend "Find netscape in Apps/Net/Netscape", and on your friend's
+system, it turns out that the section is "Apps/Web/Netscape". But I for
+one always tel people to "type `netscape' if you want to start netscape.
+Personally, I mostly see the tree as a means for people to find out what
+is installed on their system, and, once installed, a possibly nice
+`graphical' way to re-start it (on one's own system).
+
+********************
+Groetjes,
+joostje
+
diff --git a/doc/cmap.xpm b/doc/cmap.xpm
new file mode 100644
index 0000000..c752e8b
--- /dev/null
+++ b/doc/cmap.xpm
@@ -0,0 +1,32 @@
+/* XPM */
+static char * cmap3[] = {
+/* width height num_colors chars_per_pixel */
+" 46 2 24 1",
+" c #000000",
+". c #000000",
+"# c #ff0000",
+"a c #ff00ff",
+"b c #0000ff",
+"c c #00ffff",
+"d c #00ff00",
+"e c #ffff00",
+"f c #7f0000",
+"g c #7f007f",
+"h c #00007f",
+"i c #007f7f",
+"j c #007f00",
+"k c #7f7f00",
+"l c #191919",
+"m c #333333",
+"n c #4c4c4c",
+"o c #666667",
+"p c #7f7f7f",
+"q c #999999",
+"r c #b2b2b2",
+"s c #cccccc",
+"t c #e5e5e5",
+"u c #ffffff",
+/* pixels */
+"..##aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuu"
+"..##aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuu"
+};
diff --git a/doc/install-menu.1 b/doc/install-menu.1
new file mode 100644
index 0000000..1d122bd
--- /dev/null
+++ b/doc/install-menu.1
@@ -0,0 +1,43 @@
+.TH install-menu 1 "28 November 2005" "Debian Project" "Debian GNU/Linux manual"
+.SH NAME
+install-menu \- Process a menu method and generate the menu files for a window
+manager or a menu-aware application.
+.SH DESCRIPTION
+.B update-menus(1)
+computes the list of menu entries and passes it in turn to the menu methods in
+\fI/etc/menu-methods/\fP. The task of a menu methods is to generate menus
+for a specific window manager.
+.B install-menu
+provides a generic and customizable way to do that. The documentation of the
+.B install-menu
+definition language is available in the Debian Menu manual, a local copy being
+available in
+.BR /usr/share/doc/menu/html.
+.SH SYNOPSIS
+.B install-menu [-vh] [--remove] <menu-method>
+.PP
+Read menu entries from stdin in \fIupdate-menus --stdout\fP format and generate
+menu files using the specified menu-method.
+.PP
+Normally used in menu method scripts as \fI#! /usr/bin/install-menu\fP.
+.SH OPTIONS
+.IP "-h,--help"
+Show the help message and exit.
+.IP "--remove"
+Remove the menu files instead of generating them.
+.IP "-v,--verbose"
+Output messages about what the program is doing.
+.SH COPYING
+.B install-menu
+is distributed under the term of the GNU General Public License version 2, or
+(at your option) any later version.
+.SH AUTHOR
+Written by Joost Witteveen
+.RI <joostje@debian.org>.
+Now maintained by Bill Allombert
+.RI <ballombe@debian.org>.
+.SH "SEE ALSO"
+.BR update-menus (1),
+.BR menufile (5),
+.BR /usr/share/doc/menu/html
+
diff --git a/doc/menu.direntry b/doc/menu.direntry
new file mode 100755
index 0000000..0d9bd79
--- /dev/null
+++ b/doc/menu.direntry
@@ -0,0 +1,11 @@
+#!/bin/sh
+sedscript=`tempfile`
+cat <<'EOF' > $sedscript
+/@c %\*\*add dircategory and direntry here/a\
+@dircategory Information\
+@direntry\
+* Debian menu: \(menu\). The Debian menu system\
+@end direntry
+EOF
+sed -f $sedscript <$1 >$2
+rm $sedscript
diff --git a/doc/menu.html/ch1.html b/doc/menu.html/ch1.html
new file mode 100644
index 0000000..e060eb6
--- /dev/null
+++ b/doc/menu.html/ch1.html
@@ -0,0 +1,207 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - Introduction</title>
+
+<link href="index.html" rel="start">
+<link href="index.html" rel="prev">
+<link href="ch2.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch1"></a></p>
+<hr>
+
+<p>
+[ <a href="index.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ 1 ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch2.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 1 - Introduction
+</h1>
+
+<hr>
+
+<p>
+Before the advent of <code>update-menus</code>, when the sysadmin installed a
+package onto a Debian system, they would need to edit various window manager
+config files to make the new program show up on, for example,
+<code>fvwm</code>'s menus. The menus could easily become out of sync with what
+programs were actually available, with some menu items that didn't work, and
+other programs that lacked a menu entry. update-menus and Debian's menu
+package aim to solve this problem.
+</p>
+
+<p>
+<code>update-menus</code> automatically generates menus of installed programs
+for window managers and other menu programs. It should be run whenever a menu
+file or menu-method file is changed. <code>update-menus</code> will be ran
+automatically when Debian packages that contain menu files are installed or
+removed from the system. Users themselves can add/delete menu items, and
+should then run <code>update-menus</code> as that user, thus creating
+window-manager startup files that are used in preference to the systemwide
+files.
+</p>
+
+<p>
+One problem we ran into with menu-1.x (and before) was that the number of
+entries in any submenu vary wildly: on my system there are only two entries in
+<samp>/Applications/Editors</samp>, while I'm sure that other people have more
+like 20 entries there. Many people complained about the fullness of certain
+submenus, citing scientific studies or personal experience to explain why
+overfull or underfull submenus are a bad thing. To overcome this, menu-2.0 now
+can optimize the tree itself, possibly subdividing for example the
+<samp>/Applications/Editors</samp> tree in, say <samp>Editors/Beginner</samp>,
+<samp>Editors/Experienced</samp>, or whatever, if there are many entries in
+that submenu, or maybe even totally removing <samp>/Applications/Editors</samp>
+on systems where there are few editors installed. To be able to do this, menu
+follows the information supplied to it in the `hints' variables (see paragraph
+below, or the hints chapter).
+</p>
+
+<p>
+Each package that needs to add an entry to the menu tree, includes a menu file
+<code>/usr/share/menu/package-name</code>. In this file, it will have one line
+per menu entry, like this (copied from <code>/usr/share/menu/xbase</code>):
+</p>
+
+<pre>
+ ?package(xbase):command=&quot;/usr/bin/xedit&quot; needs=&quot;X11&quot; \
+ section=&quot;Applications/Editors&quot; title=&quot;Xedit&quot; \
+ hints=&quot;Beginner,Small&quot;
+</pre>
+
+<p>
+This describes the type of interface Xedit needs (X11), the menu section the
+menu entry should be in, the menu text, and the command that should be
+executed. Also, it tells menu that, if <samp>/Applications/Editors</samp> is
+overfull, it could put Xedit in a <samp>Applications/Editors/Beginner</samp> or
+<samp>Applications/Editors/Small</samp> subsection.
+</p>
+
+<p>
+Whenever <samp>root</samp> runs <code>update-menus</code>, it will check all
+menu files in <code>/etc/menu</code>, <code>/usr/lib/menu</code>,
+<code>/usr/share/menu</code>, and run the installation scripts that display
+managers like <code>fvwm2</code> should provide in
+<code>/etc/menu-methods</code>.
+</p>
+
+<p>
+The menu package itself provides a set of default menu files, for people to get
+the idea, and to speed up things a bit. (These files should be incorporated
+into the package.)
+</p>
+
+<p>
+Note, that substantial and incompatible changes took place with the menu-1.0
+release, while substantial features were added by the release of menu-2.0.
+This document describes menu-2.0. Menu-2.0 now doesn't accept the menu-methods
+written for menu-0.x, but for most window managers that still have those old
+menu-methods, I have put new style menu-methods in
+/usr/share/doc/menu/examples. Everything written for menu-1.0 will work with
+menu-2.0.
+</p>
+
+<p>
+Most notable changes between menu-0.x and menu-1.x are listed in the file
+README.changes in the menu package, the features added by menu-2.0 can be
+summarised here: hints, and the menu-2 compat mode. (where lines are finished
+by a ';' instead of a newline).
+</p>
+
+<hr>
+
+<p>
+[ <a href="index.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ 1 ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch2.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch2.html b/doc/menu.html/ch2.html
new file mode 100644
index 0000000..558e9b4
--- /dev/null
+++ b/doc/menu.html/ch2.html
@@ -0,0 +1,192 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - Menu from the viewpoint of a user</title>
+
+<link href="index.html" rel="start">
+<link href="ch1.html" rel="prev">
+<link href="ch3.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch2"></a></p>
+<hr>
+
+<p>
+[ <a href="ch1.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ 2 ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch3.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 2 - Menu from the viewpoint of a user
+</h1>
+
+<hr>
+
+<hr>
+
+<h2><a name="s2.1"></a>2.1 How/when do the window manager startup files get created?</h2>
+
+<p>
+Basically, users don't need to know any of how and when the startup files are
+created, but they might be interested to know anyway.
+</p>
+
+<p>
+When a package that wants to add something to the menu tree gets installed, it
+will run <code>update-menus</code> in its <code>postinst</code> script.
+Update-menus then reads in all menu files in <code>/etc/menu/</code>,
+<code>/usr/lib/menu</code>, <code>/usr/share/menu</code> and
+<code>/usr/share/menu/default</code>, and stores the menu entries of all
+installed packages in memory. Once that has been done, it will run the
+menu-methods in <code>/etc/menu-methods/*</code>, and pipe the information
+about the menu entries to the menu-methods on stdout, so that the menu-methods
+can read this. Each window-manager or other program that wants to have the
+Debian menu tree, will supply a menu-method script in
+<code>/etc/menu-methods/</code>. This menu-method then knows how to generate
+the startup-file for that window manager. To facilitate this task for the
+window-manager maintainers, menu provides a <code>install-menu</code> program.
+This program can generate the startupfiles for just about every window manager.
+</p>
+
+<hr>
+
+<h2><a name="s2.2"></a>2.2 Tuning of the generated window manager startup files</h2>
+
+<p>
+In principle this is a very window-manager specific business. But for all
+window managers (and others) applies:
+</p>
+
+<p>
+The file to attack is the menu-method in <code>/etc/menu-methods/$wm</code>,
+with <samp>$wm</samp> the name of your window manager. However, if this
+menu-method <samp>!include</samp>-s the <code>menu.h</code> file (as it
+should), you can also edit that file, to make your changes work for every
+installed window manager.
+</p>
+
+<p>
+If the menu-method file of your window manager does <samp>!include</samp> the
+<code>menu.h</code> file, and makes proper use of the definitions in there,
+then you can look at the comments in that <code>menu.h</code> file to see how
+you can make minor adjustments to the look of your menus in your window
+manager.
+</p>
+
+<p>
+To generally change the menu tree, see the next section.
+</p>
+
+<hr>
+
+<h2><a name="s2.3"></a>2.3 Optimization of menu tree: hints</h2>
+
+<p>
+If <samp>hint_optimize=true</samp> has been set in a menu-method script
+(actually, that definition should appear in the <samp>!include</samp>-ed
+<samp>menu.h</samp> file), then install-menu will try to alter the menu tree,
+to make every submenu have about the optimum number of menu entries (as
+specified by <samp>hints_nentry=...</samp>). It will do that by removing
+under-full submenus (only if the `parent' of that submenu isn't itself already
+overfull), and by possibly creating new submenus, using hints. Note, however,
+that the optimization of the tree takes in principle exponential time, so menu
+speeds up the process, at the expense of occasionally not finding the best
+tree. So, the tree you are presented with may not be optimal. For tuning
+variables, see the hint_* variables in the last chapter.
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch1.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ 2 ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch3.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch3.html b/doc/menu.html/ch3.html
new file mode 100644
index 0000000..673b251
--- /dev/null
+++ b/doc/menu.html/ch3.html
@@ -0,0 +1,1249 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - The menu file</title>
+
+<link href="index.html" rel="start">
+<link href="ch2.html" rel="prev">
+<link href="ch4.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch3"></a></p>
+<hr>
+
+<p>
+[ <a href="ch2.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ 3 ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch4.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 3 - The menu file
+</h1>
+
+<hr>
+
+<hr>
+
+<h2><a name="s3.1"></a>3.1 Location</h2>
+
+<p>
+Packages-provided menu files should be in <code>/usr/share/menu/</code>, unless
+the menu files are actually executable binaries, in which case they go in
+<code>/usr/lib/menu/</code>. System-local menu files should be in
+<code>/etc/menu/</code>. User-specific menu files should be in
+<code>~/.menu/</code>
+</p>
+
+<hr>
+
+<h2><a name="s3.2"></a>3.2 Syntax</h2>
+
+<p>
+The format is:
+</p>
+
+<pre>
+ ?package(package[,package2,...]): \
+ field1=&quot;value1&quot;\
+ field2=&quot;value2&quot;\
+</pre>
+
+<p>
+Here is an example to describe the syntax of such a file:
+</p>
+
+<pre>
+ ?package(gnumeric):\ specifies what packages need to be installed
+ multiple requirements should be separated by
+ comma
+ needs=&quot;X11&quot;\ what kind of environment this command expects
+ section=&quot;Applications/Office&quot;\ in what section this menu entry should be
+ title=&quot;Gnumeric&quot;\ the title of the menu entry
+ command=&quot;gnumeric&quot; \ the command to run
+ hints=&quot;Gnome,Spreadsheets&quot; \ some hints about menu placement.
+ icon=&quot;/usr/share/pixmaps/gnumeric.xpm&quot; the path to the icon to use.
+</pre>
+
+<p>
+A number sign (&quot;#&quot;) can be used to include comments. An entry must
+be terminated by a newline; however you can use a backslash to escape a
+newline.
+</p>
+
+<p>
+Values must be quoted with &quot;, and meta-characters (&quot;, backslash,
+newline) must be escaped with a backslash.
+</p>
+
+<p>
+You can include several entries in the same file.
+</p>
+
+<p>
+The file must be encoded in 7-bit ASCII. This is necessary to accomodate
+window managers that do not support 8-bit encodings. However the translations
+are not limited in encoding.
+</p>
+
+<p>
+<samp>?package(...)</samp> contains a comma-separated list of packages that
+need to be installed for the menu entry to be displayed. That should include
+the package containing the menu file and any packages necessary to run the
+command not depended on by the package nor essential. Users can use
+pseudo-package names starting with &quot;<samp>local.</samp>&quot; which are
+assumed to be always installed.
+</p>
+
+<p>
+The fields <samp>needs</samp>, <samp>section</samp>, <samp>title</samp> and
+<samp>command</samp> are mandatory. Other fields are optional. Custom fields
+are supported, so you can add new fields for you own purpose. If a field is
+specified multiple times in a menu entry, the last instance will be used.
+</p>
+
+<hr>
+
+<h2><a name="s3.3"></a>3.3 The <samp>title</samp> field</h2>
+
+<p>
+The <samp>title</samp> must follow the following requirements:
+</p>
+<ol type="1" start="1" >
+<li>
+<p>
+It must be short. There is an optional <samp>longtitle</samp> field for users
+that want longer titles.
+</p>
+</li>
+</ol>
+<ol type="1" start="2" >
+<li>
+<p>
+It must be properly capitalized. Use <em>Emacs</em> and not <em>emacs</em>.
+</p>
+</li>
+</ol>
+<ol type="1" start="3" >
+<li>
+<p>
+It must be unique. Two entries must not have the same title.
+</p>
+</li>
+</ol>
+
+<hr>
+
+<h2><a name="s3.4"></a>3.4 The <samp>needs</samp> field</h2>
+
+<p>
+The following <samp>needs</samp> are documented for use in the Debian menu.
+</p>
+<ol type="1" start="1" >
+<li>
+<p>
+<samp>X11</samp>: if this program runs under X11.
+</p>
+</li>
+</ol>
+<ol type="1" start="2" >
+<li>
+<p>
+<samp>text</samp>: if it runs under a terminal. X11 window managers will spawn
+an X terminal emulator.
+</p>
+</li>
+</ol>
+<ol type="1" start="3" >
+<li>
+<p>
+<samp>vc</samp>: if it runs under a linux virtual console but not under a X
+terminal emulator.
+</p>
+</li>
+</ol>
+<ol type="1" start="4" >
+<li>
+<p>
+<samp>wm</samp>: if it is a X11 window manager. The current window manager
+will exec(2) this program to avoid &quot;Another window manager is
+running&quot; errors.
+</p>
+</li>
+</ol>
+
+<p>
+A menu manager can use a special <samp>needs</samp> value reflecting the menu
+manager name for menu entries that must only be displayed in this menu manager.
+Examples include <samp>fvwm</samp> modules, <samp>dwww</samp> menu entries.
+</p>
+
+<p>
+A program like gnuplot which can be run on X11 as well as on a text terminal
+should <em>not</em> have an extra entry with <samp>needs=X11</samp> with an
+hard-coded call to an X terminal emulator, because this would defeat the
+configuration mechanism of menu that allow to choose which window manager is
+called.
+</p>
+
+<p>
+On the other hand, if a program (like <code>emacs</code>) can be run as real X
+application as well as in a terminal, two entries should be listed, otherwise
+the program will always be run in an <code>xterm</code> (or <code>rxvt</code>).
+However, two entries are not allowed to have the same title. The title must be
+unique.
+</p>
+
+<hr>
+
+<h2><a name="s3.5"></a>3.5 The <samp>section</samp> field</h2>
+
+<p>
+The <samp>section</samp> field holds a slash-separated list of hierarchical
+sections components.
+</p>
+
+<p>
+The <em>authoritative list of Debian's menu structure</em> is maintained in the
+Debian Menu sub-policy document which is part of the Debian Policy package.
+The current menu structure was drafted in 2006 by Linas Zvirblis with input
+from the debian-devel mailing list.
+</p>
+
+<p>
+The menu structure below is included only for convenience and is not
+authoritative. If it disagrees with the structure in the Debian Menu
+sub-policy, please send a wishlist bug to the <samp>menu</samp> package.
+</p>
+
+<p>
+Packages must be placed in leaf sections. Please do <em>not</em> put your
+packages into any other sections.
+</p>
+<dl>
+<dt>Applications</dt>
+<dd>
+<p>
+Normal applications
+</p>
+<dl>
+<dt>Accessibility</dt>
+<dd>
+<p>
+Tools to aid people with disabilities or for machines lacking usual input
+devices.
+</p>
+
+<p>
+Examples: gok, yasr, dasher.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Amateur Radio</dt>
+<dd>
+<p>
+Anything relating to HAM radio.
+</p>
+
+<p>
+Examples: baken, hamsoft, twlog
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Data Management</dt>
+<dd>
+<p>
+Interactive database programs, collection managers, address books, bibliography
+tools, etc.
+</p>
+
+<p>
+gaby, alexandria, mdbtools
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Editors</dt>
+<dd>
+<p>
+Editors, other than office word processors, for text-based information.
+</p>
+
+<p>
+Examples: ksubtile, nano, hexedit
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Education</dt>
+<dd>
+<p>
+Educational and training softwares.
+</p>
+
+<p>
+Examples: gtypist, gcompris, quiz
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Emulators</dt>
+<dd>
+<p>
+Software that allows you to run non-native software or more than one OS at a
+time.
+</p>
+
+<p>
+Examples: wine, dosemu, qemu
+</p>
+</dd>
+</dl>
+<dl>
+<dt>File Management</dt>
+<dd>
+<p>
+Tools for file management, archiving, searching, CD/DVD burning, backup, etc.
+</p>
+
+<p>
+Examples: file-roller, mc, baobab
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Graphics</dt>
+<dd>
+<p>
+2D and 3D graphics manipulation software.
+</p>
+
+<p>
+Examples: gimp, inkscape, imagemagick
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Mobile Devices</dt>
+<dd>
+<p>
+Software that allows you to interface with mobile devices (phones, PDAs, etc.).
+</p>
+
+<p>
+Examples: kandy, gnokii, gnome-pilot
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Network</dt>
+<dd>
+<p>
+Network related software. This is a three-level section, do not put entries
+directly here.
+</p>
+<dl>
+<dt>Communication</dt>
+<dd>
+<p>
+Mail, USENET news, chat, instant messaging, IP telephony, video conferencing
+software, etc.
+</p>
+
+<p>
+Examples: xchat, gaim, mutt
+</p>
+</dd>
+</dl>
+<dl>
+<dt>File Transfer</dt>
+<dd>
+<p>
+File transfer software such as download managers, FTP clients, P2P clients,
+etc.
+</p>
+
+<p>
+Examples: amule, gftp, d4x
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Monitoring</dt>
+<dd>
+<p>
+Network monitoring software
+</p>
+
+<p>
+Examples: gip, ettercap, iptstate
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Web Browsing</dt>
+<dd>
+<p>
+Web browsers, tools for offline browsing, etc.
+</p>
+
+<p>
+Examples: elinks, epiphany-browser, webhttrack
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Web News</dt>
+<dd>
+<p>
+Web feed (RSS, Atom, etc.) and podcast aggregators.
+</p>
+
+<p>
+Examples: akregator, kitty, liferea
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Office</dt>
+<dd>
+<p>
+Office suites, word processors, spreadsheets, CRM, ERP, financial sofware, etc.
+</p>
+
+<p>
+Examples: openoffice.org, tinyerp-client, gnucash
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Programming</dt>
+<dd>
+<p>
+IDEs, debuggers, etc.
+</p>
+
+<p>
+Examples: anjuta, gdb, eclipse
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Project Management</dt>
+<dd>
+<p>
+Timetable managers, group task trackers, bug tracking software, etc.
+</p>
+
+<p>
+Examples: planner, bugzilla, gnotime
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Science</dt>
+<dd>
+<p>
+Scientific and engineering-related software.
+</p>
+<dl>
+<dt>Astronomy</dt>
+<dd>
+<p>
+Astronomy-related software.
+</p>
+
+<p>
+Examples: celestia, spacechart, stellarium
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Biology</dt>
+<dd>
+<p>
+Biology-related software.
+</p>
+
+<p>
+Examples: arb, ncbi-tools-x11, seaview
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Chemistry</dt>
+<dd>
+<p>
+Chemistry-related software.
+</p>
+
+<p>
+Examples: chemtool, kalzium, xdrawchem
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Data Analysis</dt>
+<dd>
+<p>
+Software designed for processing, extracting, and presenting generic scientific
+data.
+</p>
+
+<p>
+Examples: fityk, ygraph, mn-fit
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Electronics</dt>
+<dd>
+<p>
+Circuit design tools, simulators and assemblers for microprocessors, etc
+</p>
+
+<p>
+Examples: geda, gnucap, tkgate
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Engineering</dt>
+<dd>
+<p>
+CAD, UML tools, diagram-drawing and other engineering-related software.
+</p>
+
+<p>
+Examples: tcm, dia, qcad
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Geoscience</dt>
+<dd>
+<p>
+Geoscience-related software.
+</p>
+
+<p>
+Examples: earth3d, qgis, therion
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Mathematics</dt>
+<dd>
+<p>
+Mathematics-related software.
+</p>
+
+<p>
+Examples: gcalctool, snappea, xeukleides
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Medicine</dt>
+<dd>
+<p>
+Medicine-related software.
+</p>
+
+<p>
+Examples: mssstest, gnumed-client, xmedcon
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Physics</dt>
+<dd>
+<p>
+Physics-related software.
+</p>
+
+<p>
+Examples: kxterm, ifrit, paw
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Social</dt>
+<dd>
+<p>
+Social sciences-related software.
+</p>
+
+<p>
+Examples: gnomesword, hanzim, bibletime
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Shells</dt>
+<dd>
+<p>
+Various shells to be used inside a terminal emulator.
+</p>
+
+<p>
+Examples: bash, ksh, zsh
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Sound</dt>
+<dd>
+<p>
+Sound players, editors, and rippers/recorders.
+</p>
+
+<p>
+Examples: beep-media-player, grip, audacity
+</p>
+</dd>
+</dl>
+<dl>
+<dt>System</dt>
+<dd>
+<p>
+System related software.
+</p>
+<dl>
+<dt>Administration</dt>
+<dd>
+<p>
+Administrative and system configuration utilities, also tools for personal user
+settings.
+</p>
+
+<p>
+Examples: gnome-control-center, configure-debian, gksu
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Hardware</dt>
+<dd>
+<p>
+Tools for manipulating specific hardware, especially non-standard laptop
+hardware.
+</p>
+
+<p>
+Examples: toshutils, nvclock-gtk, nvtv
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Language Environment</dt>
+<dd>
+<p>
+This section is reserved for language-env as a special case.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Monitoring</dt>
+<dd>
+<p>
+System information and monitoring tools, log viewers, etc.
+</p>
+
+<p>
+Examples: top, hal-device-manager, gtkdiskfree
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Package Management</dt>
+<dd>
+<p>
+Package managers and related tools.
+</p>
+
+<p>
+Examples: aptitude, deborphan, smartpm
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Security</dt>
+<dd>
+<p>
+Security, cryptography and privacy related software, antiviruses, tools to
+track and report bugs, etc.
+</p>
+
+<p>
+Examples: gpgkeys, bastille, avscan
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Terminal Emulators</dt>
+<dd>
+<p>
+Graphical terminal emulators.
+</p>
+
+<p>
+Examples: xterm, gnome-terminal, rxvt
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Text</dt>
+<dd>
+<p>
+Text oriented tools like dictionaries, OCR, translation, text analysis
+software, etc.
+</p>
+
+<p>
+Examples: kdrill, stardict, turkey
+</p>
+</dd>
+</dl>
+<dl>
+<dt>TV and Radio</dt>
+<dd>
+<p>
+TV-in, TV-out, FM radio, teletext browsers, etc.
+</p>
+
+<p>
+Examples: gradio, gatos, alevt
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Viewers</dt>
+<dd>
+<p>
+Software for viewing images, documents and other (non-video) media.
+</p>
+
+<p>
+Examples: gqview, evince, gthumb
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Video</dt>
+<dd>
+<p>
+Video players, editors, and rippers/recorders.
+</p>
+
+<p>
+Examples: istanbul, totem, kino
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Web Development</dt>
+<dd>
+<p>
+Software for web site editing, web programming, and site administration.
+</p>
+
+<p>
+Examples: bluefish, screem, gphpedit
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Games</dt>
+<dd>
+<p>
+Games and recreations
+</p>
+<dl>
+<dt>Action</dt>
+<dd>
+<p>
+Games that involve a lot of action and require fast reflexes.
+</p>
+
+<p>
+Examples: xsoldier, supertux, xmoto
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Adventure</dt>
+<dd>
+<p>
+Role playing and adventure games, interactive movies and stories, etc.
+</p>
+
+<p>
+Examples: beneath-a-steel-sky, egoboo, kq
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Blocks</dt>
+<dd>
+<p>
+Tetris-like games involving falling blocks.
+</p>
+
+<p>
+Examples: crack-attack, frozen-bubble, netris
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Board</dt>
+<dd>
+<p>
+Games played on a board.
+</p>
+
+<p>
+Examples: phalanx, xshogi, xboard
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Card</dt>
+<dd>
+<p>
+Games involving a deck of cards.
+</p>
+
+<p>
+Examples: pysol, ace-of-penguins, xpat2
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Puzzles</dt>
+<dd>
+<p>
+Tests of ingenuity and logic.
+</p>
+
+<p>
+Examples: xmpuzzles, sgt-puzzles, enigma
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Simulation</dt>
+<dd>
+<p>
+Simulations of the real world in all detail and complexity.
+</p>
+
+<p>
+Examples: flightgear, torcs
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Strategy</dt>
+<dd>
+<p>
+Games involving long-term strategic thinking.
+</p>
+
+<p>
+Examples: wesnoth, widelands, netpanzer
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Tools</dt>
+<dd>
+<p>
+Server browsers, configurators, editors, and other game-related tools that are
+not games themselves.
+</p>
+
+<p>
+Examples: xqf, crystalspace
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Toys</dt>
+<dd>
+<p>
+Amusements, eye-candy, entertaining demos, screen hacks (screensavers), etc.
+</p>
+
+<p>
+Examples: xdesktopwaves, xphoon, xpenguins
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Help</dt>
+<dd>
+<p>
+programs that provide user documentation
+</p>
+
+<p>
+Examples: debian-reference, apt-howto, dhelp
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Screen</dt>
+<dd>
+<p>
+Programs that affect the whole screen.
+</p>
+<dl>
+<dt>Saving</dt>
+<dd>
+<p>
+Tools for blanking the screen. Entries of screen hacks and configuration GUIs
+should go to other appropriate sections.
+</p>
+
+<p>
+Examples: xscreensaver, xlockmore
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Locking</dt>
+<dd>
+<p>
+Tools for locking the screen.
+</p>
+
+<p>
+Examples: xscreensaver, xlockmore
+</p>
+</dd>
+</dl>
+</dd>
+</dl>
+<dl>
+<dt>Window Managers</dt>
+<dd>
+<p>
+X window managers.
+</p>
+
+<p>
+Examples: fluxbox, metacity, waimea
+</p>
+</dd>
+</dl>
+<dl>
+<dt>FVWM Modules</dt>
+<dd>
+<p>
+FVWM-based window manager modules. As only modules related to the running
+window-manager are displayed, do not create subsections for specific
+window-managers.
+</p>
+
+<p>
+Examples: fvwm, fvwm-gnome, fvwm95
+</p>
+</dd>
+</dl>
+<dl>
+<dt>Window Maker</dt>
+<dd>
+<p>
+This section is reserved for wmaker as a special case.
+</p>
+
+<p>
+All wmaker specific entries must go here.
+</p>
+</dd>
+</dl>
+
+<p>
+Users wanting to access some menu entries quickly can also put them in the root
+menu. This is done by using <em>section=&quot;/&quot;</em>. Package-provided
+menu entries must never use this feature.
+</p>
+
+<hr>
+
+<h2><a name="s3.6"></a>3.6 The <samp>command</samp> field</h2>
+
+<p>
+The command field holds the command that should be executed when the menu entry
+is selected. Commands will be executed with <code>sh -c</code> using
+</p>
+
+<pre>
+ execl(&quot;/bin/sh&quot;,&quot;sh&quot;,&quot;-c&quot;,command)
+</pre>
+
+<p>
+or the equivalent.
+</p>
+
+<hr>
+
+<h2><a name="s3.7"></a>3.7 The <samp>icon</samp> field</h2>
+
+<p>
+Please make sure the icons you specify are always available on the system. So,
+if you want to have an icon with your menu entry, the preferred method is to
+supply the icon with that package. Icons should generally be installed in the
+directory <code>/usr/share/pixmaps</code>.
+</p>
+
+<p>
+Debian package maintainers should ensure that any icons they include for use in
+the Debian menus conform to the following points:
+</p>
+<ol type="1" start="1" >
+<li>
+<p>
+The icons should be in xpm format.
+</p>
+</li>
+</ol>
+<ol type="1" start="2" >
+<li>
+<p>
+The icons may not be larger than 32x32 pixels, although smaller sizes are ok.
+</p>
+</li>
+</ol>
+<ol type="1" start="3" >
+<li>
+<p>
+The background area of the icon should be transparent, if possible.
+</p>
+</li>
+</ol>
+
+<p>
+You can provide both 16x16 and 32x32 pixels icons using the variables icon16x16
+and icon32x32 so that the user can configure menu to use one or the other.
+</p>
+
+<p>
+If you, as a system administrator, don't like the icons in the menus, simply
+change the <samp>icon()</samp> function from the file
+<code>/etc/menu-methods/menu.h</code>, and run <code>update-menus</code>.
+</p>
+
+<hr>
+
+<h2><a name="s3.8"></a>3.8 The <samp>hints</samp> field</h2>
+
+<p>
+Hints are used to help menu structure generated menus in a more optimal way.
+For example:
+</p>
+
+<pre>
+ ?package(emacs20):\
+ needs=&quot;x11&quot;\
+ hints=&quot;Big,Expert,Featureful&quot; \
+ section=&quot;Applications/Editors&quot;\
+ title=&quot;Emacs 20&quot;\
+ command=&quot;/usr/bin/emacs20&quot;\
+ icon=/usr/share/emacs/20.3/etc/emacs.xbm
+</pre>
+
+<p>
+The above hints will tell <samp>menu</samp> to consider grouping
+<samp>emacs</samp> together with other editors that are marked similar. For
+example, if <samp>vi</samp> on your system has a hints=&quot;Small,Expert&quot;
+definition, and there are too many entries in the
+<samp>/Applications/Editors</samp> menu entry, then menu will consider creating
+a <samp>/Applications/Editors/Expert</samp> submenu, and put both
+<samp>vi</samp> and <samp>emacs</samp> in it. (Of course, only if you have
+<samp>hint_optimize=true</samp> in your <code>/etc/menu-methods/menu.h</code>
+file).
+</p>
+
+<hr>
+
+<h2><a name="s3.9"></a>3.9 Entries for menu sections.</h2>
+
+<p>
+It is possible to add entries for menu sections, but it is not mandatory since
+section entries are created automatically. However, this allows to specify
+fields for sections like <samp>icon</samp> and <samp>sort</samp>. The syntax
+for menu sections entries is the same as for regular entries, the
+<samp>section</samp> field holding the name of the parent section. For example
+</p>
+
+<pre>
+ ?package(local.games): needs=&quot;text&quot; title=&quot;Games&quot; section=&quot;/&quot; sort=&quot;001&quot;
+</pre>
+
+<p>
+will sort <samp>Games</samp> first.
+</p>
+
+<hr>
+
+<h2><a name="s3.10"></a>3.10 Fvwm's task and title bars</h2>
+
+<p>
+The problem with the stuff in the task bar is that all items are displayed all
+of the time. So, if 1500 Debian packages all were to register a button, the
+buttons would quickly fill the screen, making the exercise useless. The few
+applications that are considered important enough to be listed in the task bar
+usually vary widely on each system, making it impossible to select a ``happy
+few'' apps that are allowed there on every Debian system. If you (as a local
+system administrator) want your <code>fvwm2</code> to have a few buttons, you
+can install files for those packages in <samp>/menu/$package</samp>, containing
+a menu entry like this:
+</p>
+
+<pre>
+ ?Package(xmball):needs=button\
+ section=Games/Puzzles\
+ icon=path-to-pixmap.xpm\
+ title=&quot;Xmball&quot;\
+ command=/usr/games/xmball
+</pre>
+
+<p>
+Then, do the following:
+</p>
+
+<pre>
+ cd /etc/menu-methods/
+ cp fvwm2 fvwm2button
+ vi fvwm2button
+</pre>
+
+<p>
+and remove all the &quot;supported&quot; entries, adding the one below. For
+the rest, leave everything the same except those listed below.
+</p>
+
+<pre>
+ supported
+ button=&quot;+ Style \&quot;&quot; $title &quot;\&quot; TitleIcon&quot; $icon &quot; Exec &quot; $command &quot;\n&quot;
+ endsupported
+ startmenu: &quot;AddToTitlebar \n&quot;
+ endmenu: &quot;\n&quot;
+ submenutitle:&quot;&quot;
+ mainmenu:
+ genmenu: &quot;buttondefs.hook&quot;
+</pre>
+
+<p>
+(Of course regular users (not system administrators) can also specify
+`buttonfiles' in their ~/.menu/ directory).
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch2.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ 3 ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch4.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch4.html b/doc/menu.html/ch4.html
new file mode 100644
index 0000000..d793f51
--- /dev/null
+++ b/doc/menu.html/ch4.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - What packages with applications should do</title>
+
+<link href="index.html" rel="start">
+<link href="ch3.html" rel="prev">
+<link href="ch5.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch4"></a></p>
+<hr>
+
+<p>
+[ <a href="ch3.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ 4 ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch5.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 4 - What packages with applications should do
+</h1>
+
+<hr>
+
+<h2><a name="s4.1"></a>4.1 Providing a menu file</h2>
+
+<p>
+A package should provide a menu file
+<code>/usr/share/menu/&lt;package-name&gt;</code> that contains information
+about each program it likes to make available in the menus.
+</p>
+
+<hr>
+
+<h2><a name="s4.2"></a>4.2 Adding a hook for dpkg in your packages</h2>
+
+<p>
+The <samp>postinst</samp> script and the <code>postrm</code> script of the
+package should include the line
+</p>
+
+<pre>
+ if test -x /usr/bin/update-menus; then update-menus; fi
+</pre>
+
+<p>
+If you are using <code>debhelper</code>, the program
+<code>dh_installmenu</code> can do it for you.
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch3.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ 4 ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch5.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch5.html b/doc/menu.html/ch5.html
new file mode 100644
index 0000000..78df396
--- /dev/null
+++ b/doc/menu.html/ch5.html
@@ -0,0 +1,226 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - What packages with menu managers should do</title>
+
+<link href="index.html" rel="start">
+<link href="ch4.html" rel="prev">
+<link href="ch6.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch5"></a></p>
+<hr>
+
+<p>
+[ <a href="ch4.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ 5 ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch6.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 5 - What packages with menu managers should do
+</h1>
+
+<hr>
+
+<p>
+Each package containing a <em>menu manager</em> (i.e., a program that can
+display a menu) should provide a script or program in
+<code>/etc/menu-methods/</code> that can read the menu files. This script will
+be executed by <code>update-menus</code>, which will feed the menu entries to
+be installed to your script via standard input (stdin).
+</p>
+
+<p>
+The scripts in <code>/etc/menu-methods/</code> should be configuration files,
+so the user can tune the behaviour of the script, and they must always include
+the <code>/etc/menu-methods/menu.h</code> configuration file at the beginning
+with the command <samp>!include menu.h</samp> For the same reason, scripts in
+<code>/etc/menu-methods/</code> are requested to use the following configurable
+functions: <samp>title()</samp> for the title (in place of
+<samp>$title</samp>), <samp>icon()</samp> for the icon (in place of
+<samp>$icon</samp>), <samp>term()</samp> for running <samp>text</samp> command
+under <samp>X11</samp>. <samp>sections_translations()</samp> for the list of
+translations of sections name available. This later one is only defined if you
+<samp>!include lang.h</samp>
+</p>
+
+<p>
+Good examples for these scripts for nearly all Debian window managers are
+included in the <samp>menu</samp> package in
+<code>/usr/share/doc/menu/examples</code>. Note that while working on your
+script, you can use the tricks described in &quot;The internals of the menu
+package&quot;, section &quot;The update-menus program&quot;, to run just your
+script, instead of having update-menus run all scripts (can save quite a lot of
+time).
+</p>
+
+<p>
+This script should not be executable in the package. Instead the
+<samp>postinst</samp> should add the execute bit and then run
+<code>update-menus</code> (if it is executable).
+</p>
+
+<p>
+Similarly, the <code>postrm</code> script when called with option ``remove''
+should remove the execute bit and run <code>update-menus</code> (if it is
+executable).
+</p>
+
+<p>
+Here is an example of such a <code>postrm</code> script using <code>sh</code>:
+</p>
+
+<pre>
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/#PACKAGE#
+ case &quot;$1&quot; in
+ remove)
+ if [ -f $inst ]; then
+ chmod a-x $inst
+ if [ -x /usr/bin/update-menus ]; then update-menus ; fi
+ fi
+ ;;
+ purge)
+ #remove the files that install-menu creates:
+ rm -rf /var/lib/foo-wm/menu
+ ;;
+ upgrade);;
+ *)
+ echo &quot;postrm called with unknown argument \`$1'&quot; &gt;&amp;2
+ exit 0
+ ;;
+ esac
+</pre>
+
+<p>
+And here is a good example for a <code>postinst</code> script:
+</p>
+
+<pre>
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/#PACKAGE#
+ if [ -f $inst ]; then
+ chmod a+x $inst
+ if [ -x /usr/bin/update-menus ]; then
+ update-menus
+ fi
+ fi
+</pre>
+
+<p>
+If you are using <code>debhelper</code>, the program
+<code>dh_installmenu</code> can help you do it.
+</p>
+
+<p>
+Please, do not make your package <em>depend</em> on the menu package! The
+preferred way of telling dpkg that your wm can cooperate with menu is:
+</p>
+
+<pre>
+ Suggests: menu
+</pre>
+
+<p>
+Please only consider using &quot;depends&quot; if you feel providing reasonable
+defaults for systems without <code>menu</code> will make life very difficult
+for you.
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch4.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ 5 ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch6.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch6.html b/doc/menu.html/ch6.html
new file mode 100644
index 0000000..fcfa7b9
--- /dev/null
+++ b/doc/menu.html/ch6.html
@@ -0,0 +1,224 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - How a user can override the menus</title>
+
+<link href="index.html" rel="start">
+<link href="ch5.html" rel="prev">
+<link href="ch7.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch6"></a></p>
+<hr>
+
+<p>
+[ <a href="ch5.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ 6 ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch7.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 6 - How a user can override the menus
+</h1>
+
+<hr>
+
+<hr>
+
+<h2><a name="s6.1"></a>6.1 Configuring the menus</h2>
+
+<p>
+Users can specify their own menu entries in the <code>~/.menu</code> directory.
+The files can have an arbitrary file name as long as the new syntax for the
+menu entries is used. They should start with either
+</p>
+
+<pre>
+ ?package(installed-package):
+</pre>
+
+<p>
+or
+</p>
+
+<pre>
+ ?package(local.mystuff):
+</pre>
+
+<p>
+if it's something that isn't ``debian-officially'' installed. (Any ``package''
+that starts with ``<samp>local.</samp>'' is considered installed.)
+</p>
+
+<p>
+If users want to have their own menu methods, they should create a
+<code>~/.menu-methods</code> directory and put all their menu methods in it.
+(If <code>~/.menu-methods</code> exists, <code>/etc/menu-methods</code> will
+not be searched when a user runs <code>update-menus</code>).
+</p>
+
+<p>
+A system administrator should place system-wide menu entries in
+<code>/etc/menu</code> (not in <code>/usr/share/menu/package</code>, since
+these files will probably be overwritten by a package upgrade).
+</p>
+
+<hr>
+
+<h2><a name="s6.2"></a>6.2 Specifying that a menu entry should not be displayed</h2>
+
+<p>
+If a user wants to remove the entries of <samp>package</samp> from the system
+menu then this will do the trick:
+</p>
+
+<pre>
+ echo -n &gt; ~/.menu/package
+</pre>
+
+<p>
+The zero-size file will tell <code>update-menus</code> that the corresponding
+package should not have any menu entries listed. A system administrator can
+remove menu entries system-wide with
+</p>
+
+<pre>
+ echo -n &gt; /etc/menu/package
+</pre>
+
+<hr>
+
+<h2><a name="s6.3"></a>6.3 Including other files</h2>
+
+<p>
+<var>Historical comment by Joost:</var>
+</p>
+
+<p>
+<var>More out of curiosity than anything else, I recently read the KDE mailing
+list. In it I saw some discussion about how good the Debian menu system is
+(whow, thanks, guys!), but one person found a missing feature: s/he said you
+couldn't include other files in the user menu files. Well, actually, it was
+already possible, but not very well documented.</var>
+</p>
+
+<p>
+To include the contents of the file <code>/usr/share/menu/somefile</code>, add
+this to your menu file:
+</p>
+
+<pre>
+ !include /usr/share/menu/somefile
+</pre>
+
+<p>
+Apart from that, it is of course possible to make the menu entry file
+executable (<samp>chmod a+x ~/.menu/package</samp>), and do something like
+</p>
+
+<pre>
+ #!/bin/sh
+ cat /usr/share/menu/somefile
+ sed -e &quot;/unwanted_entry/s/?package(/?package(notinstalled./&quot; \
+ /usr/share/menu/someotherfile
+</pre>
+
+<p>
+to get the same effect, with the added flexibility of being able to filter out
+unwanted lines.
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch5.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ 6 ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch7.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch7.html b/doc/menu.html/ch7.html
new file mode 100644
index 0000000..3cc602c
--- /dev/null
+++ b/doc/menu.html/ch7.html
@@ -0,0 +1,821 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - The internals of the menu package</title>
+
+<link href="index.html" rel="start">
+<link href="ch6.html" rel="prev">
+<link href="ch8.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch7"></a></p>
+<hr>
+
+<p>
+[ <a href="ch6.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ 7 ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch8.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 7 - The internals of the menu package
+</h1>
+
+<hr>
+
+<hr>
+
+<h2><a name="s7.1"></a>7.1 The update-menus program</h2>
+
+<p>
+On startup, update-menus checks the file <code>/var/run/update-menus.pid</code>
+and the pid in it. If there's an <code>update-menus</code> process with that
+pid it kills it. If <code>/var/lib/dpkg/lock</code> exists, it checks to see
+if dpkg supports triggers. If so, it uses dpkg-trigger to trigger a real
+update-menus run later. Otherwise, it forks to background and returns control
+to dpkg. The background process checks the <code>/var/lib/dpkg/lock</code>
+file approx. every two second until the file's gone.
+</p>
+
+<p>
+Once it's decided to run, whether in the background after dpkg exits, or in the
+foreground when used with a trigger-capable dpkg, <code>update-menus</code>
+reads the menu-entry files in the following directories:
+<code>/etc/menu</code>, <code>/usr/lib/menu</code>,
+<code>/usr/share/menu</code>, <code>/usr/share/menu/default</code>. (if a user
+runs <code>update-menus</code>, it will add <code>~/.menu</code> to the front
+of that list). For every menu entry line in each file it checks if the
+corresponding package is installed. The menu entries of all packages marked as
+installed by dpkg are added together in one big buffer that is kept in memory
+(exception: executable menu entry files are executed, and stdout is placed in
+the buffer).
+</p>
+
+<p>
+Once it's read all menu entry files, <code>update-menus</code> starts all
+executable scripts in <code>/etc/menu-methods/</code>, hands the scripts the
+previously created buffer via stdin. (If <code>update-menus</code> is run by a
+user, it will first try to run the scripts in <code>~/.menu-methods</code>, and
+only if that directory doesn't exist, it will run the scripts in
+<code>/etc/menu-methods</code>).
+</p>
+
+<p>
+Note that as an aid to debugging, one can use
+</p>
+
+<pre>
+ update-menus --stdout &gt; /tmp/menu-stdin
+</pre>
+
+<p>
+and then view the file <code>/tmp/menu-stdin</code> to see exactly what
+<code>update-menus</code> handed the menu-methods on their stdin.
+</p>
+
+<p>
+This may also be useful for people writing <code>/etc/menu-method/*</code>
+scripts: Running <code>update-menus</code> every time you changed something in
+the script may be quite time-consuming. So, it's much easier to run
+<code>update-menus --stdout</code> once, and then run
+</p>
+
+<pre>
+ /etc/menu-methods/mymethod &lt; /tmp/menu-stdin
+</pre>
+
+<p>
+(and, if that also takes too long, just try editing /tmp/menu-stdin, and
+removing 90% or so of all entries)
+</p>
+
+<hr>
+
+<h2><a name="s7.2"></a>7.2 The install-menu program</h2>
+
+<p>
+The files <code>/etc/menu-methods/$wm</code> are executable config files that
+start with the line
+</p>
+
+<pre>
+ #!/usr/bin/install-menu
+</pre>
+
+<p>
+and thus start that program, handing it the configuration file for the specific
+window manager in the first command line argument. This configuration consists
+of:
+</p>
+<ol type="1" start="1" >
+<li>
+<p>
+the compatibility mode (&quot;menu-1&quot; or &quot;menu-2&quot;).
+</p>
+</li>
+</ol>
+<ol type="1" start="2" >
+<li>
+<p>
+where the various files should be stored/read.
+</p>
+</li>
+</ol>
+<ol type="1" start="3" >
+<li>
+<p>
+what &quot;needs&quot; are supported, and what wrapper files should be used for
+each &quot;type&quot;.
+</p>
+</li>
+</ol>
+<ol type="1" start="4" >
+<li>
+<p>
+how to remove the generated menu files.
+</p>
+</li>
+</ol>
+
+<p>
+See <code>/usr/share/doc/menu/examples/</code> of the menu package for more
+comments.
+</p>
+
+<p>
+Options to <code>install-menu</code>:
+</p>
+
+<pre>
+ --remove Remove the menu files instead of generating them.
+ --verbose Output outline of operations that are performed.
+</pre>
+
+<p>
+Some window managers don't support an `include'-like statement in their
+<code>system.*rc</code> files (like <code>m4</code> or <code>cpp</code>
+preprocessing); they cannot read the <code>menudefs.hook</code> file generated
+by install-menu from their <code>system.*rc</code> config file. To still be
+able to use them, <code>install-menu</code> will copy the file
+<code>$path/$examplercfile</code> to <code>$path/$rcfile</code> (with
+<code>$examplercfile</code> and <code>$rcfile</code> defined in the
+<code>install-menu</code> config file, and <code>$path</code> either the
+<code>$rootprefix</code> or <code>${HOME}/$userprefix</code>, depending on
+whether root or user executed the file.), and replace all occurrences of
+``install-menu-defs'' with the <code>$genmenu</code> file it just generated.
+</p>
+
+<p>
+As an example, consider the following:
+<samp>examplercfile=system.foo-wm-example</samp>,
+<samp>rcfile=system.foo-wm</samp>, <samp>genmenu=menudefs.hook</samp> and
+<samp>rootprefix=/var/lib/foo-wm/menu</samp>. Now, if
+<code>install-menu</code> gets run, it will first generate the file
+<code>/var/lib/foo-wm/menu/menudefs.hook</code>. Next, it will line-by-line
+read the file <code>/var/lib/foo-wm/menu/system.foo-wm-example</code> and copy
+its contents to <code>/var/lib/foo-wm/menu/system.foo-wm</code>, replacing
+every occurrence of the string <samp>install-menu-defs</samp> with the contents
+of the file <code>/var/lib/foo-wm/menu/menudefs.hook</code>.
+</p>
+
+<p>
+To activate the file copying in this way, simply define the
+<samp>$examplercfile</samp> and <samp>$rcfile</samp> variables in the
+<code>install-menu</code> configuration file (for example, see
+<code>/etc/menu-methods/fvwm</code>), and make sure there is a
+<code>$path/$examplercfile</code> (<samp>$path</samp> being either
+<samp>$rootprefix</samp>, or <code>$userprefix</code>.)
+</p>
+
+<p>
+If you are writing a menu method, you can use the following to make debugging
+it somewhat more easily:
+</p>
+<ol type="1" start="1" >
+<li>
+<p>
+use <samp>update-menus --stdout &gt; /tmp/menu-stdin</samp> to create a list of
+menu entries in <code>/tmp/menu-stdin</code> and then
+</p>
+</li>
+</ol>
+<ol type="1" start="2" >
+<li>
+<p>
+you can run just your menu-method with (if it's called wm):
+</p>
+
+<pre>
+ ./wm -v &lt; /tmp/menu-stdin
+</pre>
+</li>
+</ol>
+
+<hr>
+
+<h2><a name="s7.3"></a>7.3 The install-menu config script definitions</h2>
+
+<p>
+The menu-methods in <code>/etc/menu-methods/*</code> are basically made up of a
+lot of ``tag=string'' definitions, telling <code>install-menu</code> how to
+generate a <code>system.${wm}rc</code> script. This way you can tune the look
+of generated <code>system.${wm}rc</code> to your needs.
+</p>
+
+<p>
+In the following, something like
+</p>
+
+<pre>
+ treewalk=&quot;c(m)&quot;
+</pre>
+
+<p>
+means that the treewalk variable by default has the value &quot;c(m)&quot;.
+</p>
+
+<p>
+For examples of what these scripts can look like, see
+<code>/usr/share/doc/menu/examples/*</code>.
+</p>
+<dl>
+<dt><samp>compat=&quot;menu-1&quot;</samp></dt>
+<dd>
+<p>
+Two mode are defined:
+</p>
+<dl>
+<dt><samp>&quot;menu-1&quot;</samp></dt>
+<dd>
+<p>
+menu directives are terminated by an end-of-line character.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>&quot;menu-2&quot;</samp></dt>
+<dd>
+<p>
+menu directives are terminated by a semicolon character.
+</p>
+</dd>
+</dl>
+
+<p>
+This must be just after the <samp>!include &quot;menu.h&quot;</samp> directive
+so that <code>menu.h</code> can use its own compat mode.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>outputencoding=&quot;UTF-8&quot;</samp></dt>
+<dd>
+<p>
+Set the encoding used for output files. Use <samp>iconv --list</samp> to get
+the list of supported encoding. Useful values include &quot;UTF-8&quot; and
+&quot;ISO-8859-1&quot;. The special value &quot;LOCALE&quot; means that the
+current locale encoding will be used. If set to an empty string, no
+translations are performed. This is the default.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>outputlanguage=&quot;&quot;</samp></dt>
+<dd>
+<p>
+If set to &quot;C&quot; automatic translations will be disabled. Note that you
+can still use translate() to perform explicit translation.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>supported</samp></dt>
+<dt><samp>endsupported</samp></dt>
+<dd>
+<p>
+Between the <samp>supported</samp> and <samp>endsupported</samp> keywords you
+define what &quot;needs&quot; are supported by this window manager. So, the
+following is an example for a wm that supports both needs=x11 and needs=text:
+</p>
+
+<pre>
+ function q($s) = &quot;\&quot;&quot; esc($s,&quot;\\\&quot;&quot;) &quot;\&quot;&quot;
+ supported
+ x11 =&quot; ShowEntry(&quot; q(title()) &quot;, &quot; q($command) &quot;)&quot;
+ text=&quot; ShowEntry(&quot; q(title()) &quot;, &quot; q(term()) &quot;)&quot;
+ endsupported
+</pre>
+
+<p>
+For the variable substitution (and functions, not shown above), see the next
+paragraph. In the above example, you'll notice that for the menu entries that
+&quot;need=text&quot;, the term() function is used. This is a user-supplied
+function that will run $command in a X terminal emulator. Also, as X11 is
+higher up in the supported list above than text, a package that supplies both a
+&quot;needs=X11&quot; and a &quot;needs=text&quot; entry will have the
+needs=X11 entry installed, in favour of the needs=text entry. You can continue
+lines on the next line with a backslash (&quot;\&quot;), but make sure you
+don't add any spaces after the backslash.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>startmenu=&quot;&quot;</samp></dt>
+<dt><samp>endmenu=&quot;&quot;</samp></dt>
+<dt><samp>submenutitle=&quot;&quot;</samp></dt>
+<dd>
+<p>
+These define what to print for the beginning/end of a menu, and how to the
+print a menu entry that pops up another menu. They are substituted the same
+way as the &quot;supported&quot; stuff is; see next paragraph.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>treewalk=&quot;c(m)&quot;</samp></dt>
+<dd>
+<p>
+This string defines in what order to dump the <samp>$startmenu</samp>,
+<samp>$endmenu</samp>, and <samp>$submenutitle</samp> (and its children). Each
+char in the string refers to:
+</p>
+
+<pre>
+ c : dump children of menu.
+ m : dump this menu's $submenutitles
+ ( : dump $startmenu
+ ) : dump $endmenu
+ M : dump all $submenutitles of this menu and this menu's children.
+</pre>
+
+<p>
+The default is &quot;c(m)&quot;. For olvwm, one needs: &quot;(M)&quot;
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>genmenu=&quot;&quot;</samp></dt>
+<dd>
+<p>
+The menu file to generate (usually something like
+<samp>system.&quot;$wm&quot;rc</samp>). The file itself may depend on the
+level or title that is currently being worked on, like
+</p>
+
+<pre>
+ genmenu=&quot;/subdir/&quot; replacewith($section,&quot; &quot;,&quot;_&quot;) &quot;/rc.menu&quot;
+</pre>
+
+<p>
+(Substitution works just like in the supported stuff, see above). Note that
+the files made this way are truncated upon opening, so if you have a genmenu
+like the example above, then your <samp>endmenu=</samp> will override the
+startmenu stuff (but you probably only need one of the two anyway).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>rootsection=&quot;/Debian&quot;</samp></dt>
+<dd>
+<p>
+the prefix every <samp>$section</samp> variable gets.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>prerun=&quot;&quot;</samp></dt>
+<dt><samp>postrun=&quot;&quot;</samp></dt>
+<dd>
+<p>
+The commands to run before and after, respectively, the actual generation of
+the <code>menudefs.hook</code> (genmenu) file. Commands will be executed by
+<code>sh</code>. Example:
+</p>
+
+<pre>
+ prerun=&quot;rm -rf &quot; prefix() &quot;/*&quot;
+ postrun=&quot;killall -USR1 fvwm2&quot;
+</pre>
+
+<p>
+(Substitution works just like the supported stuff, see below).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>preruntest=&quot;&quot;</samp></dt>
+<dd>
+<p>
+Just like prerun, but if the return value of the command is non-zero, menu will
+quit.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>also_run=&quot;&quot;</samp></dt>
+<dd>
+<p>
+If non-zero, install-menus will, after generating the output files, also load
+the file also_run, and use the new assignments to treewalk, genmenu, etc. to
+generate more output. This second time, variables like <samp>prerun</samp> and
+all of the hint stuff are ignored.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>removemenu=&quot;&quot;</samp></dt>
+<dd>
+<p>
+The command to run when the menu-method is invoked with the option
+<samp>--remove</samp>. This should remove all the autogenerated menu files.
+If this option is not present, then install menu will remove
+<samp>genmenu</samp> if it is a constant string and <samp>rcfile</samp> if it
+is defined, and try to remove <samp>prefix()</samp> if it is empty.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>onlyrunasroot=false</samp></dt>
+<dt><samp>onlyrunasuser=false</samp></dt>
+<dd>
+<p>
+If <samp>onlyrunasroot</samp> is set to true, <code>install-menu</code> will
+quit silently when run as a user. Similarly for <samp>onlyrunasuser</samp>.
+<var><samp>onlyrunasroot</samp> is deprecated since it is simpler to just not
+define <samp>userprefix</samp>.</var> On the other hand,
+<samp>onlyrunasuser</samp> might be needed if you use <samp>rcfile</samp> since
+<samp>rootprefix</samp> is used as a fallback location for the template.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>preoutput=&quot;#Automatically generated file. Do not edit (see /usr/share/doc/menu/html)\n\n&quot;</samp></dt>
+<dt><samp>postoutput=&quot;&quot;</samp></dt>
+<dd>
+<p>
+Text to put at the beginning resp. end of the generated file ($genmenu).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>command=&quot;&quot;</samp></dt>
+<dd>
+<p>
+A command to run instead of <code>install-menus</code>. This command used to
+be needed to get around limitations due to compatibility stuff. But that
+compatibility with pre menu-1 stuff has been dropped, and isn't needed any
+more.
+</p>
+
+<p>
+Example:
+</p>
+
+<pre>
+ command=&quot;cat &gt; /tmp/menu-stdin&quot;
+</pre>
+</dd>
+</dl>
+<dl>
+<dt><samp>hotkeyexclude=&quot;&quot;</samp></dt>
+<dd>
+<p>
+Keys not to use for hotkey generation. You can use the same variables and
+functions here as in for example the startmenu sections.
+</p>
+
+<p>
+Example:
+</p>
+
+<pre>
+ hotkeyexclude=&quot;q&quot; $section
+</pre>
+</dd>
+</dl>
+<dl>
+<dt><samp>hotkeycase=&quot;insensitive&quot;</samp></dt>
+<dd>
+<p>
+can be either &quot;insensitive&quot; or &quot;sensitive&quot;. Determines
+whether the hotkeys can be of mixed case (<samp>fvwm2</samp> reads the hotkeys
+case-insensitive, <samp>pdmenu</samp> case-sensitive). In case of the titles
+&quot;Xa&quot; and &quot;xb&quot;, hotkey case-insensitive will generate
+&quot;X&quot; and &quot;b&quot;, whereas case-sensitive would generate
+&quot;X&quot; and &quot;x&quot;.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>sort=$sort &quot;:&quot; $title</samp></dt>
+<dd>
+<p>
+Entries within one menu will be alphabetically sorted by whatever sort returns.
+So, if you do <samp>sort=ifelse($command, &quot;1&quot;,
+&quot;0&quot;):$title</samp>, then all submenus will appear above the commands
+in a submenu. (A submenu always has <samp>$command=&quot;&quot;</samp>). Or,
+as Joey Hess writes:
+</p>
+
+<pre>
+ You can add another field to the menu items, with whatever name you like,
+ let's say it's called priority. Then add this line to
+ /etc/menu-methods/*:
+
+ sort=ifelse($priority, $priority, &quot;9&quot;)
+
+ This has the result of sorting things so items with a low priority sort to the
+ top, and items with no priority default to priority 9 and sort to the bottom.
+
+ (Note that it compares the strings alphabetically, not numerically.)
+</pre>
+</dd>
+</dl>
+<dl>
+<dt><samp>rcfile=&quot;&quot;</samp></dt>
+<dd>
+<p>
+If the window manager doesn't support an &quot;include filename&quot; or
+&quot;read(filename)&quot; statement in it's config file, you can rename the
+wm's config file to <samp>system.&quot;$wm&quot;rc-menu</samp>, and insert a
+&quot;install-menu-defs&quot; line (without the quotes, or whitespace around
+it, and &quot;install-menu-defs&quot; must be the only thing on the line) in
+the <samp>system.&quot;$wm&quot;rc-menu</samp> file. This will then get
+replaced by the <samp>$genmenu</samp> file that was just created (see also
+<samp>$examplercfile</samp>).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>examplercfile=&quot;&quot;</samp></dt>
+<dd>
+<p>
+if needed (see <samp>rcfile</samp>), this is the
+<samp>system.rc&quot;$wm&quot;-menu</samp> file. In that case, make
+<samp>rcfile=system.rc&quot;$wm&quot;</samp>.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>rootprefix=&quot;&quot;</samp></dt>
+<dd>
+<p>
+The prefix to use when running as root (applies to $genmenu, $rcfile,
+$examplercfile and other old cache files). If it is not defined, the
+menu-method will be skipped when run as root.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>userprefix=&quot;&quot;</samp></dt>
+<dd>
+<p>
+As <samp>rootprefix</samp>, but when running as user. userprefix is relative
+to the user home directory, unless it start with 2 slashes, in which case it is
+treated as an absolute path. If it is not defined, the menu-method will be
+skipped when run as a user.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_optimize=false</samp></dt>
+<dd>
+<p>
+If set to true, menu will try to generate an `optimal' tree, using the
+variables below. If set to false, menu will keep the sections as they are
+specified in the menu entry files (and ignore any hint stuff).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_nentry=6</samp></dt>
+<dd>
+<p>
+Optimal number of entries in a submenu. It's a float, so you can set it to 5.5
+if you cannot decide between 5 and 6. Also, values less than 3 probably don't
+work very well at the moment.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_topnentry=5</samp></dt>
+<dd>
+<p>
+Same as hint_nentry, but for the top level menu. Often here are other entries,
+added by the window-manager itself (like Exit, Xterm, whatever) that menu
+doesn't know about, so that you may want to instruct menu to put less entries
+in the top level menu.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_mixedpenalty=15.0</samp></dt>
+<dd>
+<p>
+Penalty for `mixed' menus. Mixed menus are those with both submenus and direct
+commands in them.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_minhintfreq=0.1</samp></dt>
+<dd>
+<p>
+Minimal relative frequency for the hints before they are considered. Internal
+variable to speed up the tree generation. If you find menu slow, increase this
+value (to, say 0.2 or 0.3).
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_mlpenalty=2000</samp></dt>
+<dd>
+<p>
+`max local penalty', while evaluating the possible trees, menu gives
+`penalties' for submenus that don't contain the desired number of submenus.
+The penalty is sqrt(n_entry_opt-n_entry), and eventually will be calculated as
+a sum of all nodes. But to speed things up, menu will discard possibilities in
+which any node has a `local' penalty of more than hint_mlpenalty. Increase
+this value if you think menu is overlooking your favorite tree (also decrease
+minhintfreq), decrease this value if you think menu is wasting too much time.
+Because of hint_max_ntry, the influence of this variable is nearly zero
+nowadays.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_max_ntry=4</samp></dt>
+<dd>
+<p>
+menu will recursively, for each node, try the hint_max_ntry best local
+menu-divisions.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hints_max_iter_hint=5</samp></dt>
+<dd>
+<p>
+The search for what hints to use in one menu is rather expensive. But due to
+the way things are sorted, menu seems to always find the `best' match in the
+first 2% of iterations. Thus, a way to speed things up is simply to cut of
+menu searching after `some' iterations are done. This value controls this, and
+limits the number of iterations to
+5+hint_max_iter_hint*number_of_possible_hints. Set this value to negative to
+disable this.
+</p>
+</dd>
+</dl>
+<dl>
+<dt><samp>hint_debug=false</samp></dt>
+<dd>
+<p>
+Set to true if you want to see loads and loads of debug output.
+</p>
+</dd>
+</dl>
+
+<hr>
+
+<h2><a name="s7.4"></a>7.4 Hints, tree optimization</h2>
+
+<p>
+The hints actually work in a rather strange way: when
+<samp>hint_optimize=true</samp> then all <samp>$section</samp> elements are
+added to the specified <samp>$hints</samp> variable, and the order
+(<samp>/Applications/Editors</samp> or <samp>/Editors/Applications</samp>) of
+the resulting hints is completely ignored. Then, the hints for each menu entry
+are handed to the optimization routine, which will calculate a reasonable tree
+for those hints. That tree must comply with the following:
+</p>
+
+<p>
+When a user looks for a program &quot;Program&quot; with, say, hints
+&quot;Good,Bulky,Heaven&quot;, then, while walking through the tree, it should
+at every node visited be clear for the user what submenu to select (or the menu
+should have &quot;Program&quot; directly in it). So, the top-level menu may
+look like
+</p>
+
+<pre>
+ Good
+ Hell
+ Microsoft
+</pre>
+
+<p>
+because then a searcher for a menu entry with hints
+&quot;Good,Bulky,Heaven&quot; will know to select the submenu &quot;Good&quot;.
+The toplevel menu may not look like
+</p>
+
+<pre>
+ Good
+ Hell
+ Heaven
+</pre>
+
+<p>
+as now it isn't clear whether to visit the Good or the Heaven submenu.
+</p>
+
+<p>
+That rule allows usually for many different trees, and the task of the
+optimization procedure is to select, in a finite amount of time, the tree that
+best matches the user's desire about the optimum number of menu entries.
+</p>
+
+<hr>
+
+<p>
+[ <a href="ch6.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ 7 ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch8.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/ch8.html b/doc/menu.html/ch8.html
new file mode 100644
index 0000000..caa542f
--- /dev/null
+++ b/doc/menu.html/ch8.html
@@ -0,0 +1,665 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System - Variables and functions in the install-menu scripts</title>
+
+<link href="index.html" rel="start">
+<link href="ch7.html" rel="prev">
+<link href="index.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="ch8"></a></p>
+<hr>
+
+<p>
+[ <a href="ch7.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ 8 ]
+[ <a href="index.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br>Chapter 8 - Variables and functions in the install-menu scripts
+</h1>
+
+<hr>
+
+<p>
+The supported &quot;needs&quot; definitions and &quot;startmenu=&quot;,
+&quot;endmenu=&quot; and &quot;submenutitle=&quot; are interpreted as follows:
+</p>
+
+<hr>
+
+<h2><a name="s8.1"></a>8.1 String constants</h2>
+
+<p>
+Anything inside double quotes (&quot;&quot;) is interpreted as a string, and is
+written verbatim to the output file. Escape sequences like \n, \t, ... will
+be replaced with their C expansions (but currently \0xx octal escape sequences
+are not supported).
+</p>
+
+<hr>
+
+<h2><a name="s8.2"></a>8.2 Variables</h2>
+
+<p>
+Anything matching $[a-z,A-Z,_]* is interpreted as a variable, and the
+corresponding definition from the menu entry is substituted.
+</p>
+
+<hr>
+
+<h3><a name="s8.2.1"></a>8.2.1 Special variables</h3>
+
+<p>
+The following variables are treated in a special way by install-menus, either
+because they are used for other purposes too, or because they are modified by
+install-menus (the ones marked with a &quot;!&quot; are modified by
+install-menus).
+</p>
+<dl>
+<dt>needs:</dt>
+<dd>
+<p>
+Used to determine whether the window manager supports this menu entry.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>command:</dt>
+<dd>
+<p>
+If this is undefined, this menu entry is taken as defining a sub-menu. This
+way you can specify icons of sub-menus.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>title!:</dt>
+<dd>
+<p>
+Used for sorting (see section). For sub-menu entries (those with empty
+command), this is initialised to the last part of the section. Please, keep
+the title short (two words at maximum). The title is for people who already
+know what program they want to start. See &quot;longtitle&quot; and
+&quot;description&quot; below for longer descriptions.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>sort:</dt>
+<dd>
+<p>
+Used for sorting (see section). To make sure an entry is at the beginning, use
+something with a low ASCII number, like &quot;$&quot;. For sorting at the end,
+use &quot;|&quot;
+</p>
+</dd>
+</dl>
+<dl>
+<dt>section!:</dt>
+<dd>
+<p>
+Used to determine the section of the menu entry. The menu entries that have a
+empty $command, ie those that define a submenu, have $title added to the end of
+$section The menu entries that have a non-empty $command have their $section
+modified to $section/$title, or $section/$sort:$title if $sort is defined. The
+menu entries within one submenu are sorted according to $section. If you want
+to retrieve the real section name, see the $basesection variable.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>basesection!:</dt>
+<dd>
+<p>
+Used to contain the *real* section name. This is useful because $section will
+be changed to $section/$title in special cases (see above). This causes a
+problem when you want to do parent($section) because you won't get the real
+parent section. Instead you can use $basesection, which will never contain the
+title.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>hotkey!:</dt>
+<dd>
+<p>
+Modified to reflect what install-menus thinks is the most suitable hotkey for
+this menu entry. The hotkey= in the menu entry file is taken as a suggestion,
+that could be overwritten if there is another entry with the same hotkey=. To
+suggest two possible hotkeys for an entry use hotkey=&quot;ab&quot;, with
+&quot;a&quot; being the most preferred hotkey.
+</p>
+</dd>
+</dl>
+
+<hr>
+
+<h3><a name="s8.2.2"></a>8.2.2 Preferred variables</h3>
+
+<p>
+The following aren't special for install-menus, but it's nice (read: essential)
+to use the same variables for the same things. So, I'll suggest some here. If
+you want to invent new ones, please do so and mail them to me so that I can
+include them here.
+</p>
+<dl>
+<dt>icon:</dt>
+<dd>
+<p>
+The location of the icon file for this menu entry. If you don't have an icon
+file, just leave out the icon= in the menu entry.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>icon32x32:</dt>
+<dd>
+<p>
+The location of a 32x32 icon file for this menu entry.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>icon16x16:</dt>
+<dd>
+<p>
+The location of a 16x16 icon file for this menu entry. This allows users to
+choose between 16x16 and 32x32 icon.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>longtitle:</dt>
+<dd>
+<p>
+For people that like descriptive titles (about one line) It is probably best to
+include this in your menu entries, while the window-managers don't (by default)
+put it in the menus. That way, people who want descriptive titles can turn
+them on, but others don't need to use them.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>description:</dt>
+<dd>
+<p>
+An even longer description (about 5 lines). For example, a description of the
+documentation in the dwww generated html pages.
+</p>
+</dd>
+</dl>
+
+<hr>
+
+<h3><a name="s8.2.3"></a>8.2.3 Suggested variables</h3>
+
+<p>
+The following variables probably shouldn't appear often (or at all) in the menu
+files supplied with packages. They are mostly intended for use by local system
+managers. Nevertheless, it is advised that all Debian systems use the
+following variable names:
+</p>
+<dl>
+<dt>visible</dt>
+<dd>
+<p>
+Some apps add entries to utmp the utmp file, so that &quot;who&quot; and
+friends know they are running (this is especially true for xterms etc). If
+$visible set (to anything other than &quot;&quot; or &quot;none&quot;), xterms
+etc will not write logging info to utmp. (may not work for your window
+manager).
+</p>
+</dd>
+</dl>
+<dl>
+<dt>geometry</dt>
+<dd>
+<p>
+For X apps, this will be the size of the (main) window that will be created
+(units in either chars or pixels, depending on type of main window (xterm or
+graphic)). If you as package maintainer want to use this, you should probably
+think about setting this variable somewhere in an Xresources file.
+</p>
+</dd>
+</dl>
+
+<hr>
+
+<h2><a name="s8.3"></a>8.3 Functions</h2>
+
+<p>
+Anything matching <samp>[a-zA-Z_]+</samp> is taken as a function name, and an
+error is generated if the function doesn't exist. The arguments of the
+functions can be other functions, string constants or variables.
+</p>
+<dl>
+<dt>prefix()</dt>
+<dd>
+<p>
+returns the current prefix dir: either $rootprefix, or $HOME/$userprefix,
+depending on who runs install-menu
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifroot($rootarg, $userarg)</dt>
+<dd>
+<p>
+if(getuid()==0) print $rootarg, else print $userarg
+</p>
+</dd>
+</dl>
+<dl>
+<dt>print($arg)</dt>
+<dd>
+<p>
+Same as just $arg; if $arg is empty, generate an error.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>nstring($n, $string)</dt>
+<dd>
+<p>
+write $string $n times. So, nstring(3,&quot;Aa&quot;) writes
+&quot;AaAaAa&quot;. (Useful in combination with level()).
+</p>
+</dd>
+</dl>
+<dl>
+<dt>esc($arg1,$arg2)</dt>
+<dd>
+<p>
+Print $arg1, but escape all occurrences of characters in $arg2 with a '\'
+(thus, if arg1=&quot;hello&quot;, arg2=&quot;lo&quot;, print
+&quot;he\l\l\o&quot;).
+</p>
+</dd>
+</dl>
+<dl>
+<dt>escwith($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+Same as esc, but use $arg3 as escape sequence.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>escfirst($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+Same as escwith, but only escapes first occurrence of $arg2.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>cppesc($arg1)</dt>
+<dd>
+<p>
+Escape anything that isn't a letter, number or _ with $&lt;hex-ascii-code&gt;.
+So, for example, a '-' is replaced by '$2D'. This way, $arg1 can be used as a
+#define in cpp.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>tolower($arg)</dt>
+<dt>toupper($arg)</dt>
+<dd>
+<p>
+Returns the argument set in lowercases resp uppercases.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>replacewith($s, $replace, $with)</dt>
+<dd>
+<p>
+Search $s for occurrences of characters from string replace, and replace them
+by the corresponding character in $with. Example: replacewith(&quot;hello
+$world, %dir&quot;, &quot;$% &quot;, &quot;123&quot;) returns:
+&quot;hello31world,32dir&quot;
+</p>
+</dd>
+</dl>
+<dl>
+<dt>replace($s, $replace, $with)</dt>
+<dd>
+<p>
+Search $s for occurences of $replace and replace them with $with. Note that
+the behaviour of this function is quite different than the replacewith()
+function.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifempty($arg1, $arg2)</dt>
+<dd>
+<p>
+If $arg1 is empty, print $arg2, otherwise print nothing. For compatibility,
+$arg1=&quot;none&quot; is interpreted as empty.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifnempty($arg1, $arg2)</dt>
+<dd>
+<p>
+If $arg1 is not empty, print $arg2. For compatibility, the string
+&quot;none&quot; is seen as empty.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifelse($arg1,$arg2,$arg3)</dt>
+<dd>
+<p>
+If $arg1 is non-empty, print $arg2, otherwise $arg3. For compatibility, the
+string &quot;none&quot; is seen as empty.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifeq($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+If ($arg1==$arg2) then print $arg3
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifneq($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+If ($arg1!=$arg2) then print $arg3
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifeqelse($arg1, $arg2, $arg3, $arg4)</dt>
+<dd>
+<p>
+If ($arg1==$arg2) then print $arg3 else print $arg4
+</p>
+</dd>
+</dl>
+<dl>
+<dt>cond_surr($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+If $arg1 is non-empty print $arg2$arg1$arg3, otherwise print nothing. For
+compatibility, $arg1=&quot;none&quot; is interpreted as empty.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>iffile($arg1, $arg2)</dt>
+<dd>
+<p>
+If file $arg1 exists, and can be opened for reading by whoever started the
+current process, return $arg2, otherwise return nothing.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>ifelsefile($arg1, $arg2, $arg3)</dt>
+<dd>
+<p>
+If file $arg1 exists, and can be opened for reading by whoever started the
+current process, return $arg2, otherwise return $arg3.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>catfile($arg1)</dt>
+<dd>
+<p>
+Return the contents of file $arg1.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>shell($arg1)</dt>
+<dd>
+<p>
+Return the output of the shell command $arg1.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>forall($array, &quot;var&quot;, $exec)</dt>
+<dd>
+<p>
+For each element of the column separated array $array, set $var to that
+element, and print $exec. Example:
+</p>
+
+<pre>
+ !include lang.h
+ forall(sections_translations(), &quot;lang&quot;, \
+ &quot; section[&quot; $lang &quot;]=&quot; translate($lang, title()) &quot;\n&quot;)
+</pre>
+</dd>
+</dl>
+<dl>
+<dt>parent($arg)</dt>
+<dd>
+<p>
+for $arg a &quot;directory&quot;, return parent directory:
+parent(&quot;/Debian/Applications/Editors&quot;) =
+&quot;/Debian/Applications&quot;.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>basename($arg)</dt>
+<dd>
+<p>
+return the last part of the parent directory:
+basename(&quot;/Debian/Applications/Editors&quot;) = &quot;Applications&quot;.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>stripdir($arg)</dt>
+<dd>
+<p>
+everything after the last slash, i.e. what basename() should have returned:
+stripdir(&quot;/Debian/Applications/Editors&quot;) = &quot;Editors&quot;.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>entrycount()</dt>
+<dd>
+<p>
+the number of entries in this menu.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>entryindex()</dt>
+<dd>
+<p>
+returns relative position of this entry. Start with 0, last entry is
+entrycount() - 1. BUG: if sort= anything other than $title, then this
+entryindex() will return incorrect values.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>firstentry($arg)</dt>
+<dd>
+<p>
+return $arg if this is the first entry of this menu (that is, entryindex() =
+0). Else, return nothing.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>lastentry()</dt>
+<dd>
+<p>
+return $arg if this is the last entry in this menu (that is, entryindex() =
+entrycount() -1). Else, return nothing.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>level()</dt>
+<dd>
+<p>
+return nesting of this menu in the total menu tree.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>add($arg1,$arg2)</dt>
+<dt>sub($arg1,$arg2)</dt>
+<dt>mult($arg1,$arg2)</dt>
+<dt>div($arg1,$arg2)</dt>
+<dd>
+<p>
+returns the sum, difference, product or quotient of $arg1 and $arg2. Note that
+the arguments are strings, that are converted to integers. example:
+mult(&quot;24&quot;, entryindex())
+</p>
+</dd>
+</dl>
+<dl>
+<dt>rcfile()</dt>
+<dt>examplercfile()</dt>
+<dt>mainmenutitle()</dt>
+<dt>rootsection()</dt>
+<dt>rootprefix()</dt>
+<dt>userprefix()</dt>
+<dt>treewalk()</dt>
+<dt>postoutput()</dt>
+<dt>preoutput()</dt>
+<dd>
+<p>
+These functions all output whatever they were defined to be in the menu-method
+file.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>translate($lang, $text)</dt>
+<dd>
+<p>
+Translate $text into $lang using gettext, see <samp>forall</samp> for an
+example. Note that currently outputlanguage must be set to &quot;C&quot;. If
+$lang is the empty string, $text will be translated in the current locale
+language. See sections_translations() for a list of available translations.
+</p>
+</dd>
+</dl>
+<dl>
+<dt>implicit concatenation</dt>
+<dd>
+<p>
+String constants, variables and functions can be concatenated by placing them
+after each other with a space in between, like: &quot;hello&quot;
+ifelse($comma, $comma, &quot; sorry&quot; $period &quot; comma not
+defined&quot;) &quot; world&quot;
+</p>
+</dd>
+</dl>
+
+<hr>
+
+<p>
+[ <a href="ch7.html">previous</a> ]
+[ <a href="index.html#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ 8 ]
+[ <a href="index.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.html/index.html b/doc/menu.html/index.html
new file mode 100644
index 0000000..cb79bda
--- /dev/null
+++ b/doc/menu.html/index.html
@@ -0,0 +1,208 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+
+<html>
+
+<head>
+
+<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+
+<title>Debian Menu System</title>
+
+<link href="index.html" rel="start">
+<link href="ch8.html" rel="prev">
+<link href="ch1.html" rel="next">
+<link href="index.html#contents" rel="contents">
+<link href="index.html#copyright" rel="copyright">
+<link href="ch1.html" rel="chapter" title="1 Introduction">
+<link href="ch2.html" rel="chapter" title="2 Menu from the viewpoint of a user">
+<link href="ch3.html" rel="chapter" title="3 The menu file">
+<link href="ch4.html" rel="chapter" title="4 What packages with applications should do">
+<link href="ch5.html" rel="chapter" title="5 What packages with menu managers should do">
+<link href="ch6.html" rel="chapter" title="6 How a user can override the menus">
+<link href="ch7.html" rel="chapter" title="7 The internals of the menu package">
+<link href="ch8.html" rel="chapter" title="8 Variables and functions in the install-menu scripts">
+<link href="ch2.html#s2.1" rel="section" title="2.1 How/when do the window manager startup files get created?">
+<link href="ch2.html#s2.2" rel="section" title="2.2 Tuning of the generated window manager startup files">
+<link href="ch2.html#s2.3" rel="section" title="2.3 Optimization of menu tree: hints">
+<link href="ch3.html#s3.1" rel="section" title="3.1 Location">
+<link href="ch3.html#s3.2" rel="section" title="3.2 Syntax">
+<link href="ch3.html#s3.3" rel="section" title="3.3 The title field">
+<link href="ch3.html#s3.4" rel="section" title="3.4 The needs field">
+<link href="ch3.html#s3.5" rel="section" title="3.5 The section field">
+<link href="ch3.html#s3.6" rel="section" title="3.6 The command field">
+<link href="ch3.html#s3.7" rel="section" title="3.7 The icon field">
+<link href="ch3.html#s3.8" rel="section" title="3.8 The hints field">
+<link href="ch3.html#s3.9" rel="section" title="3.9 Entries for menu sections.">
+<link href="ch3.html#s3.10" rel="section" title="3.10 Fvwm's task and title bars">
+<link href="ch4.html#s4.1" rel="section" title="4.1 Providing a menu file">
+<link href="ch4.html#s4.2" rel="section" title="4.2 Adding a hook for dpkg in your packages">
+<link href="ch6.html#s6.1" rel="section" title="6.1 Configuring the menus">
+<link href="ch6.html#s6.2" rel="section" title="6.2 Specifying that a menu entry should not be displayed">
+<link href="ch6.html#s6.3" rel="section" title="6.3 Including other files">
+<link href="ch7.html#s7.1" rel="section" title="7.1 The update-menus program">
+<link href="ch7.html#s7.2" rel="section" title="7.2 The install-menu program">
+<link href="ch7.html#s7.3" rel="section" title="7.3 The install-menu config script definitions">
+<link href="ch7.html#s7.4" rel="section" title="7.4 Hints, tree optimization">
+<link href="ch8.html#s8.1" rel="section" title="8.1 String constants">
+<link href="ch8.html#s8.2" rel="section" title="8.2 Variables">
+<link href="ch8.html#s8.3" rel="section" title="8.3 Functions">
+<link href="ch8.html#s8.2.1" rel="subsection" title="8.2.1 Special variables">
+<link href="ch8.html#s8.2.2" rel="subsection" title="8.2.2 Preferred variables">
+<link href="ch8.html#s8.2.3" rel="subsection" title="8.2.3 Suggested variables">
+
+</head>
+
+<body>
+
+<p><a name="index"></a></p>
+<hr>
+
+<p>
+[ <a href="ch8.html">previous</a> ]
+[ <a href="#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch1.html">next</a> ]
+</p>
+
+<hr>
+
+<h1>
+Debian Menu System
+<br></h1>
+
+<hr>
+
+<h2><a name="abstract"></a>Abstract</h2>
+
+<p>
+The <samp>menu</samp> package was inspired by the
+<code>install-fvwm2-menu</code> program from the old <code>fvwm2</code>
+package. However, <samp>menu</samp> tries to provide a more general interface
+for menu building. With the <code>update-menus</code> command from this
+package, no package needs to be modified for every X window manager again, and
+it provides a unified interface for both text- and X-oriented programs.
+</p>
+
+<hr>
+
+<h2><a name="copyright"></a>Copyright Notice</h2>
+
+<p>
+Copyright &copy;1997 Joost Witteveen, Joey Hess, Christian Schwarz. &copy;2002-2005 Bill Allombert.
+</p>
+
+<p>
+This manual is free software; you may 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.
+</p>
+
+<p>
+This is distributed in the hope that it will be useful, but <em>without any
+warranty</em>; without even the implied warranty of merchantability or fitness
+for a particular purpose. See the GNU General Public License for more details.
+</p>
+
+<p>
+A copy of the GNU General Public License is available as
+<code>/usr/share/common-licenses/GPL</code> in the Debian GNU/Linux
+distribution or on the World Wide Web at
+<samp>http://www.gnu.org/copyleft/gpl.html</samp>. You can also obtain it by
+writing to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+Boston, MA 02110-1301 USA
+</p>
+
+<hr>
+
+<h2><a name="contents"></a>Contents</h2>
+
+<ul>
+<li><a href="ch1.html">1 Introduction</a><li><a href="ch2.html">2 Menu from the viewpoint of a user</a>
+ <ul>
+ <li><a href="ch2.html#s2.1">2.1 How/when do the window manager startup files get created?</a></li>
+ <li><a href="ch2.html#s2.2">2.2 Tuning of the generated window manager startup files</a></li>
+ <li><a href="ch2.html#s2.3">2.3 Optimization of menu tree: hints</a>
+ </ul></li>
+<li><a href="ch3.html">3 The menu file</a>
+ <ul>
+ <li><a href="ch3.html#s3.1">3.1 Location</a></li>
+ <li><a href="ch3.html#s3.2">3.2 Syntax</a></li>
+ <li><a href="ch3.html#s3.3">3.3 The <samp>title</samp> field</a></li>
+ <li><a href="ch3.html#s3.4">3.4 The <samp>needs</samp> field</a></li>
+ <li><a href="ch3.html#s3.5">3.5 The <samp>section</samp> field</a></li>
+ <li><a href="ch3.html#s3.6">3.6 The <samp>command</samp> field</a></li>
+ <li><a href="ch3.html#s3.7">3.7 The <samp>icon</samp> field</a></li>
+ <li><a href="ch3.html#s3.8">3.8 The <samp>hints</samp> field</a></li>
+ <li><a href="ch3.html#s3.9">3.9 Entries for menu sections.</a></li>
+ <li><a href="ch3.html#s3.10">3.10 Fvwm's task and title bars</a>
+ </ul></li>
+<li><a href="ch4.html">4 What packages with applications should do</a>
+ <ul>
+ <li><a href="ch4.html#s4.1">4.1 Providing a menu file</a></li>
+ <li><a href="ch4.html#s4.2">4.2 Adding a hook for dpkg in your packages</a>
+ </ul></li>
+<li><a href="ch5.html">5 What packages with menu managers should do</a><li><a href="ch6.html">6 How a user can override the menus</a>
+ <ul>
+ <li><a href="ch6.html#s6.1">6.1 Configuring the menus</a></li>
+ <li><a href="ch6.html#s6.2">6.2 Specifying that a menu entry should not be displayed</a></li>
+ <li><a href="ch6.html#s6.3">6.3 Including other files</a>
+ </ul></li>
+<li><a href="ch7.html">7 The internals of the menu package</a>
+ <ul>
+ <li><a href="ch7.html#s7.1">7.1 The update-menus program</a></li>
+ <li><a href="ch7.html#s7.2">7.2 The install-menu program</a></li>
+ <li><a href="ch7.html#s7.3">7.3 The install-menu config script definitions</a></li>
+ <li><a href="ch7.html#s7.4">7.4 Hints, tree optimization</a>
+ </ul></li>
+<li><a href="ch8.html">8 Variables and functions in the install-menu scripts</a>
+ <ul>
+ <li><a href="ch8.html#s8.1">8.1 String constants</a></li>
+ <li><a href="ch8.html#s8.2">8.2 Variables</a></li>
+ <li><a href="ch8.html#s8.3">8.3 Functions</a></li>
+ </ul></li>
+</ul>
+
+<hr>
+
+<p>
+[ <a href="ch8.html">previous</a> ]
+[ <a href="#contents">Contents</a> ]
+[ <a href="ch1.html">1</a> ]
+[ <a href="ch2.html">2</a> ]
+[ <a href="ch3.html">3</a> ]
+[ <a href="ch4.html">4</a> ]
+[ <a href="ch5.html">5</a> ]
+[ <a href="ch6.html">6</a> ]
+[ <a href="ch7.html">7</a> ]
+[ <a href="ch8.html">8</a> ]
+[ <a href="ch1.html">next</a> ]
+</p>
+
+<hr>
+
+<p>
+Debian Menu System
+</p>
+
+<address>
+version 1.4, 10 November 2011<br>
+<br>
+Joost Witteveen <code><a href="mailto:joostje@debian.org">joostje@debian.org</a></code><br>
+Joey Hess <code><a href="mailto:joeyh@debian.org">joeyh@debian.org</a></code><br>
+Christian Schwarz <code><a href="mailto:schwarz@debian.org">schwarz@debian.org</a></code><br>
+Bill Allombert <code><a href="mailto:ballombe@debian.org">ballombe@debian.org</a></code><br>
+<br>
+</address>
+<hr>
+
+</body>
+
+</html>
+
diff --git a/doc/menu.info.gz b/doc/menu.info.gz
new file mode 100644
index 0000000..7484ef8
--- /dev/null
+++ b/doc/menu.info.gz
Binary files differ
diff --git a/doc/menu.sgml b/doc/menu.sgml
new file mode 100644
index 0000000..bf189be
--- /dev/null
+++ b/doc/menu.sgml
@@ -0,0 +1,1758 @@
+<!doctype debiandoc system>
+
+<!--
+ Debian Menu System
+ Copyright (C) 1997 Joost Witteveen, Joey Hess, Christian Schwarz;
+ Modification (C) 2002-2005 Bill Allombert
+ released under the terms of the GNU
+ General Public License, version 2 or (at your option) any later.
+ -->
+
+<book>
+
+<title>Debian Menu System
+<author>Joost Witteveen <email/joostje@debian.org/
+<author>Joey Hess <email/joeyh@debian.org/
+<author>Christian Schwarz <email/schwarz@debian.org/
+<author>Bill Allombert <email/ballombe@debian.org/
+<version>version 1.4, <date>
+
+<abstract>
+The <tt/menu/ package was inspired by the <prgn/install-fvwm2-menu/
+program from the old <prgn/fvwm2/ package. However, <tt/menu/ tries to
+provide a more general interface for menu building. With the
+<prgn/update-menus/ command from this package, no package needs to be
+modified for every X window manager again, and it provides a unified
+interface for both text- and X-oriented programs.
+</abstract>
+
+<copyright>Copyright &copy;1997 Joost Witteveen, Joey Hess, Christian Schwarz.
+&copy;2002-2005 Bill Allombert.
+<p>
+
+This manual is free software; you may 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.
+<p>
+
+This is distributed in the hope that it will be useful, but
+<em>without any warranty</em>; without even the implied warranty of
+merchantability or fitness for a particular purpose. See the GNU
+General Public License for more details.
+<p>
+
+A copy of the GNU General Public License is available as
+<file>/usr/share/common-licenses/GPL</file> in the Debian GNU/Linux
+distribution or on the World Wide Web at
+<tt>http://www.gnu.org/copyleft/gpl.html</tt>. You can also obtain it
+by writing to the Free Software Foundation, Inc.,
+51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+<p>
+
+<toc sect>
+
+<chapt>Introduction
+<p>
+
+Before the advent of <prgn/update-menus/, when the sysadmin
+installed a package onto a Debian system, they would need
+to edit various window manager config files to make the
+new program show up on, for example, <prgn/fvwm/'s menus. The
+menus could easily become out of sync with what programs
+were actually available, with some menu items that didn't
+work, and other programs that lacked a menu entry.
+update-menus and Debian's menu package aim to solve this
+problem.
+<p>
+
+<prgn/update-menus/ automatically generates menus of installed
+programs for window managers and other menu programs. It
+should be run whenever a menu file or menu-method file
+is changed. <prgn/update-menus/ will be ran automatically when
+Debian packages that contain menu files are installed or
+removed from the system. Users themselves can add/delete menu items,
+and should then run <prgn/update-menus/ as that user, thus creating
+window-manager startup files that are used in preference to the
+systemwide files.
+<p>
+
+One problem we ran into with menu-1.x (and before) was that the number of
+entries in any submenu vary wildly: on my system there are only two entries in
+<tt>/Applications/Editors</tt>, while I'm sure that other people have more like
+20 entries there. Many people complained about the fullness of certain
+submenus, citing scientific studies or personal experience to explain why
+overfull or underfull submenus are a bad thing. To overcome this, menu-2.0 now
+can optimize the tree itself, possibly subdividing for example the
+<tt>/Applications/Editors</tt> tree in, say <tt>Editors/Beginner</tt>,
+<tt>Editors/Experienced</tt>, or whatever, if there are many entries in that
+submenu, or maybe even totally removing <tt>/Applications/Editors</tt> on
+systems where there are few editors installed. To be able to do this, menu
+follows the information supplied to it in the `hints' variables (see paragraph
+below, or the hints chapter).
+
+<p>
+
+Each package that needs to add an entry to the menu tree,
+includes a menu file <file>/usr/share/menu/package-name</file>. In
+this file, it will have one line per menu entry, like this (copied
+from <file>/usr/share/menu/xbase</file>):
+<example>
+ ?package(xbase):command="/usr/bin/xedit" needs="X11" \
+ section="Applications/Editors" title="Xedit" \
+ hints="Beginner,Small"
+</example>
+This describes the type of interface Xedit needs (X11),
+the menu section the menu entry should be in,
+the menu text, and the command that should be executed.
+Also, it tells menu that, if <tt>/Applications/Editors</tt>
+is overfull, it could put Xedit in a <tt>Applications/Editors/Beginner</tt>
+or <tt>Applications/Editors/Small</tt> subsection.
+
+<p>
+
+Whenever <tt/root/ runs <prgn/update-menus/, it will check all
+menu files in <file>/etc/menu</file>, <file>/usr/lib/menu</file>,
+<file>/usr/share/menu</file>, and run the installation scripts that display
+managers like <prgn/fvwm2/ should provide in <file>/etc/menu-methods</file>.
+<p>
+
+The menu package itself provides a set of default menu files,
+for people to get the idea, and to speed up things a bit.
+(These files should be incorporated into the package.)
+<p>
+
+Note, that substantial and incompatible changes took place with the
+menu-1.0 release, while substantial features were added by the release
+of menu-2.0. This document describes menu-2.0.
+Menu-2.0 now doesn't accept the menu-methods written for menu-0.x, but
+for most window managers that still have those old menu-methods, I
+have put new style menu-methods in /usr/share/doc/menu/examples. Everything
+written for menu-1.0 will work with menu-2.0.
+<p>
+
+Most notable changes between menu-0.x and menu-1.x are listed in the file
+README.changes in the menu package, the features added by menu-2.0 can
+be summarised here: hints, and the menu-2 compat mode. (where lines
+are finished by a ';' instead of a newline).
+
+<chapt> Menu from the viewpoint of a user
+<p>
+<sect> How/when do the window manager startup files get created?
+<p>
+Basically, users don't need to know any of how and when the
+startup files are created, but they might be interested to know anyway.
+<p>
+When a package that wants to add something to the menu tree gets
+installed, it will run <prgn/update-menus/ in its <file/postinst/ script.
+Update-menus then reads in all menu files in <file>/etc/menu/</file>,
+<file>/usr/lib/menu</file>, <file>/usr/share/menu</file> and
+<file>/usr/share/menu/default</file>, and stores the menu entries of all
+installed packages in memory. Once that has been done, it will run the
+menu-methods in
+<file>/etc/menu-methods/*</file>, and pipe the information about the menu
+entries to the menu-methods on stdout, so that the menu-methods can
+read this. Each window-manager or other program that wants to have
+the Debian menu tree, will supply a menu-method script in
+<file>/etc/menu-methods/</file>. This menu-method then knows how to
+generate the startup-file for that window manager. To facilitate this
+task for the window-manager maintainers, menu provides a
+<prgn>install-menu</prgn> program. This program can generate the
+startupfiles for just about every window manager.
+
+<sect> Tuning of the generated window manager startup files
+<p>
+
+In principle this is a very window-manager specific business.
+But for all window managers (and others) applies:
+<p>
+The file to attack is the menu-method in
+<file>/etc/menu-methods/$wm</file>, with <tt/$wm/ the
+name of your window manager. However, if this menu-method
+<tt/!include/-s the <file/menu.h/ file (as it should), you can also edit
+that file, to make your changes work for every installed window
+manager.
+<p>
+If the menu-method file of your window manager does <tt/!include/ the
+<file/menu.h/ file, and makes proper use of the definitions in there,
+then you can look at the comments in that <file/menu.h/ file to see how
+you can make minor adjustments to the look of your menus in your
+window manager.
+<p>
+To generally change the menu tree, see the next section.
+
+<sect> Optimization of menu tree: hints
+<p>
+If <tt/hint_optimize=true/ has been set in a menu-method script (actually, that definition should appear in
+the <tt/!include/-ed <tt/menu.h/ file), then install-menu will try to
+alter the menu tree, to make every submenu have about the optimum
+number of menu entries (as specified by <tt/hints_nentry=.../). It
+will do that by removing under-full submenus (only if the `parent' of
+that submenu isn't itself already overfull), and by possibly creating
+new submenus, using hints. Note, however, that the optimization of the
+tree takes in principle exponential time, so menu speeds up the
+process, at the expense of occasionally not finding the best tree. So,
+the tree you are presented with may not be optimal. For tuning
+variables, see the hint_* variables in the last chapter.
+
+<chapt> The menu file
+<p>
+<sect> Location
+<p>
+Packages-provided menu files should be in <file>/usr/share/menu/</file>,
+unless the menu files are actually executable binaries, in which case they go
+in <file>/usr/lib/menu/</file>.
+System-local menu files should be in <file>/etc/menu/</file>.
+User-specific menu files should be in <file>~/.menu/</file>
+<sect> Syntax
+<p> The format is:
+<example>
+?package(package[,package2,...]): \
+ field1="value1"\
+ field2="value2"\
+</example>
+<p>
+Here is an example to describe the syntax of such a file:
+<example>
+?package(gnumeric):\ specifies what packages need to be installed
+ multiple requirements should be separated by
+ comma
+ needs="X11"\ what kind of environment this command expects
+ section="Applications/Office"\ in what section this menu entry should be
+ title="Gnumeric"\ the title of the menu entry
+ command="gnumeric" \ the command to run
+ hints="Gnome,Spreadsheets" \ some hints about menu placement.
+ icon="/usr/share/pixmaps/gnumeric.xpm" the path to the icon to use.
+</example>
+<p>
+A number sign ("#") can be used to include comments. An entry must be
+terminated by a newline; however you can use a backslash to escape a newline.
+<p>
+Values must be quoted with ", and meta-characters (", backslash, newline) must
+be escaped with a backslash.
+<p>
+You can include several entries in the same file.
+<p>
+The file must be encoded in 7-bit ASCII. This is necessary to accomodate
+window managers that do not support 8-bit encodings. However the translations
+are not limited in encoding.
+
+<p> <tt/?package(...)/ contains a comma-separated list of packages that
+need to be installed for the menu entry to be displayed. That should include
+the package containing the menu file and any packages necessary to run the
+command not depended on by the package nor essential. Users can use
+pseudo-package names starting with "<tt/local./" which are assumed to be always
+installed.
+<p> The fields <tt/needs/, <tt/section/, <tt/title/ and <tt/command/ are
+mandatory. Other fields are optional. Custom fields are supported, so
+you can add new fields for you own purpose. If a field is specified multiple
+times in a menu entry, the last instance will be used.
+
+<sect> The <tt/title/ field
+<p>
+
+The <tt/title/ must follow the following requirements:
+<enumlist>
+ <item> It must be short. There is an optional <tt/longtitle/ field for
+ users that want longer titles.
+ <item> It must be properly capitalized. Use <em/Emacs/ and not <em/emacs/.
+ <item> It must be unique. Two entries must not have the same title.
+</enumlist>
+
+<sect> The <tt/needs/ field
+<p>
+
+The following <tt/needs/ are documented for use in the Debian menu.
+<enumlist>
+ <item> <tt/X11/: if this program runs under X11.
+ <item> <tt/text/: if it runs under a terminal. X11 window managers will
+ spawn an X terminal emulator.
+ <item> <tt/vc/: if it runs under a linux virtual console but not under a X
+ terminal emulator.
+ <item> <tt/wm/: if it is a X11 window manager. The current window manager
+ will exec(2) this program to avoid "Another window manager is running"
+ errors.
+</enumlist>
+<p>
+
+A menu manager can use a special <tt/needs/ value reflecting the menu manager
+name for menu entries that must only be displayed in this menu manager.
+Examples include <tt/fvwm/ modules, <tt/dwww/ menu entries.
+<p>
+A program like gnuplot which can be run on X11 as well as on a text
+terminal should <em/not/ have an extra entry with <tt/needs=X11/
+with an hard-coded call to an X terminal emulator, because this would defeat
+the configuration mechanism of menu that allow to choose which window manager
+is called.
+<p>
+
+On the other hand, if a program (like <prgn/emacs/) can be run as real X
+application as well as in a terminal, two entries should be listed,
+otherwise the program will always be run in an <prgn/xterm/ (or
+<prgn/rxvt/). However, two entries are not allowed to have the same title. The
+title must be unique.
+<p>
+<sect> The <tt/section/ field
+<p>
+The <tt/section/ field holds a slash-separated list of hierarchical sections
+components.
+<p>
+The <em/authoritative list of Debian's menu structure/ is maintained
+in the Debian Menu sub-policy document which is part of the Debian
+Policy package. The current menu structure was drafted in 2006 by Linas
+Zvirblis with input from the debian-devel mailing list.
+<p>
+The menu structure below is included only for convenience and is not
+authoritative. If it disagrees with the structure in the Debian Menu
+sub-policy, please send a wishlist bug to the <tt/menu/ package.
+<p>
+Packages must be placed in leaf sections.
+Please do <em/not/ put your packages into any other sections.
+<p>
+<taglist>
+ <tag>Applications</tag>
+ <item>
+ <p>Normal applications</p>
+ <p><taglist>
+ <tag>Accessibility</tag>
+ <item>
+ <p>Tools to aid people with disabilities or for machines
+ lacking usual input devices.</p>
+ <p>Examples: gok, yasr, dasher.</p>
+ </item>
+ <tag>Amateur Radio</tag>
+ <item>
+ <p>Anything relating to HAM radio.</p>
+ <p>Examples: baken, hamsoft, twlog</p>
+ </item>
+ <tag>Data Management</tag>
+ <item>
+ <p>Interactive database programs, collection managers,
+ address books, bibliography tools, etc.</p>
+ <p>gaby, alexandria, mdbtools</p>
+ </item>
+ <tag>Editors</tag>
+ <item>
+ <p>Editors, other than office word processors, for
+ text-based information.</p>
+ <p>Examples: ksubtile, nano, hexedit</p>
+ </item>
+ <tag>Education</tag>
+ <item>
+ <p>Educational and training softwares.</p>
+ <p>Examples: gtypist, gcompris, quiz</p>
+ </item>
+ <tag>Emulators</tag>
+ <item>
+ <p>Software that allows you to run non-native
+ software or more than one OS at a time.</p>
+ <p>Examples: wine, dosemu, qemu</p>
+ </item>
+ <tag>File Management</tag>
+ <item>
+ <p>Tools for file management, archiving,
+ searching, CD/DVD burning, backup, etc.</p>
+ <p>Examples: file-roller, mc, baobab</p>
+ </item>
+ <tag>Graphics</tag>
+ <item>
+ <p>2D and 3D graphics manipulation software.</p>
+ <p>Examples: gimp, inkscape, imagemagick</p>
+ </item>
+ <tag>Mobile Devices</tag>
+ <item>
+ <p>Software that allows you to interface with mobile
+ devices (phones, PDAs, etc.).</p>
+ <p>Examples: kandy, gnokii, gnome-pilot</p>
+ </item>
+ <tag>Network</tag>
+ <item>
+ Network related software. This is a three-level
+ section, do not put entries directly here.
+ <taglist>
+ <tag>Communication</tag>
+ <item>
+ <p>Mail, USENET news, chat, instant messaging,
+ IP telephony, video conferencing software, etc.</p>
+ <p>Examples: xchat, gaim, mutt</p>
+ </item>
+ <tag>File Transfer</tag>
+ <item>
+ <p>File transfer software such as download
+ managers, FTP clients, P2P clients, etc.</p>
+ <p>Examples: amule, gftp, d4x</p>
+ </item>
+ <tag>Monitoring</tag>
+ <item>
+ <p>Network monitoring software</p>
+ <p>Examples: gip, ettercap, iptstate</p>
+ </item>
+ <tag>Web Browsing</tag>
+ <item>
+ <p>Web browsers, tools for offline browsing, etc.</p>
+ <p>Examples: elinks, epiphany-browser, webhttrack</p>
+ </item>
+ <tag>Web News</tag>
+ <item>
+ <p>Web feed (RSS, Atom, etc.) and podcast aggregators.
+ </p>
+ <p>Examples: akregator, kitty, liferea</p>
+ </item>
+ </taglist>
+ </item>
+ <tag>Office</tag>
+ <item>
+ <p>Office suites, word processors, spreadsheets,
+ CRM, ERP, financial sofware, etc.</p>
+ <p>Examples: openoffice.org, tinyerp-client, gnucash</p>
+ </item>
+ <tag>Programming</tag>
+ <item>
+ <p>IDEs, debuggers, etc.</p>
+ <p>Examples: anjuta, gdb, eclipse</p>
+ </item>
+ <tag>Project Management</tag>
+ <item>
+ <p>Timetable managers, group task trackers,
+ bug tracking software, etc.</p>
+ <p>Examples: planner, bugzilla, gnotime</p>
+ </item>
+ <tag>Science</tag>
+ <item>
+ Scientific and engineering-related software.
+ <taglist>
+ <tag>Astronomy</tag>
+ <item>
+ <p>Astronomy-related software.</p>
+ <p>Examples: celestia, spacechart, stellarium</p>
+ </item>
+ <tag>Biology</tag>
+ <item>
+ <p>Biology-related software.</p>
+ <p>Examples: arb, ncbi-tools-x11, seaview</p>
+ </item>
+ <tag>Chemistry</tag>
+ <item>
+ <p>Chemistry-related software.</p>
+ <p>Examples: chemtool, kalzium, xdrawchem</p>
+ </item>
+ <tag>Data Analysis</tag>
+ <item>
+ <p>Software designed for processing, extracting,
+ and presenting generic scientific data.</p>
+ <p>Examples: fityk, ygraph, mn-fit</p>
+ </item>
+ <tag>Electronics</tag>
+ <item>
+ <p>Circuit design tools, simulators and
+ assemblers for microprocessors, etc</p>
+ <p>Examples: geda, gnucap, tkgate</p>
+ </item>
+ <tag>Engineering</tag>
+ <item>
+ <p>CAD, UML tools, diagram-drawing and
+ other engineering-related software.</p>
+ <p>Examples: tcm, dia, qcad</p>
+ </item>
+ <tag>Geoscience</tag>
+ <item>
+ <p>Geoscience-related software.</p>
+ <p>Examples: earth3d, qgis, therion</p>
+ </item>
+ <tag>Mathematics</tag>
+ <item>
+ <p>Mathematics-related software.</p>
+ <p>Examples: gcalctool, snappea, xeukleides</p>
+ </item>
+ <tag>Medicine</tag>
+ <item>
+ <p>Medicine-related software.</p>
+ <p>Examples: mssstest, gnumed-client, xmedcon</p>
+ </item>
+ <tag>Physics</tag>
+ <item>
+ <p>Physics-related software.</p>
+ <p>Examples: kxterm, ifrit, paw</p>
+ </item>
+ <tag>Social</tag>
+ <item>
+ <p>Social sciences-related software.</p>
+ <p>Examples: gnomesword, hanzim, bibletime</p>
+ </item>
+ </taglist>
+ </item>
+ <tag>Shells</tag>
+ <item>
+ <p>Various shells to be used inside a terminal emulator.</p>
+ <p>Examples: bash, ksh, zsh</p>
+ </item>
+ <tag>Sound</tag>
+ <item>
+ <p>Sound players, editors, and rippers/recorders.</p>
+ <p>Examples: beep-media-player, grip, audacity</p>
+ </item>
+ <tag>System</tag>
+ <item>
+ System related software.
+ <taglist>
+ <tag>Administration</tag>
+ <item>
+ <p>Administrative and system configuration utilities,
+ also tools for personal user settings.</p>
+ <p>Examples: gnome-control-center, configure-debian, gksu</p>
+ </item>
+ <tag>Hardware</tag>
+ <item>
+ <p>Tools for manipulating specific hardware,
+ especially non-standard laptop hardware.</p>
+ <p>Examples: toshutils, nvclock-gtk, nvtv</p>
+ </item>
+ <tag>Language Environment</tag>
+ <item>
+ <p>This section is reserved for language-env as a
+ special case.</p>
+ </item>
+ <tag>Monitoring</tag>
+ <item>
+ <p>System information and monitoring tools, log viewers,
+ etc.</p>
+ <p>Examples: top, hal-device-manager, gtkdiskfree</p>
+ </item>
+ <tag>Package Management</tag>
+ <item>
+ <p>Package managers and related tools.</p>
+ <p>Examples: aptitude, deborphan, smartpm</p>
+ </item>
+ <tag>Security</tag>
+ <item>
+ <p>Security, cryptography and privacy related software,
+ antiviruses, tools to track and report bugs, etc.</p>
+ <p>Examples: gpgkeys, bastille, avscan</p>
+ </item>
+ </taglist>
+ </item>
+ <tag>Terminal Emulators</tag>
+ <item>
+ <p>Graphical terminal emulators.</p>
+ <p>Examples: xterm, gnome-terminal, rxvt</p>
+ </item>
+ <tag>Text</tag>
+ <item>
+ <p>Text oriented tools like dictionaries, OCR,
+ translation, text analysis software, etc.</p>
+ <p>Examples: kdrill, stardict, turkey</p>
+ </item>
+ <tag>TV and Radio</tag>
+ <item>
+ <p>TV-in, TV-out, FM radio, teletext browsers, etc.</p>
+ <p>Examples: gradio, gatos, alevt</p>
+ </item>
+ <tag>Viewers</tag>
+ <item>
+ <p>Software for viewing images, documents
+ and other (non-video) media.</p>
+ <p>Examples: gqview, evince, gthumb</p>
+ </item>
+ <tag>Video</tag>
+ <item>
+ <p>Video players, editors, and rippers/recorders.</p>
+ <p>Examples: istanbul, totem, kino</p>
+ </item>
+ <tag>Web Development</tag>
+ <item>
+ <p>Software for web site editing, web
+ programming, and site administration.</p>
+ <p>Examples: bluefish, screem, gphpedit</p>
+ </item>
+ </taglist>
+ </p>
+ </item>
+ <tag>Games</tag>
+ <item>
+ Games and recreations
+ <taglist>
+ <tag>Action</tag>
+ <item>
+ <p>Games that involve a lot of action
+ and require fast reflexes.</p>
+ <p>Examples: xsoldier, supertux, xmoto</p>
+ </item>
+ <tag>Adventure</tag>
+ <item>
+ <p>Role playing and adventure games,
+ interactive movies and stories, etc.</p>
+ <p>Examples: beneath-a-steel-sky, egoboo, kq</p>
+ </item>
+ <tag>Blocks</tag>
+ <item>
+ <p>Tetris-like games involving falling blocks.</p>
+ <p>Examples: crack-attack, frozen-bubble, netris</p>
+ </item>
+ <tag>Board</tag>
+ <item>
+ <p>Games played on a board.</p>
+ <p>Examples: phalanx, xshogi, xboard</p>
+ </item>
+ <tag>Card</tag>
+ <item>
+ <p>Games involving a deck of cards.</p>
+ <p>Examples: pysol, ace-of-penguins, xpat2</p>
+ </item>
+ <tag>Puzzles</tag>
+ <item>
+ <p>Tests of ingenuity and logic.</p>
+ <p>Examples: xmpuzzles, sgt-puzzles, enigma</p>
+ </item>
+ <tag>Simulation</tag>
+ <item>
+ <p>Simulations of the real world
+ in all detail and complexity.</p>
+ <p>Examples: flightgear, torcs</p>
+ </item>
+ <tag>Strategy</tag>
+ <item>
+ <p>Games involving long-term strategic thinking.</p>
+ <p>Examples: wesnoth, widelands, netpanzer</p>
+ </item>
+ <tag>Tools</tag>
+ <item>
+ <p>Server browsers, configurators, editors, and other
+ game-related tools that are not games themselves.</p>
+ <p>Examples: xqf, crystalspace</p>
+ </item>
+ <tag>Toys</tag>
+ <item>
+ <p>Amusements, eye-candy, entertaining
+ demos, screen hacks (screensavers), etc.</p>
+ <p>Examples: xdesktopwaves, xphoon, xpenguins</p>
+ </item>
+ </taglist>
+ </item>
+ <tag>Help</tag>
+ <item>
+ <p>programs that provide user documentation</p>
+ <p>Examples: debian-reference, apt-howto, dhelp</p>
+ </item>
+ <tag>Screen</tag>
+ <item>
+ Programs that affect the whole screen.
+ <taglist>
+ <tag>Saving</tag>
+ <item>
+ <p>Tools for blanking the screen. Entries of screen hacks and
+ configuration GUIs should go to other appropriate sections.
+ </p>
+ <p>Examples: xscreensaver, xlockmore</p>
+ </item>
+ <tag>Locking</tag>
+ <item>
+ <p>Tools for locking the screen.</p>
+ <p>Examples: xscreensaver, xlockmore</p>
+ </item>
+ </taglist>
+ </item>
+ <tag>Window Managers</tag>
+ <item>
+ <p>X window managers.</p>
+ <p>Examples: fluxbox, metacity, waimea</p>
+ </item>
+ <tag>FVWM Modules</tag>
+ <item>
+ <p>FVWM-based window manager modules. As only modules related to
+ the running window-manager are displayed, do not create
+ subsections for specific window-managers.</p>
+ <p>Examples: fvwm, fvwm-gnome, fvwm95</p>
+ </item>
+ <tag>Window Maker</tag>
+ <item>
+ <p>This section is reserved for wmaker as a special case.</p>
+ <p>All wmaker specific entries must go here.</p>
+ </item>
+</taglist>
+<p>
+Users wanting to access some menu entries quickly can also put
+them in the root menu. This is done by using <em>section="/"</em>.
+Package-provided menu entries must never use this feature.
+<sect> The <tt/command/ field
+<p>
+The command field holds the command that should be executed when the
+menu entry is selected. Commands will be executed with <prgn/sh -c/
+using
+<example>
+execl("/bin/sh","sh","-c",command)
+</example>
+or the equivalent.
+
+<sect> The <tt/icon/ field
+<p>
+
+Please make sure the icons you specify are always available on the
+system. So, if you want to have an icon with your menu entry, the
+preferred method is to supply the icon with that package.
+Icons should generally be installed in the directory
+<file>/usr/share/pixmaps</file>.
+<p>
+
+Debian package maintainers should ensure that any icons they include
+for use in the Debian menus conform to the following points:
+<enumlist>
+ <item>The icons should be in xpm format.
+ <item>The icons may not be larger than 32x32 pixels, although smaller
+ sizes are ok.
+ <item>The background area of the icon should be transparent, if
+ possible.
+</enumlist>
+<p>
+
+You can provide both 16x16 and 32x32 pixels icons using the variables icon16x16
+and icon32x32 so that the user can configure menu to use one or the other.
+<p>
+
+If you, as a system administrator, don't like the icons in the menus, simply
+change the <tt/icon()/ function from the file
+<file>/etc/menu-methods/menu.h</file>, and run <prgn/update-menus/.
+<p>
+
+<sect> The <tt/hints/ field
+<p>
+Hints are used to help menu structure generated menus in a more optimal way.
+For example:
+<p>
+<example>
+?package(emacs20):\
+ needs="x11"\
+ hints="Big,Expert,Featureful" \
+ section="Applications/Editors"\
+ title="Emacs 20"\
+ command="/usr/bin/emacs20"\
+ icon=/usr/share/emacs/20.3/etc/emacs.xbm
+</example>
+The above hints will tell <tt/menu/ to consider grouping <tt/emacs/
+together with other editors that are marked similar. For example, if
+<tt/vi/ on your system has a hints="Small,Expert" definition, and
+there are too many entries in the <tt>/Applications/Editors</tt> menu entry,
+then menu will consider creating a <tt>/Applications/Editors/Expert</tt>
+submenu, and put both <tt/vi/ and <tt/emacs/ in it. (Of course, only if you
+have <tt/hint_optimize=true/ in your <file>/etc/menu-methods/menu.h</file>
+file).
+
+<sect> Entries for menu sections.
+<p>
+It is possible to add entries for menu sections, but it is not mandatory
+since section entries are created automatically.
+
+However, this allows to specify fields for sections like <tt/icon/ and
+<tt/sort/.
+
+The syntax for menu sections entries is the same as for regular entries,
+the <tt/section/ field holding the name of the parent section.
+
+For example
+<example>
+?package(local.games): needs="text" title="Games" section="/" sort="001"
+</example>
+will sort <tt/Games/ first.
+
+<sect>Fvwm's task and title bars
+<p>
+
+The problem with the stuff in the task bar is that all items are
+displayed all of the time. So, if 1500 Debian packages all were to
+register a button, the buttons would quickly fill the screen, making
+the exercise useless. The few applications that are considered
+important enough to be listed in the task bar usually vary widely on
+each system, making it impossible to select a ``happy few'' apps that
+are allowed there on every Debian system. If you (as a local system
+administrator) want your <prgn/fvwm2/ to have a few buttons, you can
+install files for those packages in <tt>/menu/$package</>, containing
+a menu entry like this:
+<example>
+ ?Package(xmball):needs=button\
+ section=Games/Puzzles\
+ icon=path-to-pixmap.xpm\
+ title="Xmball"\
+ command=/usr/games/xmball
+</example>
+Then, do the following:
+<example>
+ cd /etc/menu-methods/
+ cp fvwm2 fvwm2button
+ vi fvwm2button
+</example>
+and remove all the "supported" entries, adding the one below. For the rest,
+leave everything the same except those listed below.
+<example>
+ supported
+ button="+ Style \"" $title "\" TitleIcon" $icon " Exec " $command "\n"
+ endsupported
+ startmenu: "AddToTitlebar \n"
+ endmenu: "\n"
+ submenutitle:""
+ mainmenu:
+ genmenu: "buttondefs.hook"
+</example>
+(Of course regular users (not system administrators) can also specify
+`buttonfiles' in their ~/.menu/ directory).
+
+<chapt>What packages with applications should do
+<sect> Providing a menu file
+<p>
+A package should provide a menu file
+<file>/usr/share/menu/&lt;package-name&gt;</file> that contains
+information about each program it likes to make available in the
+menus.
+<p>
+<sect> Adding a hook for dpkg in your packages
+<p>
+The <tt/postinst/ script and the <file/postrm/ script of the package
+should include the line
+<example>
+ if test -x /usr/bin/update-menus; then update-menus; fi
+</example>
+If you are using <prgn/debhelper/, the program <prgn/dh_installmenu/
+can do it for you.
+<p>
+
+<chapt>What packages with menu managers should do
+<p>
+
+Each package containing a <em/menu manager/ (i.e., a program that can
+display a menu) should provide a script or program in
+<file>/etc/menu-methods/</> that can read the menu files. This script
+will be executed by <prgn/update-menus/, which will feed the menu
+entries to be installed to your script via standard input (stdin).
+<p>
+
+The scripts in <file>/etc/menu-methods/</> should be configuration
+files, so the user can tune the behaviour of the script, and they must always
+include the <file>/etc/menu-methods/menu.h</> configuration file at the beginning
+with the command <tt>!include menu.h</>
+
+For the same reason, scripts in <file>/etc/menu-methods/</> are requested
+to use the following configurable functions:
+
+<tt/title()/ for the title (in place of <tt/$title/),
+<tt/icon()/ for the icon (in place of <tt/$icon/),
+<tt/term()/ for running <tt/text/ command under <tt/X11/.
+<tt/sections_translations()/ for the list of translations of sections name
+available. This later one is only defined if you <tt>!include lang.h</tt>
+<p>
+
+Good examples for these scripts for nearly all Debian window managers
+are included in the <tt/menu/ package in
+<file>/usr/share/doc/menu/examples</file>. Note that while working on your script,
+you can use the tricks described in "The internals of the menu
+package", section "The update-menus program", to run just your script,
+instead of having update-menus run all scripts (can save quite a lot
+of time).
+<p>
+
+This script should not be executable in the package. Instead
+the <tt/postinst/ should add the execute bit and then run
+<prgn/update-menus/ (if it is executable).
+<p>
+
+Similarly, the <file/postrm/ script when called with option ``remove'' should
+remove the execute bit and run <prgn/update-menus/ (if it is executable).
+<p>
+
+Here is an example of such a <file/postrm/ script using <prgn/sh/:
+<example>
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/#PACKAGE#
+ case "$1" in
+ remove)
+ if [ -f $inst ]; then
+ chmod a-x $inst
+ if [ -x /usr/bin/update-menus ]; then update-menus ; fi
+ fi
+ ;;
+ purge)
+ #remove the files that install-menu creates:
+ rm -rf /var/lib/foo-wm/menu
+ ;;
+ upgrade);;
+ *)
+ echo "postrm called with unknown argument \`$1'" >&2
+ exit 0
+ ;;
+ esac
+</example>
+
+And here is a good example for a <file/postinst/ script:
+<example>
+ #!/bin/sh
+ set -e
+ inst=/etc/menu-methods/#PACKAGE#
+ if [ -f $inst ]; then
+ chmod a+x $inst
+ if [ -x /usr/bin/update-menus ]; then
+ update-menus
+ fi
+ fi
+</example>
+If you are using <prgn/debhelper/, the program <prgn/dh_installmenu/
+can help you do it.
+<p>
+Please, do not make your package <em/depend/ on the menu package! The
+preferred way of telling dpkg that your wm can cooperate with menu is:
+<example>
+ Suggests: menu
+</example>
+Please only consider using "depends" if you feel providing reasonable
+defaults for systems without <prgn>menu</prgn> will make life very difficult
+for you.
+<p>
+
+<chapt>How a user can override the menus
+<p>
+
+<sect>Configuring the menus
+<p>
+
+Users can specify their own menu entries in the <file>~/.menu</> directory.
+The files can have an arbitrary file name as long as the new syntax
+for the menu entries is used. They should start with either
+<example>
+ ?package(installed-package):
+</example>
+or
+<example>
+ ?package(local.mystuff):
+</example>
+if it's something that isn't ``debian-officially'' installed. (Any
+``package'' that starts with ``<tt/local./'' is considered installed.)
+<p>
+
+If users want to have their own menu methods, they should create
+a <file>~/.menu-methods</> directory and put all their menu methods in it.
+(If <file>~/.menu-methods</> exists,
+<file>/etc/menu-methods</> will not be searched when a user runs
+<prgn/update-menus/).
+<p>
+
+A system administrator should place system-wide menu entries in
+<file>/etc/menu</> (not in <file>/usr/share/menu/package</>, since these
+files will probably be overwritten by a package upgrade).
+<p>
+
+<sect>Specifying that a menu entry should not be displayed
+<p>
+
+If a user wants to remove the entries of <tt/package/ from the system menu then
+this will do the trick:
+<example>
+ echo -n > ~/.menu/package
+</example>
+The zero-size file will tell <prgn/update-menus/ that the
+corresponding package should not have any menu entries listed.
+
+A system administrator can remove menu entries system-wide with
+<example>
+ echo -n > /etc/menu/package
+</example>
+
+<p>
+
+<sect> Including other files
+<p>
+
+<var> Historical comment by Joost:</var>
+<p>
+<var>
+More out of curiosity than anything else, I recently read the KDE
+mailing list. In it I saw some discussion about how good the Debian
+menu system is (whow, thanks, guys!), but one person found a missing
+feature: s/he said you couldn't include other files in the user
+menu files. Well, actually, it was already possible, but not very well
+documented.
+</var>
+<p>
+To include the contents of the file <file>/usr/share/menu/somefile</>,
+add this to your menu file:
+
+<example>
+!include /usr/share/menu/somefile
+</example>
+
+Apart from that, it is of course possible to make the menu entry file
+executable (<tt>chmod a+x ~/.menu/package</>), and do something like
+<example>
+#!/bin/sh
+cat /usr/share/menu/somefile
+sed -e "/unwanted_entry/s/?package(/?package(notinstalled./" \
+ /usr/share/menu/someotherfile
+</example>
+to get the same effect, with the added flexibility of being able to
+filter out unwanted lines.
+
+<chapt>The internals of the menu package
+<p>
+
+<sect>The update-menus program
+<p>
+
+On startup, update-menus checks the file
+<file>/var/run/update-menus.pid</> and the pid in it. If there's an
+<prgn/update-menus/ process with that pid it kills it.
+If <file>/var/lib/dpkg/lock</> exists, it checks to see if dpkg supports
+triggers. If so, it uses dpkg-trigger to trigger a real update-menus run later.
+Otherwise, it forks to background and returns control to dpkg. The background
+process checks the <file>/var/lib/dpkg/lock</> file approx. every two second
+until the file's gone.
+<p>
+
+Once it's decided to run, whether in the background after dpkg exits, or in
+the foreground when used with a trigger-capable dpkg,
+<prgn/update-menus/ reads the menu-entry files in
+the following directories: <file>/etc/menu</>, <file>/usr/lib/menu</>,
+<file>/usr/share/menu</>, <file>/usr/share/menu/default</>.
+(if a user runs <prgn/update-menus/, it will add <file>~/.menu</> to the
+front of that list). For every menu entry line in each file it checks
+if the corresponding package is installed. The menu entries of all
+packages marked as installed by dpkg
+are added together in one big buffer that is kept in memory (exception:
+executable menu entry files are executed, and stdout is placed in
+the buffer).
+<p>
+Once it's read all menu entry files, <prgn/update-menus/ starts all
+executable scripts in <file>/etc/menu-methods/</>, hands the scripts the
+previously created buffer via stdin. (If <prgn/update-menus/ is run by
+a user, it will first try to run the scripts in <file>~/.menu-methods</>, and
+only if that directory doesn't exist, it will run the scripts in
+<file>/etc/menu-methods</>).
+<p>
+
+Note that as an aid to debugging, one can use
+<example>
+update-menus --stdout > /tmp/menu-stdin
+</example>
+and then view the file <file>/tmp/menu-stdin</> to see exactly what
+<prgn/update-menus/ handed the menu-methods on their stdin.
+<p>
+
+This may also be useful for people writing <file>/etc/menu-method/*</> scripts:
+Running <prgn/update-menus/ every time you changed something in the script may
+be quite time-consuming. So, it's much easier to run
+<prgn/update-menus --stdout/ once, and then run
+<example>
+ /etc/menu-methods/mymethod < /tmp/menu-stdin
+</example>
+(and, if that also takes too long, just try editing /tmp/menu-stdin,
+and removing 90% or so of all entries)
+
+<sect>The install-menu program
+<p>
+
+The files <file>/etc/menu-methods/$wm</> are executable config
+files that start with the line
+<example>
+ #!/usr/bin/install-menu
+</example>
+and thus start that program, handing it the configuration file for the
+specific window manager in the first command line argument. This
+configuration consists of:
+<enumlist>
+<item>the compatibility mode ("menu-1" or "menu-2").
+<item>where the various files should be stored/read.
+<item>what "needs" are supported, and what wrapper files should
+ be used for each "type".
+<item>how to remove the generated menu files.
+</enumlist>
+See <file>/usr/share/doc/menu/examples/</> of the menu package for more
+comments.
+<p>
+
+Options to <prgn/install-menu/:
+<example>
+ --remove Remove the menu files instead of generating them.
+ --verbose Output outline of operations that are performed.
+</example>
+<p>
+
+Some window managers don't support an `include'-like statement in their
+<file/system.*rc/ files (like <prgn/m4/ or <prgn/cpp/ preprocessing); they
+cannot read the <file/menudefs.hook/ file generated by install-menu from their
+<file/system.*rc/ config file. To still be able to use them,
+<prgn/install-menu/ will copy the file <file>$path/$examplercfile</file> to
+<file>$path/$rcfile</file> (with <file/$examplercfile/ and <file/$rcfile/
+defined in the <prgn/install-menu/ config file, and <file/$path/ either the
+<file/$rootprefix/ or <file>${HOME}/$userprefix</file>, depending on whether
+root or user executed the file.), and replace all occurrences of
+``install-menu-defs'' with the <file/$genmenu/ file it just
+generated.
+<p>
+As an example, consider the following:
+<tt>examplercfile=system.foo-wm-example</tt>,
+<tt>rcfile=system.foo-wm</tt>, <tt>genmenu=menudefs.hook</tt> and
+<tt>rootprefix=/var/lib/foo-wm/menu</tt>. Now, if <prgn/install-menu/ gets run, it
+will first generate the file
+<file>/var/lib/foo-wm/menu/menudefs.hook</file>. Next, it will line-by-line
+read the file <file>/var/lib/foo-wm/menu/system.foo-wm-example</file> and copy
+its contents to <file>/var/lib/foo-wm/menu/system.foo-wm</file>, replacing
+every occurrence of the string <tt>install-menu-defs</tt> with the
+contents of the file <file>/var/lib/foo-wm/menu/menudefs.hook</file>.
+<p>
+
+To activate the file copying in this way, simply define the <tt/$examplercfile/
+and <tt/$rcfile/ variables in the <prgn/install-menu/ configuration file (for
+example, see <file>/etc/menu-methods/fvwm</file>), and make sure there is a
+<file>$path/$examplercfile</> (<tt>$path</> being either <tt/$rootprefix/, or
+<file/$userprefix/.)
+<p>
+
+If you are writing a menu method, you can use the following to make
+debugging it somewhat more easily:
+<enumlist>
+<item>use <tt>update-menus --stdout > /tmp/menu-stdin </tt>
+to create a list of menu entries in <file>/tmp/menu-stdin</file>
+and then
+<item>you can run just your menu-method with (if it's called wm):
+<example>
+ ./wm -v < /tmp/menu-stdin
+</example>
+</enumlist>
+<p>
+
+<sect>The install-menu config script definitions
+<p>
+
+The menu-methods in <file>/etc/menu-methods/*</> are basically made up of
+a lot of ``tag=string'' definitions, telling <prgn/install-menu/
+how to generate a <file/system.${wm}rc/ script. This way you can tune
+the look of generated <file/system.${wm}rc/ to your needs.
+<p>
+
+In the following, something like
+<example>
+ treewalk="c(m)"
+</example>
+means that the treewalk variable by default has the value "c(m)".
+<p>
+
+For examples of what these scripts can look like, see
+<file>/usr/share/doc/menu/examples/*</>.
+<p>
+
+<taglist>
+<tag><tt/compat="menu-1"/
+<item>
+Two mode are defined:
+<taglist>
+<tag> <tt/"menu-1"/ <item> menu directives are terminated by an end-of-line
+character. </item>
+<tag> <tt/"menu-2"/ <item> menu directives are terminated by a semicolon
+character. </item>
+</taglist>
+This must be just after the <tt>!include "menu.h"</tt> directive so that
+<file>menu.h</file> can use its own compat mode.
+
+<tag><tt/outputencoding="UTF-8"/
+<item> Set the encoding used for output files. Use <tt/iconv --list/ to get
+the list of supported encoding. Useful values include "UTF-8" and
+"ISO-8859-1". The special value "LOCALE" means that the current locale
+encoding will be used. If set to an empty string, no translations are
+performed. This is the default.
+
+<tag><tt/outputlanguage=""/
+<item>
+If set to "C" automatic translations will be disabled. Note that you
+can still use translate() to perform explicit translation.
+
+<tag><tt/supported/
+<tag><tt/endsupported/
+<item>
+Between the <tt/supported/ and <tt/endsupported/ keywords you define
+what "needs" are supported by this window manager. So, the following
+is an example for a wm that supports both needs=x11 and needs=text:
+<example>
+ function q($s) = "\"" esc($s,"\\\"") "\""
+ supported
+ x11 =" ShowEntry(" q(title()) ", " q($command) ")"
+ text=" ShowEntry(" q(title()) ", " q(term()) ")"
+ endsupported
+</example>
+
+For the variable substitution (and functions, not shown above), see
+the next paragraph. In the above example, you'll notice that for the
+menu entries that "need=text", the term() function is used. This is a
+user-supplied function that will run $command in a X terminal emulator. Also,
+as X11 is higher up in the supported list above than text, a package that
+supplies both a "needs=X11" and a "needs=text" entry will have the needs=X11
+entry installed, in favour of the needs=text entry. You can continue lines on
+the next line with a backslash ("\"), but make sure you don't add any spaces
+after the backslash.
+
+<tag><tt/startmenu=""/
+<tag><tt/endmenu=""/
+<tag><tt/submenutitle=""/
+<item>
+These define what to print for the beginning/end of a menu, and
+how to the print a menu entry that pops up another menu.
+They are substituted the same way as the "supported" stuff is;
+see next paragraph.
+
+<tag><tt/treewalk="c(m)"/
+<item>
+This string defines in what order to dump the <tt/$startmenu/, <tt/$endmenu/,
+and <tt/$submenutitle/ (and its children). Each char in the string
+refers to:
+<example>
+ c : dump children of menu.
+ m : dump this menu's $submenutitles
+ ( : dump $startmenu
+ ) : dump $endmenu
+ M : dump all $submenutitles of this menu and this menu's children.
+</example>
+
+The default is "c(m)". For olvwm, one needs: "(M)"
+
+<tag><tt/genmenu=""/
+<item>
+The menu file to generate (usually something like <tt>system."$wm"rc</>).
+The file itself may depend on the level or title that is currently
+being worked on, like
+<example>
+ genmenu="/subdir/" replacewith($section," ","_") "/rc.menu"
+</example>
+(Substitution works just like in the supported stuff, see above).
+Note that the files made this way are truncated upon
+opening, so if you have a genmenu like the example above, then
+your <tt/endmenu=/ will override the startmenu stuff (but you probably
+only need one of the two anyway).
+
+<tag><tt>rootsection="/Debian"</>
+<item>
+the prefix every <tt/$section/ variable gets.
+
+<tag><tt/prerun=""/
+<tag><tt/postrun=""/
+<item>
+The commands to run before and after, respectively, the actual generation of the
+<file/menudefs.hook/ (genmenu) file. Commands will be executed by <prgn/sh/.
+Example:
+<example>
+ prerun="rm -rf " prefix() "/*"
+ postrun="killall -USR1 fvwm2"
+</example>
+(Substitution works just like the supported stuff, see below).
+<tag><tt/preruntest=""/
+<item>
+Just like prerun, but if the return value of the command is non-zero,
+menu will quit.
+<tag><tt/also_run=""/
+<item>
+If non-zero, install-menus will, after generating the output files,
+also load the file also_run, and use the new assignments to treewalk,
+genmenu, etc. to generate more output. This second time, variables like
+<tt/prerun/ and all of the hint stuff are ignored.
+<p>
+
+<tag><tt/removemenu=""/
+<item>
+The command to run when the menu-method is invoked with the option
+<tt/--remove/. This should remove all the autogenerated menu files.
+If this option is not present, then install menu will remove
+<tt/genmenu/ if it is a constant string and <tt/rcfile/ if it is
+defined, and try to remove <tt/prefix()/ if it is empty.
+
+<tag><tt/onlyrunasroot=false/
+<tag><tt/onlyrunasuser=false/
+<item>
+If <tt/onlyrunasroot/ is set to true, <prgn>install-menu</> will quit silently
+when run as a user. Similarly for <tt/onlyrunasuser/.
+
+<var><tt/onlyrunasroot/ is deprecated since it is simpler to just not define
+<tt/userprefix/.</var> On the other hand, <tt/onlyrunasuser/ might be needed
+if you use <tt/rcfile/ since <tt/rootprefix/ is used as a fallback location
+for the template.
+
+<tag><tt>preoutput="#Automatically generated file. Do not edit (see /usr/share/doc/menu/html)\n\n"</tt>
+<tag><tt>postoutput=""</tt>
+<item>
+Text to put at the beginning resp. end of the generated file ($genmenu).
+
+<tag><tt/command=""/
+<item>
+A command to run instead of <prgn/install-menus/. This command used
+to be needed to get around limitations due to compatibility stuff. But
+that compatibility with pre menu-1 stuff has been dropped, and isn't
+needed any more.
+<p>
+
+Example:
+<example>
+ command="cat > /tmp/menu-stdin"
+</example>
+
+<tag><tt/hotkeyexclude=""/
+<item>
+Keys not to use for hotkey generation. You can use the same
+variables and functions here as in for example the startmenu
+sections.
+<p>
+
+Example:
+<example>
+ hotkeyexclude="q" $section
+</example>
+
+<tag><tt/hotkeycase="insensitive"/
+<item>
+can be either "insensitive" or "sensitive". Determines
+whether the hotkeys can be of mixed case (<tt/fvwm2/ reads
+the hotkeys case-insensitive, <tt/pdmenu/ case-sensitive).
+In case of the titles "Xa" and "xb", hotkey case-insensitive will
+generate "X" and "b", whereas case-sensitive would generate "X" and
+"x".
+<p>
+
+<tag><tt/sort=$sort ":" $title/
+<item>
+Entries within one menu will be alphabetically sorted by whatever
+sort returns. So, if you do
+<tt/sort=ifelse($command, "1", "0"):$title/, then all submenus will
+appear above the commands in a submenu. (A submenu always has
+<tt/$command=""/). Or, as Joey Hess writes:
+<example>
+ You can add another field to the menu items, with whatever name you like,
+ let's say it's called priority. Then add this line to
+ /etc/menu-methods/*:
+
+ sort=ifelse($priority, $priority, "9")
+
+ This has the result of sorting things so items with a low priority sort to the
+ top, and items with no priority default to priority 9 and sort to the bottom.
+
+ (Note that it compares the strings alphabetically, not numerically.)
+</example>
+
+<tag><tt/rcfile=""/
+<item>
+If the window manager doesn't support an "include filename" or
+"read(filename)" statement in it's config file, you can rename
+the wm's config file to <tt>system."$wm"rc-menu</>, and insert
+a "install-menu-defs" line (without the quotes, or whitespace around
+it, and "install-menu-defs" must be the only thing on the line)
+in the <tt>system."$wm"rc-menu</> file. This will then get replaced
+by the <tt/$genmenu/ file that was just created (see
+also <tt/$examplercfile/).
+<p>
+
+<tag><tt/examplercfile=""/
+<item>
+if needed (see <tt/rcfile/), this is the <tt/system.rc"$wm"-menu/
+file. In that case, make <tt/rcfile=system.rc"$wm"/.
+<p>
+
+<tag><tt/rootprefix=""/
+<item>
+The prefix to use when running as root (applies to $genmenu, $rcfile,
+$examplercfile and other old cache files). If it is not defined,
+the menu-method will be skipped when run as root.
+
+<p>
+<tag><tt/userprefix=""/
+<item>
+As <tt/rootprefix/, but when running as user. userprefix is relative to
+the user home directory, unless it start with 2 slashes, in which case it
+is treated as an absolute path. If it is not defined, the menu-method will be
+skipped when run as a user.
+<p>
+
+<tag><tt/hint_optimize=false/
+<item>
+If set to true, menu will try to generate an `optimal' tree, using
+the variables below. If set to false, menu will keep the sections as
+they are specified in the menu entry files (and ignore any hint stuff).
+
+<tag><tt/hint_nentry=6/
+<item>
+Optimal number of entries in a submenu. It's a float, so you can set
+it to 5.5 if you cannot decide between 5 and 6. Also, values less
+than 3 probably don't work very well at the moment.
+
+<tag><tt/hint_topnentry=5/
+<item>
+Same as hint_nentry, but for the top level menu. Often here are other
+entries, added by the window-manager itself (like Exit, Xterm,
+whatever) that menu doesn't know about, so that you may want to
+instruct menu to put less entries in the top level menu.
+
+<tag><tt/hint_mixedpenalty=15.0/
+<item>
+Penalty for `mixed' menus. Mixed menus are those with both submenus
+and direct commands in them.
+
+<tag><tt/hint_minhintfreq=0.1/
+<item>
+Minimal relative frequency for the hints before they are considered.
+Internal variable to speed up the tree generation. If you find menu
+slow, increase this value (to, say 0.2 or 0.3).
+
+<tag><tt/hint_mlpenalty=2000/
+<item>
+`max local penalty',
+while evaluating the possible trees, menu gives `penalties' for
+submenus that don't contain the desired number of submenus. The
+penalty is sqrt(n_entry_opt-n_entry), and eventually will be
+calculated as a sum of all nodes. But to speed things up, menu will
+discard possibilities in which any node has a `local' penalty of more
+than hint_mlpenalty. Increase this value if you think menu is
+overlooking your favorite tree (also decrease minhintfreq), decrease
+this value if you think menu is wasting too much time.
+Because of hint_max_ntry, the influence of this variable is nearly
+zero nowadays.
+<tag><tt/hint_max_ntry=4/
+<item>
+menu will recursively, for each node, try the hint_max_ntry best local
+menu-divisions.
+
+<tag><tt/hints_max_iter_hint=5/
+<item>
+The search for what hints to use in one menu is rather expensive. But
+due to the way things are sorted, menu seems to always find the `best'
+match in the first 2% of iterations. Thus, a way to speed things up is
+simply to cut of menu searching after `some' iterations are
+done. This value controls this, and limits the number of iterations to
+5+hint_max_iter_hint*number_of_possible_hints. Set this value to
+negative to disable this.
+
+<tag><tt/hint_debug=false/
+<item>
+Set to true if you want to see loads and loads of debug output.
+</taglist>
+
+<sect> Hints, tree optimization
+<p>
+The hints actually work in a rather strange way: when
+<tt/hint_optimize=true/ then all <tt/$section/ elements are added to
+the specified <tt/$hints/ variable, and the order
+(<tt>/Applications/Editors</tt> or <tt>/Editors/Applications</tt>) of the
+resulting hints is completely ignored. Then, the hints for each menu entry are
+handed to the optimization routine, which will calculate a reasonable tree for
+those hints. That tree must
+comply with the following:
+<p>
+
+When a user looks for a program "Program" with, say, hints
+"Good,Bulky,Heaven", then, while walking through the tree, it should at
+every node visited
+be clear for the user what submenu to select (or the menu should have
+"Program" directly in it). So, the top-level menu may
+look like
+<example>
+ Good
+ Hell
+ Microsoft
+</example>
+because then a searcher for a menu entry with hints "Good,Bulky,Heaven"
+will know to select the submenu "Good". The toplevel menu may not look
+like
+<example>
+ Good
+ Hell
+ Heaven
+</example>
+as now it isn't clear whether to visit the Good or the Heaven submenu.
+<p>
+That rule allows usually for many different trees, and the task of the
+optimization procedure is to select, in a finite amount of time, the
+tree that best matches the user's desire about the optimum number of
+menu entries.
+
+<chapt>Variables and functions in the install-menu scripts
+<p>
+
+The supported "needs" definitions and "startmenu=", "endmenu="
+and "submenutitle=" are interpreted as follows:
+
+<sect> String constants
+<p>
+ Anything inside double quotes ("") is interpreted as a string, and
+ is written verbatim to the output file.
+ Escape sequences like \n, \t, ... will be replaced with their C expansions
+ (but currently \0xx octal escape sequences are not supported).
+
+<sect> Variables
+<p>
+ Anything matching $[a-z,A-Z,_]* is interpreted as a variable, and
+ the corresponding definition from the menu entry is substituted.
+</p>
+<sect1> Special variables
+<p>
+ The following variables are treated in a special way by install-menus,
+ either because they are used for other purposes too, or because they
+ are modified by install-menus (the ones marked with a "!" are modified
+ by install-menus).
+<taglist>
+<tag> needs:
+<item>
+ Used to determine whether the window manager supports this
+ menu entry.
+<tag> command:
+<item>
+ If this is undefined, this menu entry is taken as defining
+ a sub-menu. This way you can specify icons of sub-menus.
+<tag> title!:
+<item>
+ Used for sorting (see section).
+ For sub-menu entries (those with empty command), this
+ is initialised to the last part of the section.
+ Please, keep the title short (two words at maximum).
+ The title is for people who already know what program
+ they want to start. See "longtitle" and "description" below
+ for longer descriptions.
+<tag> sort:
+<item>
+ Used for sorting (see section). To make sure an entry is
+ at the beginning, use something with a low ASCII number,
+ like "$". For sorting at the end, use "|"
+<tag> section!:
+<item>
+ Used to determine the section of the menu entry.
+ The menu entries that have a empty $command, ie those that
+ define a submenu, have $title added to the end of $section
+ The menu entries that have a non-empty $command have their
+ $section modified to $section/$title, or $section/$sort:$title
+ if $sort is defined. The menu entries within one submenu
+ are sorted according to $section. If you want to retrieve the
+ real section name, see the $basesection variable.
+<tag> basesection!:
+<item>
+ Used to contain the *real* section name. This is useful because
+ $section will be changed to $section/$title in special cases
+ (see above). This causes a problem when you want to do
+ parent($section) because you won't get the real parent section.
+ Instead you can use $basesection, which will never contain the
+ title.
+<tag> hotkey!:
+<item>
+ Modified to reflect what install-menus thinks is the
+ most suitable hotkey for this menu entry. The hotkey=
+ in the menu entry file is taken as a suggestion, that could
+ be overwritten if there is another entry with the same hotkey=.
+ To suggest two possible hotkeys for an entry use
+ hotkey="ab", with "a" being the most preferred hotkey.
+</taglist>
+<sect1>
+ Preferred variables
+<p>
+ The following aren't special for install-menus, but it's nice
+ (read: essential) to use the same variables for the same things.
+ So, I'll suggest some here. If you want to invent new ones, please
+ do so and mail them to me so that I can include them here.
+<taglist>
+<tag> icon: <item>
+ The location of the icon file for this menu entry.
+ If you don't have an icon file, just leave out the icon=
+ in the menu entry.
+<tag> icon32x32: <item>
+ The location of a 32x32 icon file for this menu entry.
+<tag> icon16x16: <item>
+ The location of a 16x16 icon file for this menu entry.
+ This allows users to choose between 16x16 and 32x32 icon.
+<tag> longtitle: <item>
+ For people that like descriptive titles (about one line)
+ It is probably best to include this in your menu entries,
+ while the window-managers don't (by default) put it in the
+ menus. That way, people who want descriptive titles can
+ turn them on, but others don't need to use them.
+<tag> description: <item>
+ An even longer description (about 5 lines).
+ For example, a description of the documentation in
+ the dwww generated html pages.
+</taglist>
+<sect1>
+ Suggested variables
+<p>
+ The following variables probably shouldn't appear often (or at
+ all) in the menu files supplied with packages. They are mostly
+ intended for use by local system managers. Nevertheless, it is
+ advised that all Debian systems use the following variable names:
+<taglist>
+<tag> visible <item>
+ Some apps add entries to utmp the utmp file, so that
+ "who" and friends know they are running (this is
+ especially true for xterms etc). If $visible set
+ (to anything other than "" or "none"), xterms etc will
+ not write logging info to utmp. (may not work for
+ your window manager).
+<tag> geometry <item>
+ For X apps, this will be the size of the (main) window
+ that will be created (units in either chars or pixels,
+ depending on type of main window (xterm or graphic)).
+ If you as package maintainer want to use this, you should
+ probably think about setting this variable somewhere
+ in an Xresources file.
+</taglist>
+<sect> Functions
+<p>
+ Anything matching <tt/[a-zA-Z_]+/ is taken as a function name, and an error
+ is generated if the function doesn't exist. The arguments of the
+ functions can be other functions, string constants or variables.
+<taglist>
+<tag> prefix() <item>
+ returns the current prefix dir: either $rootprefix, or
+ $HOME/$userprefix, depending on who runs install-menu
+
+<tag> ifroot($rootarg, $userarg) <item>
+ if(getuid()==0) print $rootarg, else print $userarg
+
+<tag> print($arg) <item>
+ Same as just $arg; if $arg is empty, generate an error.
+
+<tag> nstring($n, $string) <item>
+ write $string $n times. So, nstring(3,"Aa") writes "AaAaAa".
+ (Useful in combination with level()).
+
+<tag> esc($arg1,$arg2) <item>
+ Print $arg1, but escape all occurrences of characters in $arg2
+ with a '\' (thus, if arg1="hello", arg2="lo", print "he\l\l\o").
+
+<tag> escwith($arg1, $arg2, $arg3) <item>
+ Same as esc, but use $arg3 as escape sequence.
+
+<tag> escfirst($arg1, $arg2, $arg3) <item>
+ Same as escwith, but only escapes first occurrence of $arg2.
+
+<tag> cppesc($arg1) <item>
+ Escape anything that isn't a letter, number or _ with
+ $&lt;hex-ascii-code&gt;. So, for example, a '-' is replaced by '$2D'.
+ This way, $arg1 can be used as a #define in cpp.
+
+<tag> tolower($arg)
+<tag> toupper($arg) <item>
+ Returns the argument set in lowercases resp uppercases.
+
+<tag> replacewith($s, $replace, $with) <item>
+ Search $s for occurrences of characters from string replace, and
+ replace them by the corresponding character in $with.
+ Example:
+ replacewith("hello $world, %dir", "$% ", "123")
+ returns: "hello31world,32dir"
+
+<tag> replace($s, $replace, $with) <item>
+ Search $s for occurences of $replace and replace them with $with.
+ Note that the behaviour of this function is quite different than the
+ replacewith() function.
+
+<tag> ifempty($arg1, $arg2) <item>
+ If $arg1 is empty, print $arg2, otherwise print nothing.
+ For compatibility, $arg1="none" is interpreted as empty.
+
+<tag> ifnempty($arg1, $arg2) <item>
+ If $arg1 is not empty, print $arg2.
+ For compatibility, the string "none" is seen as empty.
+
+<tag> ifelse($arg1,$arg2,$arg3) <item>
+ If $arg1 is non-empty, print $arg2, otherwise $arg3.
+ For compatibility, the string "none" is seen as empty.
+
+<tag> ifeq($arg1, $arg2, $arg3) <item>
+ If ($arg1==$arg2) then print $arg3
+<tag> ifneq($arg1, $arg2, $arg3) <item>
+ If ($arg1!=$arg2) then print $arg3
+<tag> ifeqelse($arg1, $arg2, $arg3, $arg4) <item>
+ If ($arg1==$arg2) then print $arg3 else print $arg4
+
+<tag> cond_surr($arg1, $arg2, $arg3) <item>
+ If $arg1 is non-empty print $arg2$arg1$arg3, otherwise print nothing.
+ For compatibility, $arg1="none" is interpreted as empty.
+
+<tag> iffile($arg1, $arg2) <item>
+ If file $arg1 exists, and can be opened for reading by whoever
+ started the current process, return $arg2, otherwise return nothing.
+
+
+<tag> ifelsefile($arg1, $arg2, $arg3) <item>
+ If file $arg1 exists, and can be opened for reading by whoever
+ started the current process, return $arg2, otherwise return $arg3.
+
+<tag> catfile($arg1) <item>
+ Return the contents of file $arg1.
+
+<tag> shell($arg1) <item>
+ Return the output of the shell command $arg1.
+
+<tag> forall($array, "var", $exec) <item>
+ For each element of the column separated array $array, set
+ $var to that element, and print $exec.
+ Example:
+ <example>
+ !include lang.h
+ forall(sections_translations(), "lang", \
+ " section[" $lang "]=" translate($lang, title()) "\n")
+ </example>
+
+<tag> parent($arg) <item>
+ for $arg a "directory", return parent directory:
+ parent("/Debian/Applications/Editors") = "/Debian/Applications".
+
+<tag> basename($arg) <item>
+ return the last part of the parent directory:
+ basename("/Debian/Applications/Editors") = "Applications".
+
+<tag> stripdir($arg) <item>
+ everything after the last slash, i.e. what basename()
+ should have returned: stripdir("/Debian/Applications/Editors") = "Editors".
+
+<tag> entrycount() <item>
+ the number of entries in this menu.
+
+<tag> entryindex() <item>
+ returns relative position of this entry. Start with 0,
+ last entry is entrycount() - 1.
+ BUG: if sort= anything other than $title, then this
+ entryindex() will return incorrect values.
+
+<tag> firstentry($arg) <item>
+ return $arg if this is the first entry of this menu
+ (that is, entryindex() = 0). Else, return nothing.
+
+<tag> lastentry() <item>
+ return $arg if this is the last entry in this menu
+ (that is, entryindex() = entrycount() -1). Else, return nothing.
+
+<tag> level() <item>
+ return nesting of this menu in the total menu tree.
+
+<tag> add($arg1,$arg2)
+<tag> sub($arg1,$arg2)
+<tag> mult($arg1,$arg2)
+<tag> div($arg1,$arg2) <item>
+ returns the sum, difference, product or quotient of $arg1 and
+ $arg2. Note that the arguments are strings, that are converted
+ to integers.
+ example: mult("24", entryindex())
+
+<tag> rcfile()
+<tag> examplercfile()
+<tag> mainmenutitle()
+<tag> rootsection()
+<tag> rootprefix()
+<tag> userprefix()
+<tag> treewalk()
+<tag> postoutput()
+<tag> preoutput()
+<item>
+ These functions all output whatever they were defined to be in
+ the menu-method file.
+
+<tag> translate($lang, $text) <item>
+ Translate $text into $lang using gettext, see <tt/forall/ for an
+ example. Note that currently outputlanguage must be set to "C".
+ If $lang is the empty string, $text will be translated in the
+ current locale language. See sections_translations() for a list
+ of available translations.
+
+<tag> implicit concatenation <item>
+String constants, variables and functions can be concatenated
+by placing them after each other with a space in between, like:
+
+"hello" ifelse($comma, $comma, " sorry" $period " comma not defined") " world"
+</taglist>
+
+</book>
+
diff --git a/doc/menu.txt.gz b/doc/menu.txt.gz
new file mode 100644
index 0000000..14e21bd
--- /dev/null
+++ b/doc/menu.txt.gz
Binary files differ
diff --git a/doc/menufile.5 b/doc/menufile.5
new file mode 100644
index 0000000..1b2d7b3
--- /dev/null
+++ b/doc/menufile.5
@@ -0,0 +1,214 @@
+.\" -*- nroff -*-
+.TH MENUFILE 5 "File Formats" "DEBIAN"
+.SH NAME
+menufile \- entry in the Debian menu system
+.SH SYNOPSIS
+.B ~/.menu/*
+.PP
+.B /etc/menu/*
+.PP
+.B /usr/lib/menu/*
+.PP
+.B /usr/share/menu/*
+.PP
+.B /usr/share/menu/default/*
+.SH DESCRIPTION
+Menu files add entries to the Debian menu system. The system administrator can
+place menu files in /etc/menu/ to override menu files that packages add to
+/usr/share/menu/ . The user can place menu files in ~/.menu/ to override all
+other menu files.
+.PP
+Please read the Debian menu manual available in /usr/share/doc/menu/html
+for the complete specification of menu files.
+.PP
+The menu files are usually named after the Debian package that
+contains the programs listed in them. In it, you can list several
+"menu entries" that specify a specific item in the menu
+structure. Each menu entry specifies which packages it depends on; if
+that package are not installed, the menu entry will be ignored by
+\fBupdate-menus(1)\fP.
+(In a menu entry you can specify pseudo-packages that start
+with "local."; update-menus will always use those menu entries).
+If you wish to remove an item from the menu entirely, make an empty menu
+file with the same name as the file you want to override.
+.SH Examples
+Dosemu could install the following menu file as /usr/share/menu/dosemu:
+.PP
+ ?package(dosemu):needs="text" section="Applications/Emulators" title="Dosemu" command="dosemu"
+ ?package(dosemu):needs="X11" section="Applications/Emulators" title="Dosemu" command="xdos"
+.PP
+The system administrator wants to override this file to change how dosemu is
+run, so /etc/menu/dosemu is created:
+.PP
+ ?package(dosemu):needs="text" section="Applications/Emulators" title="Dosemu" command="dosemu -A"
+ ?package(dosemu):needs="X11" section="Applications/Emulators" title="Dosemu" command="xdos -A"
+.PP
+A user does not want Dosemu to appear in the menus at all, so the user creates
+an empty file named \fI~/.menu/dosemu\fP.
+.SH FORMAT
+A menu file consists of 0 or more lines of the following format:
+.RS
+.PP
+\fB?package(package-name):var1=value1 var2=value2 \fR ...
+.TP
+needs
+Specify what kind of environment the program require. This variable must be
+defined, and should be one of the following:
+.RS
+.TP
+needs="text"
+Program requires a terminal
+.TP
+needs="x11"
+Program requires a X server
+.TP
+needs="vc"
+Program requires a Linux console (i.e.: svgalib programs)
+.TP
+needs="wm"
+The program is a window manager.
+.TP
+needs="fvwmmodule"
+The program is a fvwm compatible module.
+.RE
+.TP
+section
+The section in which the menu entry should appear. See \fBMENU LAYOUT\fP for
+preferred section names.
+.RS
+.RE
+.TP
+icon
+An icon for this menu entry. If no icon is available, just don't
+define this.
+.TP
+title
+The title of the program that will appear on the menus. Keep it short.
+If two menu entries share the same title and section, the one that
+best fits the available display will be used. So in the example above
+with two menu entries that both have the menu id "title", if X is
+available, the X11 one will be used; otherwise the text one will be used.
+Must be defined.
+.TP
+command
+The command to be executed when this menu entry is selected.
+.TP
+hints
+A comma-separated list of hints on how grouping menu entries; see the manual.
+.RE
+.SH "MENU LAYOUT"
+The \fBauthoritative\fP list of Debian's menu structure is maintained in the
+Debian Menu sub-policy document which is part of the Debian Policy package. The
+menu structure below is included only for convenience. Please do not put your
+packages into any other sections.
+
+Use `/' to separate sub-menu names, for example, "Applications/Editors" or
+"Games/Arcade".
+.PP
+ \fIApplications\fP
+ \fIAccessibility\fP
+ \fIAmateur Radio\fP
+ \fIData Management\fP
+ \fIEditors\fP
+ \fIEducation\fP
+ \fIEmulators\fP
+ \fIFile Management\fP
+ \fIGraphics\fP
+ \fIMobile Devices\fP
+ \fINetwork\fP
+ \fICommunication\fP
+ \fIFile Transfer\fP
+ \fIMonitoring\fP
+ \fIWeb Browsing\fP
+ \fIWeb News\fP
+ \fIOffice\fP
+ \fIProgramming\fP
+ \fIProject Management\fP
+ \fIScience\fP
+ \fIAstronomy\fP
+ \fIBiology\fP
+ \fIChemistry\fP
+ \fIData Analysis\fP
+ \fIElectronics\fP
+ \fIEngineering\fP
+ \fIGeoscience\fP
+ \fIMathematics\fP
+ \fIMedicine\fP
+ \fIPhysics\fP
+ \fISocial\fP
+ \fIShells\fP
+ \fISound\fP
+ \fISystem\fP
+ \fIAdministration\fP
+ \fIHardware\fP
+ \fILanguage Environment\fP
+ \fIMonitoring\fP
+ \fIPackage Management\fP
+ \fISecurity\fP
+ \fITerminal Emulators\fP
+ \fIText\fP
+ \fITV and Radio\fP
+ \fIViewers\fP
+ \fIVideo\fP
+ \fIWeb Development\fP
+ \fIGames\fP
+ \fIAction\fP
+ \fIAdventure\fP
+ \fIBlocks\fP
+ \fIBoard\fP
+ \fICard\fP
+ \fIPuzzles\fP
+ \fISimulation\fP
+ \fIStrategy\fP
+ \fITools\fP
+ \fIToys\fP
+ \fIHelp\fP
+ \fIScreen\fP
+ \fISaving\fP
+ \fILocking\fP
+ \fIWindow Managers\fP
+ \fIFVWM Modules\fP
+ \fIWindow Maker\fP
+
+.SH NOTES
+If you want to specify an icon or hotkey for a sub-menu (for example,
+the Editors sub-menu), just use the same syntax but leave the command
+empty:
+
+?package(mypackage):needs="X11" section="Applications" icon="icon.xpm" hotkey="E" title="Editors"
+
+.PP
+Whenever any menu files are changed, you must run
+.BR update-menus (1)
+.SH FILES
+(Earlier listed files override later files with the same names.)
+.PP
+.I ~/.menu/*
+.RS
+Menu files added by the user.
+.RE
+.I /etc/menu/*
+.RS
+Menu files added by the system administrator.
+.RE
+.I /usr/lib/menu/*
+.RS
+Architecture-dependant menu files provided by other Debian packages.
+.RE
+.I /usr/share/menu/*
+.RS
+Architecture-independant menu files provided by other Debian packages.
+.RE
+.I /usr/share/menu/default/*
+.RS
+Menu files provided by the menu package.
+.RE
+.SH AUTHORS
+Joost Witteveen <joostje@debian.org>, based on work by
+Lars Wirzenius <liw@iki.fi>. Now maintained by
+Bill Allombert <ballombe@debian.org>.
+.PP
+(Man page by Joey Hess, <joeyh@debian.org>)
+.SH "SEE ALSO"
+.BR update-menus (1),
+.BR /usr/share/doc/menu/html/index.html
diff --git a/doc/menufile.fr.5 b/doc/menufile.fr.5
new file mode 100644
index 0000000..19a5083
--- /dev/null
+++ b/doc/menufile.fr.5
@@ -0,0 +1,231 @@
+.\" -*- nroff -*-
+.TH "FICHIER DE MENUS" 5 "Formats de fichier" DEBIAN
+.SH NOM
+menufile \- entrée dans le système des menus Debian
+.SH SYNOPSIS
+.B ~/.menu/*
+.PP
+.B /etc/menu/*
+.PP
+.B /usr/lib/menu/*
+.PP
+.B /usr/share/menu/*
+.PP
+.B /usr/share/menu/default/*
+.SH DESCRIPTION
+Les fichiers de menus ajoutent des entrées dans le système des menus
+Debian. L'administrateur système peut placer des fichiers de menus dans
+/etc/menu/ qui auront priorité sur les fichiers de menus que les paquets
+ajoutent à /usr/share/menu/. Un utilisateur peut placer des fichiers de menus
+dans ~/.menu/ qui auront priorité sur tous les autres fichiers de menus.
+.PP
+Veuillez consulter le manuel des menus Debian présent dans
+/usr/share/doc/menu/html pour les spécifications complètes des fichiers de
+menus.
+.PP
+Les fichiers de menus portent d'habitude le nom du paquet Debian qui
+contient les programmes qu'ils listent. Ils peuvent contenir plusieurs «\
+entrées de menus\ », qui spécifient un élément particulier de la structure
+d'un menu. Chaque entrée de menu spécifie les paquets dont elle dépend, ce qui
+permet à \fBupdate-menus(1)\fP d'ignorer le menu si ces paquets ne sont pas
+installés. (Dans une entrée de menu vous pouvez spécifier des pseudo\-paquets
+qui commencent par «\ local.\ », ce qui indique à update\-menus de toujours
+utiliser ces menus). Si vous voulez supprimer entièrement tous les éléments
+d'un fichier de menus, vous pouvez créer un fichier vide portant le même nom
+que ce fichier de menus.
+.SH Exemples
+Dosemu peut installer le fichier de menus suivant dans
+/usr/share/menu/dosemu\ :
+.PP
+ ?package(dosemu):needs="text" section="Applications/Emulators" title="Dosemu" command="dosemu"
+ ?package(dosemu):needs="x11" section="Applications/Emulators" title="Dosemu" command="xdos"
+.PP
+L'administrateur système peut vouloir remplacer ce fichier pour changer la
+façon dont dosemu est exécuté, il crée alors le fichier /etc/menu/dosemu
+suivant\ :
+.PP
+ ?package(dosemu):needs="text" section="Applications/Emulators" title="Dosemu" command="dosemu \-A"
+ ?package(dosemu):needs="x11" section="Applications/Emulators" title="Dosemu" command="xdos \-A"
+.PP
+Il se peut également qu'un utilisateur ne veuille pas voir apparaître Dosemu
+dans ses menus. Il peut alors créer un fichier vide nommé ~/.menu/dosemu.
+.SH FORMAT
+Un fichier de menus consiste en 0 ou plusieurs lignes dans le format
+suivant\ :
+.RS
+.PP
+\fB?package(nom_paquet):var1=value1 var2=value2 \fP ...
+.TP
+needs
+Indique le type d'environnement que le programme nécessite. Cette variable
+est obligatoire et peut valoir\ :
+.RS
+.TP
+needs="text"
+Le programme nécessite un terminal
+.TP
+needs="x11"
+Le programme nécessite un serveur X
+.TP
+needs="vc"
+Le programme nécessite une console Linux (c'est à dire un programme
+utilisant svgalib).
+.TP
+needs="wm"
+Le programme est un gestionnaire de fenêtres.
+.TP
+needs="fvwmmodule"
+Le programme est un module compatible avec fvwm.
+.RE
+.TP
+section
+La section dans laquelle l'entrée de menu doit être affichée. Reportez\-vous
+à la section \fBDISPOSITION DES MENUS\fP pour les noms de section.
+.RS
+.RE
+.TP
+icon
+Une icône pour cette entrée de menu. Si aucune icône n'est disponible,
+il suffit de ne pas définir ce champ. (icon="none" est également possible,
+mais il est préférable de ne pas placer cette ligne).
+.TP
+title
+Le titre du programme qui apparaîtra dans le menu. Essayez de garder ce
+champ court. Si deux entrées de menu partagent le même titre et la même
+section, celle qui est la mieux adaptée au type d'affichage est
+conservée. De cette façon, dans l'exemple précédent qui a deux menus qui ont
+le même titre, si X est disponible, l'entrée dépendant de X11 est utilisée,
+sinon celle pour un affichage texte est utilisée. Ce champ est obligatoire.
+.TP
+command
+La commande à exécuter lorsque cette entrée est sélectionnée.
+.TP
+hints
+Une liste d'indications séparées par des virgules, permettant de grouper les
+menus. Veuillez consulter le manuel.
+.RE
+.SH "DISPOSITION DES MENUS"
+La liste \fBofficielle\fP de la structure des menus Debian est maintenue dans
+la sous\-charte des menus Debian («\ Debian Menu sub\-policy\ »), qui fait
+partie du paquet Debian Policy. La structure de menus ci\-dessous est incluse
+(et traduite) pour des raisons de commodité. Veuillez ne pas placer vos paquets
+dans d'autres sections.
+
+NDT\ : les noms de sections officiels sont automatiquement traduits au
+moment de la génération des menus.
+
+Utilisez `/' pour séparer les noms des sous\-menus. Par exemple\ :
+"Applications/Editors" ou "Games/Action".
+.PP
+ \fIApplications\fP
+ \fIAccessibility\fP
+ \fIAmateur Radio\fP
+ \fIData Management\fP
+ \fIEditors\fP
+ \fIEducation\fP
+ \fIEmulators\fP
+ \fIFile Management\fP
+ \fIGraphics\fP
+ \fIMobile Devices\fP
+ \fINetwork\fP
+ \fICommunication\fP
+ \fIFile Transfer\fP
+ \fIMonitoring\fP
+ \fIWeb Browsing\fP
+ \fIWeb News\fP
+ \fIOffice\fP
+ \fIProgramming\fP
+ \fIProject Management\fP
+ \fIScience\fP
+ \fIAstronomy\fP
+ \fIBiology\fP
+ \fIChemistry\fP
+ \fIData Analysis\fP
+ \fIElectronics\fP
+ \fIEngineering\fP
+ \fIGeoscience\fP
+ \fIMathematics\fP
+ \fIMedicine\fP
+ \fIPhysics\fP
+ \fISocial\fP
+ \fIShells\fP
+ \fISound\fP
+ \fISystem\fP
+ \fIAdministration\fP
+ \fIHardware\fP
+ \fILanguage Environment\fP
+ \fIMonitoring\fP
+ \fIPackage Management\fP
+ \fISecurity\fP
+ \fITerminal Emulators\fP
+ \fIText\fP
+ \fITV and Radio\fP
+ \fIViewers\fP
+ \fIVideo\fP
+ \fIWeb Development\fP
+ \fIGames\fP
+ \fIAction\fP
+ \fIAdventure\fP
+ \fIBlocks\fP
+ \fIBoard\fP
+ \fICard\fP
+ \fIPuzzles\fP
+ \fISimulation\fP
+ \fIStrategy\fP
+ \fITools\fP
+ \fIToys\fP
+ \fIHelp\fP
+ \fIScreen\fP
+ \fISaving\fP
+ \fILocking\fP
+ \fIWindow Managers\fP
+ \fIFVWM Modules\fP
+ \fIWindow Maker\fP
+
+.SH NOTES
+Si vous voulez spécifier une icône ou un raccourci clavier pour un sous\-menu
+(par exemple, le sous\-menu Editors), utilisez la même syntaxe, mais laissez
+le champ command vide, comme ceci\ :
+
+?package(monpaquet):needs="X11" section="Applications" icon="icon.xpm" hotkey="E" title="Editors"
+
+.PP
+À chaque fois qu'un fichier de menus est modifié, vous devez exécuter
+.BR update\-menus (1).
+.SH FICHIERS
+(Fichiers par ordre de priorité décroissante)
+.PP
+.I ~/.menu/*
+.RS
+Fichiers de menus ajoutés par l'utilisateur.
+.RE
+.I /etc/menu/*
+.RS
+Fichiers de menus ajoutés par l'administrateur système.
+.RE
+.I /usr/lib/menu/*
+.RS
+Fichiers de menus dépendants de l'architecture fournis par d'autres paquets
+Debian.
+.RE
+.I /usr/share/menu/*
+.RS
+Fichiers de menus indépendants de l'architecture fournis par d'autres
+paquets Debian.
+.RE
+.I /usr/share/menu/default/*
+.RS
+Fichiers de menus fournis par le paquet menu.
+.RE
+.SH AUTEURS
+Joost Witteveen <joostje@debian.org>, basé sur les travaux de Lars
+Wirzenius <liw@iki.fi>. Il est désormais maintenu par Bill Allombert
+<ballombe@debian.org>.
+.PP
+Page de manuel par Joey Hess, <joeyh@debian.org>
+.PP
+Ce document est basé sur une traduction réalisée par Nicolas François le
+3 septembre 2005.
+.SH "VOIR AUSSI"
+.BR update\-menus(1),
+.BR /usr/share/doc/menu/html/index.html
diff --git a/doc/su-to-root.1 b/doc/su-to-root.1
new file mode 100644
index 0000000..6560c6f
--- /dev/null
+++ b/doc/su-to-root.1
@@ -0,0 +1,56 @@
+.\" Process this file with
+.\" groff -man -Tascii foo.1
+.\"
+.TH su\-to\-root 1 "20 October 1998" "Debian Project" "Debian GNU/Linux manual"
+.SH NAME
+su\-to\-root \- A simple script to give an `interactive' front-end to su.
+It can be used in menu entry commands to ask for the root password
+.SH SYNOPSIS
+.B su\-to\-root [\-X] [\-p <user>] \-c <command>
+.SH DESCRIPTION
+Most menu entries simply start an editor or a game or whatever. But
+some menu entries would like to give the user the ability to change
+important settings in the system, that require root privileges.
+\fBsu\-to\-root\fP can be used to ask for the root password.
+.SH OPTIONS
+.IP "\-c <command>"
+The command to execute as a string. This option is mandatory.
+.IP "\-p <user>"
+The name of the user to change to, instead of root.
+.IP "\-X"
+The command is a X11 program that does not require a terminal.
+This is to be used with menu entries that declare needs="X11".
+.SH ENVIRONMENT
+.IP SU_TO_ROOT_X
+Select the su-like program called by \fIsu\-to\-root \-X\fP.
+Supported values are \fIgksu\fP, \fIkdesu\fP, \fIkde4su\fP, \fIktsuss\fP,
+ \fIsux\fP, \fIgksudo\fP and \fIkdesudo\fP.
+\fIkde4su\fP denotes the KDE4 version of \fBkdesu\fP.
+.IP
+When this variable is not set \fBsu\-to\-root\fP will currently try to use
+\fIgksu\fP, \fIkdesu\fP, \fIkde4su\fP, \fIktsuss\fP, \fIsux\fP and the built-in
+code, in that order with the exception that under a KDE session, \fIkdesu\fP
+and \fIkde4su\fP are prefered over \fIgksu\fP.
+.IP
+The exact set of programs to try and their order is subject to change without
+notice.
+.IP SU_TO_ROOT_SU
+Select the su-like program used in text mode.
+Supported values are \fIsudo\fP, \fIsux\fP and \fIsu\fP, the later being
+the default.
+.SH FILES
+.IP /etc/su\-to\-rootrc
+.IP ~/.su\-to\-rootrc
+\fBsu\-to\-root\fP will source these files at startup in this order. This lets
+you define and modify the environment variables above without restarting your X
+session.
+.SH COPYING
+\fBsu\-to\-root\fP is distributed under the GNU General Public License.
+(GPL 2.0 or greater).
+.SH AUTHORS
+Joost Witteveen <joostje@debian.org>
+.P
+X11 support by Morten Brix Pedersen and Bill Allombert
+.RI <ballombe@debian.org>
+.SH "SEE ALSO"
+\fBupdate\-menus\fP(1), \fBmenufile\fP(5), \fB/usr/share/doc/menu/html\fP
diff --git a/doc/su-to-root.fr.1 b/doc/su-to-root.fr.1
new file mode 100644
index 0000000..3aca782
--- /dev/null
+++ b/doc/su-to-root.fr.1
@@ -0,0 +1,61 @@
+.\" Process this file with
+.\" groff -man -Tascii foo.1
+.TH su\-to\-root 1 "20 octobre 1998" "Projet Debian" "Manuel Debian GNU/Linux"
+.SH NOM
+su\-to\-root \- un simple script qui est une interface interactive à su. Il
+peut être utilisé dans les commandes des entrées de menu pour demander le
+mot de passe du super-utilisateur.
+.SH SYNOPSIS
+\fBsu\-to\-root [\-X] [\-p <utilisateur>] \-c <commande>\fP
+.SH DESCRIPTION
+La plupart des entrées de menu démarrent un éditeur, un jeu, ou n'importe
+quoi d'autre. Mais certaines entrées de menu veulent fournir à l'utilisateur
+la possibilité de changer des réglages importants du système, ce qui
+nécessite des droits d'administration.
+\fBsu\-to\-root\fP peut être utilisé pour demander le mot de passe du
+super-utilisateur.
+.SH OPTIONS
+.IP "\-c <command>"
+La commande à exécuter sous forme de chaîne de caractères. Cette option est
+obligatoire.
+.IP "\-p <utilisateur>"
+Le compte utilisateur cible, en lieu et place de root.
+.IP \-X
+La commande est un programme X11 qui ne nécessite pas de terminal. Elle doit
+être utilisée avec les entrées de menu qui déclarent le champs needs="X11".
+.SH ENVIRONNEMENT
+.IP SU_TO_ROOT_X
+Indique le programme permettant de devenir super-utilisateur qui sera appelé
+par \fBsu\-to\-root \-X\fP. Les valeurs acceptées sont \fIgksu\fP, \fIkdesu\fP,
+\fIkde4su\fP, \fIktsuss\fP, \fIsux\fP, \fIgksudo\fP et \fIkdesudo\fP. \fIkde4su\fP
+indique la version KDE4 de \fBkdesu\fP.
+.IP
+Quand cette variable n'est pas définie, \fBsu-to-root\fP essaie actuellement
+d'utiliser \fIgksu\fP, \fIkdesu\fP, \fIkde4su\fP, \fIktsuss\fP, \fIsux\fP et le
+code intégré dans cet ordre avec l'exception que, dans une session KDE,
+\fIkdesu\fP et \fIkde4su\fP seront préférés à \fIgksu\fP.
+.IP
+La liste de programmes à essayer et son ordre est sujet à changement sans avertissement.
+.IP SU_TO_ROOT_SU
+Indique le programme permettant de devenir super-utilisateur qui sera appelé
+en mode texte. Les valeurs acceptées sont \fIsux\fP, \fIsudo\fP
+et \fIsu\fP, ce dernier étant la valeur par défaut.
+.SH FICHIERS
+.IP /etc/su\-to\-rootrc
+.IP ~/.su\-to\-rootrc
+\fBsu\-to\-root\fP sourcera ce fichier au lancement. Ceci
+permet de définir et modifier les variables d'environnement décrite
+précédemment sans avoir à redémarrer votre session X.
+.SH DISTRIBUTION
+\fBsu\-to\-root\fP est distribué sous la licence publique générale («\ GPL\ »)
+du projet GNU (GPL version 2.0 ou supérieure).
+.SH AUTEURS
+Joost Witteveen <joostje@debian.org>
+.P
+Gestion de X11 par Morten Brix Pedersen et Bill Allombert <ballombe@debian.org>.
+.P
+Cette page de manuel est basée sur une première traduction réalisée par Nicolas
+François le 3 septembre 2005.
+.SH "VOIR AUSSI"
+\fBupdate\-menus\fP(1), \fBmenufile\fP(5), \fB/usr/share/doc/menu/html\fP
+
diff --git a/doc/translate b/doc/translate
new file mode 100644
index 0000000..6eb32ee
--- /dev/null
+++ b/doc/translate
@@ -0,0 +1,129 @@
+Saluton, Hello, Jó napot!
+
+The debian menus currently currently only exist in
+english, "en da's niet goed" (that's not good, Nem jó, Tio malbonas).
+
+Below I describe how I propose to change this.
+At the end of this message I briefly discuss the gnome/kde
+approach, and why I really like to make menu compatible
+with their format, but not use their translations.
+
+#############
+
+What I propose is that update-menus simply learns the dutch,
+german, whatever translations for "Apps", "Editors",
+"The Gimp", "X Window Snapshot", and so on.
+These translations would be provided in a form similar/identical to
+the already used i18n format.
+
+The French translations would be provided by a menu-fr.deb package,
+the Dutch translations by menu-du.deb, etc.
+
+This may seem strange at first, as now the gimp package has no
+control over how the menu-entry looks in german. It might at first
+sight be much better to put in the menu entry file for the gimp
+all translations of "The Gimp" in however many languages we
+want to support.
+
+The downside of this, is that it simply doesn't work in Debian.
+The maintainer of the gimp surely doens't know the translations
+of "The Gimp" in Dutch, Turkish, Japanise, Esperanto, whatever.
+Somewhere in Turkey there may be somone who is really good at
+translating all english titles into turkish, but s/he will have
+a very hard time convincing all 500+ package maintainers to
+include his/her translation into the package. And, a week later
+someone in Bulgaria wakes up, and sends 500+ discriptions to
+500+ maintainers, asking them to include that. Well, you see,
+with about 6000 languages on this earth, the maintainers are
+going to have a hard time.
+
+That is why I propose that the package maintainers simply
+don't do anything about the languages, but simply upload their
+packages with menu entry files in them. Then some deamon on
+master scans all menu entry files in the distribution, and
+creates a file with all english words/phrases that should be
+translated. This file can be put somewhere on the web, and
+then this the translators simply gets that file, translate
+the 500+ entries in it, and create a menu-tr.deb (menu-de.deb, etc)
+package, and uploads that. Then, the users that want turkish systems
+simply install menu-tr.deb package, set the appropriate LC_*
+variables, and update-menus does what it should do.
+
+This approach has the advantages that
+ - It actually works. Forceing 500+ package maintainers to include
+ the world's 6000+ languages into their menu entry files is
+ really never going to work.
+ - It makes things easy for both the maintainer of the packages
+ with the menu entry files (they do nothing), and for the
+ translators (they don't need to get the to-be-translated words
+ and phrases from all kinds of packages, and send the results to many
+ different package maintainers).
+ - It allows users to select what languages to install, so they
+ don't have to buy extra harddisks because each menu entry file
+ now is 0.5 M big (5000 languages, 100 chars per language).
+
+Note that the file with the `to-be-translated' phrases in them
+should not just have entries like
+ Apps
+ The Gimp
+ X Window Snapshot
+as that will not allow the translators to really see what "Apps" or
+"The Gimp" is. Rather, for each to be translated item, there should
+be info on what package it came from (to allow the translator to
+investigate further), and if present the "description" from the
+menu entry file the string came from. Maybe more. But we can
+discuss that later.
+Also note that there probably aught to be different files for
+main and non-free. And thus also menu-nonfree-fr.deb
+with the translations for the non-free section. I assume the
+translations should be put somewhere into
+/usr/share/local/fr/LC_MESSAGES/menu-translate.mo (or menu-translate-non-free)
+
+
+Summary:
+ - package maintainers do nothing (apart from maintaining:)
+ - translators get those `to-be-translated' files, translate
+ the words/phrases in them upload the menu-??.deb pacakges.
+ - The users install the menu-??.deb packages for whatever language
+ they like or don't like.
+ - If there are no big objections (only minor points) I'd like
+ to start working on menu very soon. (should be a working version
+ within 2 weeks after I started).
+
+Postnote:
+ Why would we do this only for menu? There may well be other packages
+ that would like to have the same `debian-wide' translation support.
+ Maybe we shouldn't call the packages "menu-fr.deb", but "translate-fr.deb",
+ or whatever.
+
+
+##############
+Gnome/KDE menu's
+
+When the translating of menus comes up, gnome/kde automatically also
+come up as they already have translations. So, why not use those?
+Well, for the above mentioned reasons: "cross-package" communication
+is pour to say the least in debian, and there is no way we are
+going to support many languages if every change has to go through
+the maintainers. And it's very tough on the translators, as they
+have to communicate with many different maintainers.
+
+So, I say that using the translation support from gnome/kde's menu
+entry files is not the right way in Debian.
+
+However, that doesn't mean we shouldn't move to gnome/kde-format
+menu entry files. They are basically already very close to what
+we have now, and I'm very tempted to simply add support for them to
+update-menus so that update-menus can read both formats. What
+way we go after that debian-policy has to decide.
+
+
+##############
+
+Any opinions?
+
+If there is noone saying this is a realy bad approach, I'd like
+to start working on this really soon now.
+
+Thanks,
+joostje
diff --git a/doc/update-menus.1 b/doc/update-menus.1
new file mode 100644
index 0000000..48586e3
--- /dev/null
+++ b/doc/update-menus.1
@@ -0,0 +1,177 @@
+.\" -*- nroff -*-
+.TH UPDATE-MENUS 1 "Debian Utilities" "DEBIAN"
+.SH NAME
+update-menus \- generate Debian menu system
+.SH SYNOPSIS
+.B update-menus [\-v] [\-d] [\-h|--help] [--version] [--menufilesdir <dir>] [--menumethod <method>] [--nodefaultdirs] [--stdout]
+.SH DESCRIPTION
+Before the advent of \fIupdate-menus\fP, when the system administrators installed a
+package onto a Debian system, they would need to edit various window
+manager configuration files to make the new program show up on, for example,
+fvwm's menus. The menus could easily become out of sync with what programs
+were actually available, with some menu items that didn't work, and other
+programs that lacked a menu entry.
+.I update-menus
+and Debian's menu package aim to solve this problem.
+.PP
+.I update-menus
+automatically generates menus of installed programs for window
+managers and other menu programs. It should be run whenever a
+.BR menufile (5)
+or menu-method file is changed.
+.I update-menus
+will be run automatically when Debian packages that contain menu
+files are installed on or removed from the system.
+.PP
+.I update-menus
+uses the package-supplied menu entry files (in /usr/share/menu) for
+its information about the menus (but this can be overruled by the
+system administrator/user; see below). If a menu entry file is executable,
+.I update-menus
+executes the menu entry file, and uses its stdout to generate the menu
+database.
+
+.SH OPTIONS
+.IP "-v"
+Verbose output. Shows all arguments to the /etc/menu-methods programs.
+.IP "-d"
+Debug output. Generates loads of unintelligible output.
+.IP "-h, --help"
+Display usage help and exit.
+.IP "--menufilesdir <dir>"
+Adds directory <dir> to the list of directories to search for menu files in.
+.IP "--menumethod <method>"
+Process only the menu method <method> instead of all the menu methods found.
+.IP "--nodefaultdirs"
+Disables the search of menu entries in system menu directories.
+.IP "--nodpkgcheck"
+Do not discard menu entries for packages that are not installed according to
+\fIdpkg\fP.
+.IP "--remove"
+Remove the menus by calling the menu-methods with \fB--remove\fP.
+.IP "--stdout"
+Output the menu list in a format suitable as input for \fIinstall-menu\fP or a
+menu method file.
+.IP "--version"
+Output version information and exit.
+.SH CONFIGURATION
+There are several ways to tune the operation of update-menus:
+.PP
+.I per menu entry, in /etc/menu/$package
+.RS
+In these directories the system administrator or user can override the default
+menu files (If a file /etc/menu/$package exists, than the
+corresponding /usr/share/menu/$package file isn't read any more). Users
+who want to override the system wide defaults put their files in
+~/.menu. See also
+.BR menufile(5)
+.RE
+.I per window-manager in /etc/menu-methods/$wm
+.RS
+In these configuration files, one can tune generated system.${wm}rc files for
+each individual window manager. For example, one can specify that the
+wm should ignore any icons that the packages may supply, or set the
+default wrapper for text-only applications (usually, an xterm is started to
+run a text-only application like vi). Users who want to override the system
+wide defaults put their files in ~/.menu-methods. For more info, see
+/usr/share/doc/menu/html.
+.RE
+.I globally, in /etc/menu-methods/translate_menus
+.RS
+This file contains translations that will be performed for all
+menu entries and all window managers. You can specify things like:
+`All sections that start with "Games" should be mapped to "Applications/Games"',
+or `menuentry "gnuplot" should have a title of "GnuTeken"'. Look at the
+default /etc/menu-methods/translate_menus for an example. Users who want to
+override the system default translate file, put one in
+~/.menu-methods/translate_menus.
+.BR Note:
+This should not be used for a full translation of the menu. Use po
+files as explained in the source package.
+.RE
+.I error report configuring, in /etc/menu-methods/menu.config
+.RS
+This file contains general information for the overall behaviour of
+update-menus. At the moment you can only configure how verbose the
+output of update-menus is, and where it sends the output. The amount
+of information is specified by `verbosity=VAL'. Use VAL=quiet to stop
+update-menu from reporting anything but the most important errors,
+VAL=normal, VAL=verbose, VAL=debug for progressively more output.
+
+To specify where the output should go, use `method=stdout',
+`method=stderr', or `method=syslog facility priority'. `Facility' is one
+of auth, authpriv, authcron, authdaemon, authkern, authlocal0, authlocal1,
+authlocal2, authlocal3, authlocal4, authlocal5, authlocal6, authlocal7,
+authlpr, authmail, authnews, authsyslog, authuser,
+authuucp. `priority' is one of emerg, alert, crit, err, warning,
+notice, info, debug.
+
+.RE
+.SH FILES
+Menu files: (Earlier listed directories override those listed later.)
+.RS
+.I ~/.menu/*
+.RS
+Menu files added by the user. (Isn't read if root runs update-menus)
+.RE
+.I /etc/menu/*
+.RS
+Menu files added by the system administrator.
+.RE
+.I /usr/lib/menu/*
+.RS
+Architecture-dependant menu files provided by other Debian packages.
+.RE
+.I /usr/share/menu/*
+.RS
+Architecture-independant menu files provided by other Debian packages.
+.RE
+.I /usr/share/menu/default/*
+.RS
+Menu files provided by the menu package.
+.RE
+.RE
+Menu methods:
+.RS
+.I /etc/menu-methods/
+.RS
+Executable configuration files that are added by window managers and other menu
+programs, these files are run by
+.I update-menus
+to generate menus for the different programs. Also in this directory
+is the translate_menus file, used for local configuration of the shape of the
+menu trees.
+.RE
+.RE
+.RS
+.I ~/.menu-methods/
+.RS
+For users to override the system-defaults of /etc/menu-methods.
+If this directory exists, no files in /etc/menu-methods are read
+any more.
+.RE
+.RE
+.SH DISTRIBUTION
+Distribution is subject to the GNU General Public License.
+.SH BUGS
+.I update-menus
+may not work properly when run by a normal user, to generate menus for that
+user. This is usually because the window manager doesn't expect the
+system.${wm}rc files in the directory (usually ~/.${wm}, configurable
+in /etc/menu-methods). If you see such a thing, and you find a
+solution, please mail <menu@packages.debian.org>. It should work OK for
+fvwm and fvwm2: I usually test the package first as an ordinary user.
+.PP
+.SH AUTHORS
+Joost Witteveen <joostje@debian.org>, original idea by
+Lars Wirzenius <liw@iki.fi>. Now maintained by
+Bill Allombert <ballombe@debian.org>.
+.SH THANKS
+To Joey Hess, for a lot of good ideas and pre-release testing, and to
+Tom Lees for a update-menus in pure C (of which I only used one
+function, but that's life).
+.PP
+Man page by Joey Hess, <joeyh@debian.org>
+.SH "SEE ALSO"
+.BR menufile (5),
+.BR /usr/share/doc/menu/html
diff --git a/doc/update-menus.fr.1 b/doc/update-menus.fr.1
new file mode 100644
index 0000000..8d732a8
--- /dev/null
+++ b/doc/update-menus.fr.1
@@ -0,0 +1,194 @@
+.\" -*- nroff -*-
+.TH UPDATE-MENUS 1 "Utilitaires Debian" "DEBIAN"
+.SH NOM
+update-menus \- génère les menus d'un système Debian
+.SH SYNOPSIS
+.B update-menus [\-v] [\-d] [\-h|--help] [--version] [--menufilesdir <répertoire>] [--menumethod <méthode>] [--nodefaultdirs] [--stdout]
+.SH DESCRIPTION
+Avant l'utilisation de \fIupdate-menus\fP, quand l'administrateur système
+installait un paquet sur un système Debian, il devait modifier de nombreux
+fichiers de configuration des gestionnaires de fenêtres afin de rendre
+accessible ce nouveau programme (les menus de fvwm, par exemple). Ces menus
+pouvaient facilement ne plus lister les programmes effectivement accessibles,
+certains éléments des menus ne fonctionnant pas, alors que d'autres programmes
+n'étaient pas référencés.
+.I update-menus
+et le paquet Debian menu ont pour but de résoudre ce problème.
+.PP
+.I update-menus
+génère automatiquement les menus des programmes installés pour les
+gestionnaires de fenêtres et pour les autres programmes à menus. Il doit être
+lancé à chaque fois qu'un fichier de menu (voir
+.BR menufile (5))
+ou qu'un script de génération de menus est modifié.
+.I update-menus
+sera automatiquement lancé dès qu'un paquet Debian contenant des fichiers
+de menus sera installé ou supprimé du système.
+.PP
+.I update-menus
+utilise les fichiers de menu fournis par le paquet (dans /usr/share/menu)
+pour obtenir ses informations concernant les menus (mais l'administrateur du
+système ou un utilisateur peuvent modifier ce comportement, voir plus loin).
+Si le fichier de menu est exécutable,
+.I update-menus
+l'exécute et utilise sa sortie standard pour générer
+la base de données du menu.
+
+.SH OPTIONS
+.IP "-v"
+Mode bavard. Affiche tous les arguments des programmes /etc/menu-methods
+.IP "-d"
+Mode Debug. Génère un tas de messages inintelligibles.
+.IP "-h, --help"
+Affiche un message d'aide et s'arrête.
+.IP "--menufilesdir <répertoire>"
+Ajoute le répertoire <répertoire> à la liste des répertoires dans laquelle on
+recherche des fichiers de menu.
+.IP "--menumethod <méthode>"
+Traite uniquement le script de génération de menus <méthode>, et non tous les
+scripts de génération de menus trouvés.
+.IP "--nodefaultdirs"
+Désactive la recherche de fichiers de menu dans les répertoires de menu
+du système.
+.IP "--nodpkgcheck"
+Ne pas supprimer les entrées de menu correspondant à des paquets non installés
+d'après \fIdpkg\fP.
+.IP "--remove"
+Supprime les menus générés en passant l'option \fB--remove\fP aux scripts de
+génération de menus.
+.IP "--stdout"
+Génère une liste de menu acceptable comme entrée par \fIinstall-menu\fP ou par
+un script de génération de menus.
+.IP "--version"
+Affiche les informations de version, puis s'arrête.
+.SH CONFIGURATION
+Il y a plusieurs façons de régler le fonctionnement d'update-menus\ :
+.PP
+.I par fichier de menu, dans /etc/menu/$paquet
+.RS
+Dans ce répertoire, l'administrateur système ou l'utilisateur peut passer
+outre les réglages par défaut (lorsqu'un fichier /etc/menu/$paquet existe,
+le fichier /usr/share/menu/$paquet n'est plus consulté). Un utilisateur
+qui veut modifier le réglage par défaut du système placera ses fichiers
+dans le répertoire ~/.menu. Voir aussi
+.BR menufile (5)
+.RE
+.I par gestionnaire de fenêtres, dans /etc/menu-methods/$wm
+.RS
+Dans ces fichiers de configuration, on peut ajuster le fichier system.${wm}rc
+généré pour chacun des gestionnaires de fenêtres. Par exemple, on peut
+définir que le gestionnaire doit ignorer toute icône que le paquet pourrait
+fournir, ou définir le programme générique pour les applications en mode texte
+(normalement, c'est xterm qui est lancé pour accueillir une application en mode
+texte telle que vi). Les utilisateurs qui veulent passer outre les réglages par
+défaut du système déposent leurs fichiers dans ~/.menu-methods. Pour plus
+d'informations, consultez /usr/share/doc/menu/html.
+.RE
+.I globalement, dans /etc/menu-methods/translate_menus
+.RS
+Ce fichier contient les transformations qui seront utilisées pour chaque entrée
+de menu et dans chacun des gestionnaires de fenêtres. Vous pouvez définir des
+points tels que\ : «\ Toutes les sections qui commencent par ``Games'' doivent
+être référencées par ``Applications/Games''\ », ou «\ l'entrée de menu
+``gnuplot'' doit avoir le titre ``GnuTeken''\ » .
+Jetez un oeil au fichier par défaut /etc/menu-methods/translate_menus pour
+prendre exemple. Les utilisateurs qui veulent passer outre les transformations
+par défaut du système le font dans ~/.menu-methods/translate_menus.
+.BR Note\ :
+ne pas utiliser pour une traduction complète du menu. Servez-vous des fichiers
+po comme indiqué dans le paquet source.
+.RE
+.I pour les rapports d'erreurs, dans /etc/menu-methods/menu.config
+.RS
+Ce fichier contient des informations générales sur le comportement d'
+update-menus. Pour le moment, vous ne pouvez régler que le niveau de bavardage
+de la sortie standard du programme, ainsi que la définition de cette sortie.
+La quantité d'information est définie par «\ verbosity=VAL\ ». Choisissez
+VAL=quiet pour empêcher update-menu d'afficher autre chose que les erreurs les
+plus importantes, VAL=normal, VAL=verbose, VAL=debug pour des informations de
+plus en plus détaillées.
+
+Pour définir où le flux sortant doit aller, utilisez «\ method=stdout\ »,
+«\ method=stderr\ » ou «\ method=syslog facility priorité\ ». «\ facility\ » est
+soit auth, authpriv, authcron, authdaemon, authkern, authlocal0, authlocal1,
+authlocal2, authlocal3, authlocal4, authlocal5, authlocal6, authlocal7,authlpr,
+authmail, authnews, authsyslog, authuser, ou authuucp. «\ priorité\ » est
+l'un des termes suivants\ : emerg, alert, crit, err, warning, notice, info,
+debug.
+.RE
+.SH FICHIERS
+Fichiers de menu\ : (les répertoires cités en premier sont
+prioritaires sur ceux cités plus loin)
+.RS
+.I ~/.menu/*
+.RS
+Fichiers de menu ajoutés par l'utilisateur (ignorés si
+l'administrateur lance update-menus)
+.RE
+.I /etc/menu/*
+.RS
+Fichiers de menu ajoutés par l'administrateur système.
+.RE
+.I /usr/lib/menu/*
+.RS
+Fichiers de menu (dépendant de l'architecture) fournis par d'autres paquets
+Debian.
+.RE
+.I /usr/share/menu/*
+.RS
+Fichiers de menu (indépendant de l'architecture) fournis par d'autres paquets
+Debian.
+.RE
+.I /usr/share/menu/default/*
+.RS
+Fichiers de menu fournis par le paquet menu.
+.RE
+.RE
+Fichiers de génération de menu (menu methods):
+.RS
+.I /etc/menu-methods/
+.RS
+Fichiers de configuration exécutables ajoutés par les gestionnaires de
+fenêtres et autres programmes à menus, qui sont exécutés par
+.I update-menus
+afin de générer les menus pour ces différents programmes. Le fichier
+translate_menus figure aussi dans ce répertoire, et sert aux réglages locaux du
+modèle d'arborescence des menus.
+.RE
+.RE
+.RS
+.I ~/.menu-methods/
+.RS
+Permet aux utilisateurs d'outrepasser le comportement par défaut de
+/etc/menu-methods. Si ce répertoire existe, aucun des fichiers de
+/etc/menu-methods n'est lu.
+.RE
+.RE
+.SH DISTRIBUTION
+La distribution est soumise à la Licence Publique Générale GNU.
+.SH BOGUES
+.I update-menus
+peut connaître des dysfonctionnements quand il est invoqué par un simple
+utilisateur pour générer ses propres menus. C'est souvent parce que le
+gestionnaire de fenêtres n'attend pas les fichiers system.${wm}rc
+dans le répertoire (normalement ~/.${wm}, à configurer dans /etc/menu-methods).
+Si vous repérez quelque chose de ce genre et que vous trouvez une solution,
+envoyez-moi un courrier à <menu@packages.debian.org>. Cela doit parfaitement
+fonctionner pour fvwm et fvwm2\ : je teste d'abord le paquet en tant que simple
+utilisateur.
+.PP
+.SH AUTEURS
+Joost Witteveen <joostje@debian.org>, sur une idée originale de
+Lars Wirzenius <liw@iki.fi>. Actuellement maintenu par
+Bill Allombert <ballombe@debian.org>.
+.SH REMERCIEMENTS
+À Joey Hess, pour toutes ses bonnes idées et le test de la pré-version, et à
+Tom Lees pour son update-menus en C natif (dont je n'ai utilisé qu'une fonction,
+mais c'est la vie).
+.PP
+(page de manuel par Joey Hess, <joeyh@debian.org>)
+.SH VOIR AUSSI
+.BR menufile (5),
+.BR /usr/share/doc/menu/html
+.SH TRADUCTION
+Sylvain Cherrier <sylvain.cherrier@free.fr>
diff --git a/examples/9wm b/examples/9wm
new file mode 100755
index 0000000..1d1bc0a
--- /dev/null
+++ b/examples/9wm
@@ -0,0 +1,32 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#I need menu-1!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+function f($com)=" echo '\"" title() ":" esc($com,"\"") "\"'\n"
+supported
+ wm= f(":9wm exit;" $command)
+ x11= f($command)
+ text=f(term())
+# wm =" echo '\"" $title ":9wm exit;" esc($command,"\"") "\"'\n"
+# x11 =" echo '\"" $title ":" esc($command,"\"") "\"'\n"
+# text=" echo '\"" $title ":xterm -title '\\'"\
+# $title "\\'' -e " esc($command,"\"") "\"'\n"
+endsupported
+startmenu= "function " $section "() {\n"
+endmenu= "}\n"
+# echo "\"MainMenu:$config --menu MainMenu\""
+submenutitle=" echo \"\\\"" title() ":$config --menu " $section "\\\"\"\n"
+genmenu= "menudefs.hook"
+rcfile= "system.9wmrc"
+examplercfile="system.9wmrc-menu"
+rootprefix= "/etc/X11/9wm/"
+userprefix= "/.9wm/"
diff --git a/examples/README b/examples/README
new file mode 100644
index 0000000..ed2dd08
--- /dev/null
+++ b/examples/README
@@ -0,0 +1,33 @@
+This directory contains some examples of /etc/menu-methods scripts.
+
+These are just that: examples. The files here are included to show
+you how to write menu-methods, or to copy them to the
+window-manager you're maintaining (please check them if you do!)
+if you're not interested in all that, but just want to have menus
+you're probably better of using any of the window-managers that
+work together with menu already (olvwm, fvwm2, afterstep, wm2, pdmenu...)
+
+The menu-methods in this directory, all use the "!include" feature, which
+means, that by changing the definitions in /etc/menu-methods/menu.h, you can
+change the look of all menus in all window managers (that use these new
+features).
+
+For more info on the menu-methods themselves, read /usr/share/doc/menu/html.
+
+Some of the menu-methods in this directory use the "rcfile" stuff
+(grep "examplercfile" $f; to see). If they do, then you'll also need to
+copy the corresponding system.$wm-menu file to the right directory
+(see "examplercfile" def, along with rootdir).
+
+***************************
+The 9wm window manager:
+ If you want to get Debian menus, you should type
+
+ /etc/X11/9wm/system.9wmrc --start /Debian
+
+ and the menus will appear in the 9wm menu (mouse 3).
+
+ Also, if you, for example, select Apps/Games/Puzzles/xtriangles,
+ then, apart from MainMenu, you'll also have an entry for
+ Apps, Games and Puzzles in your 9wm menu. I don't know
+ how to fix this (or if it should be "fixed").
diff --git a/examples/afterstep b/examples/afterstep
new file mode 100755
index 0000000..662dbb6
--- /dev/null
+++ b/examples/afterstep
@@ -0,0 +1,48 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#I need menu-1!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+!include menu.h
+
+compat="menu-2"
+
+function mod($var,$com)=" " $var " \""
+ title() ifnempty($hotkey,"&" toupper($hotkey))
+ "\" exec " $com "\n";
+
+function ex($com)=mod("Exec",$com);
+
+
+supported;
+ asmodule= mod("Module", $command);
+ fvwmmodule= mod("Exec", $command);
+ wm= mod("Restart",$command);
+ x11fvwm= ex($command);
+ x11= ex($command);
+ text= ex(term());
+endsupported;
+
+startmenu= "PopUp \"" $section "\"\n Title \"" title() "\"\n";
+
+endmenu= ifempty(title(),
+ " Popup \"Exit\" Quit-Verify\n" )
+ "EndPopUp\n";
+#very clever endmenu! (hadn't thought of doing it like that myself).
+
+submenutitle=" Popup \"" title() cond_surr(icon(),"%","%") "\""
+ $section "\n";
+
+genmenu= "menudefs.hook";
+
+rootprefix="/etc/X11/afterstep/";
+userprefix=".afterstep/";
+mainmenutitle="Debian Menu";
+
+
diff --git a/examples/afterstep-joost b/examples/afterstep-joost
new file mode 100755
index 0000000..ef1d074
--- /dev/null
+++ b/examples/afterstep-joost
@@ -0,0 +1,35 @@
+#!/usr/bin/install-menu
+#I need menu-1!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function ex($com)=" Exec \"" $title "\" exec " $com "\n";
+function mod($var,$com) =" " $var " \"" $title "\" exec " $com "\n";
+
+supported;
+ fvwmmodule= mod("Exec", $command);
+ wm= mod("Restart",$command);
+ x11fvwm= ex($command);
+ x11= ex($command);
+ text= ex(term());
+endsupported;
+
+startmenu= "PopUp \"" $section "\"\n";
+endmenu= "EndPopUp\n";
+submenutitle=" Popup \"" title() cond_surr(icon(),"%","%") "\""
+ $section "\n";
+genmenu: "menudefs.hook";
+rootprefix: "/etc/X11/afterstep/";
+userprefix: "/.afterstep/";
+input2prefix: "/etc/X11/afterstep/";
+mainmenutitle: "DebianMenu";
diff --git a/examples/cat b/examples/cat
new file mode 100755
index 0000000..cf179a6
--- /dev/null
+++ b/examples/cat
@@ -0,0 +1,28 @@
+#!/bin/sh
+cat > /tmp/menu-stdin
+
+exit 0
+
+#In the good old days of menu-0 compatibility, one had to use:
+
+# #!/usr/bin/install-menu
+# #I need menu-1!
+#
+# #
+# #This file can be very usefull when you want to run one particular
+# #menu-method file several times, without running any of the others.
+# #In order to do so, do:
+# # - cp ./cat /etc/menu-methods/
+# # - run update-menus so that the "cat" menu-method gets executed.
+# # Now you've got /tmp/menu-stdin.
+# # - With this file, you don't need update-menus at all any more, and you
+# # can symply run your hand-written "menu-test" menu-method by typing:
+# # ./menu-test < /tmp/menu-stdin
+# #
+# # The advantage of doing this is
+# # - none of the other menu-method files get excecuted (speedup)
+# # - update-menus doesn't need to open some hundred menu-entry files
+# # every time you test a change in your menu-method file.
+# # (speedup)
+# compat="menu-1"
+# command="cat > /tmp/menu-stdin"
diff --git a/examples/ctwm b/examples/ctwm
new file mode 100755
index 0000000..eea8bcc
--- /dev/null
+++ b/examples/ctwm
@@ -0,0 +1,32 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#I need menu-1.4!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function f($com)=" \"" title() "\" f.exec \""$com " &\"\n";
+
+#This doens't seem to be possible with twm: wm="f.restart \"${title}\"\\n"
+supported;
+ x11= f($command);
+ text=f(esc(term(),"\""));
+endsupported;
+
+startmenu= "menu \"" $section "\"\n{\n";
+endmenu= "}\n";
+submenutitle=" \"" title() "\" f.menu \"" $section "\"\n";
+genmenu= "menudefs.hook";
+rcfile= "system.ctwmrc";
+examplercfile="system.ctwmrc-menu";
+rootprefix= "/etc/X11/ctwm/";
+userprefix= "/.ctwm/";
diff --git a/examples/dwww b/examples/dwww
new file mode 100755
index 0000000..788ae5b
--- /dev/null
+++ b/examples/dwww
@@ -0,0 +1,46 @@
+#!/usr/bin/install-menu
+#I need menu-1!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+#The output of this script still isn't quite right, but it starts
+#to be acceptable.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+supported;
+ dwww = "<li><a href=\"/cgi-bin/dwww?type="
+ ifelse($dwwwtype,$dwwwtype,"file")
+ "&location="
+ $command "\">"
+ ifelse($longtitle,$longtitle,$title) "</a>"
+ ifnempty($description,"<br><font size=-1>"$description "</font>")
+ "\n";
+endsupported;
+startmenu= "<P><font size=+2><b><a name=\"" $section "\">"
+ $title
+ "</a></b></font><p><ul type=disc>"
+ ifnempty($description,"<br><font size=-1>" $description "</font>")
+ "\n";
+endmenu= "</ul>\n\n";
+submenutitle="<li><font size=2><a href=\"#" $section "\">"
+ ifelse($longtitle,$longtitle,$title) "</font></a>"
+ ifnempty($description,"<br><font size=-1>"$description "</font>")
+ "\n";
+genmenu= "/var/lib/dwww/html/menudefs.hook";
+#the rc copy stuff doesn't work yet, sorry.
+rcfile= "/var/lib/dwww/html/menu.html";
+examplercfile="/usr/lib/dwww/menu.html-menu";
+rootprefix= "/";
+userprefix= ".dwww/";
+treewalk="(mc)";
+mainmenutitle="Debian information";
+preoutput="<! automatically generated file. Do not edit (see /usr/share/doc/menu/html)>\n\n";
diff --git a/examples/example_executable_menufile b/examples/example_executable_menufile
new file mode 100644
index 0000000..58e4d00
--- /dev/null
+++ b/examples/example_executable_menufile
@@ -0,0 +1,43 @@
+#!/usr/bin/perl
+
+# This example was contributed by Marc Haber <zugschlus@debian.org>
+# This script can be put into ~/.menu to create a menu of hosts to ssh to.
+
+# Build icons hash to determine which icon file to use for a given menu
+# entry. This basically allows a shorthand notation for the icon, avoiding
+# the need to give the full path to the icon in the data list.
+my %icons;
+$icons{"Debian"}="/usr/share/pixmaps/other/Debian-Swirl.png";
+$icons{"FreeBSD"}="/usr/share/pixmaps/other/Daemon.png";
+$icons{"Redhat"}="/usr/share/pixmaps/other/RedHat.png";
+
+# Loop over the data lines given at the end of this file.
+while( <DATA> ) {
+ # Split data line into data fields
+ my ($host, $hints, $icon) = split;
+ # print menu line using the information read from the data field.
+ print "?package(local.ssh):command=\"ssh $host\" ";
+ print "title=\"$host\" hints=\"$hints\" section=\"local/ssh\" ";
+ print "needs=\"text\" icon=\"$icons{$icon}\"\n";
+}
+
+# This is the list of hosts. Each line corresponds to a single host
+# and menu entry in the format "host hint icon". The host is taken
+# as the target to ssh to and the window title. The hint is given verbatim
+# to the hint option, and the icon is an index into the icons hash to
+# determine which icon file to use for the menu entry.
+__DATA__
+torres Zg2 Debian
+q Zg2 Debian
+7o9 Zg2 Debian
+lefler Zg2 Debian
+darren Zg2 Debian
+vash Zg2 Debian
+gonzo Shell Redhat
+raven Shell FreeBSD
+crystalball Shell Debian
+iris Burda Debian
+ella Burda Debian
+francis Burda Debian
+bianca Burda Debian
+banshee Burda Debian
diff --git a/examples/fvwm b/examples/fvwm
new file mode 100755
index 0000000..fdb341a
--- /dev/null
+++ b/examples/fvwm
@@ -0,0 +1,37 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#I need menu-1.4!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function ex($com)=" Exec \"" title() "\" exec " $com "\n";
+function mod($var,$com) =" " $var " \"" title() "\" exec " $com "\n";
+
+supported;
+ fvwmmodule= mod("Exec", $command);
+ wm= mod("Restart",$command);
+ x11fvwm= ex($command);
+ x11= ex($command);
+ text= ex(term());
+endsupported;
+
+startmenu= "PopUp \"" $section "\"\n";
+endmenu= "EndPopUp\n";
+submenutitle=" Popup \"" title() cond_surr(icon(),"%","%") "\""
+ $section "\n";
+genmenu= "menudefs.hook";
+rcfile= "system.fvwmrc";
+examplercfile="system.fvwmrc-menu";
+rootprefix="/etc/X11/fvwm/";
+userprefix=".fvwm/";
+mainmenutitle="DebianMenu";
diff --git a/examples/fvwm2 b/examples/fvwm2
new file mode 100755
index 0000000..7b46766
--- /dev/null
+++ b/examples/fvwm2
@@ -0,0 +1,58 @@
+#!/usr/bin/install-menu
+#
+#More info: /usr/share/doc/menu/
+#
+
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function sup($com)="+ \"" escfirst(title(), $hotkey, "&")
+ cond_surr(icon(), "%", "%") "\" " $com "\n";
+
+supported;
+ fvwm2module= sup( $command);
+ fvwmmodule= sup("Exec " $command);
+ wm= sup("Restart " $command);
+ x11fvwm2= sup("Exec " $command);
+ x11= sup("Exec " $command);
+ text= sup(term() );
+endsupported;
+
+# Ok, "startmenu" is a little wacky, and comes in 4 parts:
+# 1. If this is running for a user, then we do a DestroyMenu to
+# clear out the system one. Furthermore, if we're dealing with the
+# top-level /Debian menu, then add a title for it (normally done in
+# system.fvwm2rc), and re-read the main-menu-pre.hooks whose results
+# we merrily blew away earlier. This is so that the
+# main-menu-pre.hooks work for users as well as system-wide. Of
+# course, none of this happens if we're running as root to produce the
+# system-wide menudef.hook file.
+# 2. We spit out an "AddToMenu /Foo/Bar/Baz" to start this menu.
+# 3. We add the title to the menu if this isn't the /Debian menu
+# (since that title comes from the system.fvwm2rc).
+# 4. We add a trailing newline to the lot.
+startmenu= ifroot("",
+ "DestroyMenu \"" $section "\"\n"
+ ifeq($section, "/Debian",
+ "AddToMenu \"/Debian\" \"Main Menu\" Title\n"
+ "Read /etc/X11/fvwm2/main-menu-pre.hook\n"
+ "Read .fvwm2/main-menu-pre.hook\n"))
+ "AddToMenu \"" $section "\" "
+ ifnempty($title, " \"" $title "\" Title")
+ "\n";
+
+endmenu= "\n";
+submenutitle= "+ \"" escfirst($title,$hotkey,"&")
+ cond_surr($icon,"%","%") "\" PopUp " $section "\n";
+genmenu= "menudefs.hook";
+rootprefix="/etc/X11/fvwm2/";
+userprefix="/.fvwm2/";
+treewalk="c(m)";
+
+# This is just as an example of what is possible. It causes all
+# running fvwm2's to restart. Uncomment the following line if you
+# want this to happen.
+#postrun="killall -USR1 /usr/X11R6/bin/fvwm2";
diff --git a/examples/fvwm95 b/examples/fvwm95
new file mode 100755
index 0000000..57c68fd
--- /dev/null
+++ b/examples/fvwm95
@@ -0,0 +1,48 @@
+#!/usr/bin/install-menu
+#I need menu-1!
+#
+#I seem not to have fvwm95 installed, so I havent actually tested this.
+#
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function sup($com)="+ \"" escfirst(title(), $hotkey, "&")
+ cond_surr(icon(), "%", "%") "\" " $com "\n";
+
+
+supported;
+ fvwm2module= sup( $command);
+ fvwmmodule= sup("Exec " $command);
+ wm= sup("Restart " $command);
+ x11fvwm2= sup("Exec " $command);
+ x11= sup("Exec " $command);
+ text= sup(term() );
+endsupported;
+
+startmenu= "DestroyMenu \"" $section "\"\nAddToMenu \""
+ $section "\" \"" $title "\" Title\n";
+
+endmenu= "\n";
+submenutitle= "+ \"" escfirst($title,$hotkey,"&")
+ cond_surr($icon,"%","%") "\" PopUp " $section "\n";
+genmenu= "menudefs.hook";
+rootprefix="/etc/X11/fvwm95/";
+userprefix="/.fvwm95";
+treewalk="c(m)";
+mainmenutitle="Main Menu";
+
+#this is just as an example of what is possible, I don't think
+#this should go into the default fvwm95:
+# postrun="killall -USR1 /usr/X11R6/bin/fvwm95";
+
+
diff --git a/examples/gnome-panel b/examples/gnome-panel
new file mode 100755
index 0000000..68efbd2
--- /dev/null
+++ b/examples/gnome-panel
@@ -0,0 +1,48 @@
+#!/usr/bin/install-menu
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function findicon($filename)=
+ ifelsefile($filename, $filename,
+ iffile("/usr/X11R6/include/X11/pixmaps/" $filename,
+ "/usr/X11R6/include/X11/pixmaps/" $filename));
+
+function AppEntry($var)=
+ "[Desktop Entry]\n"
+ "Name=" title() "\n"
+ "Comment=" ifelse($longtitle,$longtitle,$title) "\n"
+ "Exec=" $command "\n"
+ $var
+ ifnempty($icon,"Icon=" findicon($icon) "\n")
+ "Type=Application\n" ;
+
+function SubmenuEntry()=
+ "[Desktop Entry]\n"
+ "Name=" $title "\n"
+ "Icon=gnome-folder.png\n"
+ "Type=Directory\n";
+
+supported;
+ x11= AppEntry("Terminal=false\n");
+ text= AppEntry("Terminal=true\n");
+endsupported;
+
+genmenu=parent($section) "/" $title ifeqelse($needs, "", "/.directory", ".desktop") "";
+startmenu="";
+endmenu="";
+
+rootsection="";
+
+rootprefix="/var/lib/gnome/Debian/";
+userprefix=".gnome/Debian";
+
+treewalk="M";
+#submenutitle="SUBMENUTITLE section=[" $section "] title=[" $title "]";
+submenutitle=SubmenuEntry();
+
+prerun="rm -rf " prefix() "/*";
+
+preoutput="";
diff --git a/examples/menu.config b/examples/menu.config
new file mode 100644
index 0000000..693331e
--- /dev/null
+++ b/examples/menu.config
@@ -0,0 +1,3 @@
+verbosity=quiet
+method=stderr
+
diff --git a/examples/menu.h b/examples/menu.h
new file mode 100644
index 0000000..48c2007
--- /dev/null
+++ b/examples/menu.h
@@ -0,0 +1,91 @@
+# -*- mode: shell-script; -*-
+#The definitions here are used by all window managers that !include menu.h.
+#This way, you can set your preferences (like whether to use xterm/rxvt,
+#how long do you want your menu titles, etc) for all window-managers.
+#
+#This file is part of the menu package (version 1.4 and higher).
+#For more information, see /usr/share/doc/menu/html
+
+#If you prefer long titles, change the definition below accordingly.
+
+function title()=$title
+
+#function title()=ifelse($longtitle,$longtitle,$title)
+
+#If you don't like to see the icons, (un)comment (out) the lines below:
+function icon()=ifelse($icon32x32, $icon32x32, \
+ ifelse($icon16x16, $icon16x16, $icon))
+#function icon()= ""
+
+#Define the X terminal emulator to use for text apps under X11.
+#The following use the x-terminal-emulator alternative.
+
+function term()=\
+ "x-terminal-emulator " ifnempty($visible,"-ut") \
+ ifnempty($geometry,"-geometry ") $geometry \
+ " -T \"" esc(title(),"\\\"") "\"" \
+ " -e sh -c \"" esc($command,"\\\"") "\""
+
+#The above is more correct but unfortunately, some menu-methods
+#do not support ''.
+
+#function term()=\
+# "x-terminal-emulator " ifnempty($visible,"-ut") \
+# ifnempty($geometry,"-geometry ") $geometry \
+# " -T '" escwith(title(),"'","'\\'") \
+# "' -e sh -c '" escwith($command,"'","'\\'") "'"
+
+#Examples:
+#Use a specially cooked xterm instead:
+#function term()=\
+# "xterm -sb -sl 500 -j -ls -fn 7x14 -geometry 80x30"\
+# " -T '" escwith(title(),"'","'\\'") \
+# "' -e sh -c '" escwith($command,"'","'\\'") "'"
+
+#Force use of rxvt:
+#function term()=\
+# "rxvt " ifnempty($visible,"-ut") \
+# ifnempty($geometry,"-geometry ") $geometry \
+# " -T '" escwith(title(),"'","'\\'") \
+# "' -e sh -c '" escwith($command,"'","'\\'") "'"
+
+
+
+# This sort menu entry case-insensitively.
+sort=$sort ":" tolower(title())
+
+#If you want your submenus to come before the commands themselves
+#in the menus (in case of mixed menus):
+#
+#sort=$sort ":" ifelse($command, "1", "0" ) ":" title()
+
+#Activate menu section translations:
+outputlanguage="LOCALE"
+#menu-methods need to set 'outputencoding' before translations are really
+#enabled.
+
+
+#The following is for the hints (or optimised tree structure):
+# (For more info on these variables, see /usr/share/doc/menu/*)
+
+#If you want menu to optimize the tree, set this to true:
+hint_optimize=false
+#for more info on the other variables, see /usr/share/doc/menu/
+#hint_nentry=6
+#hint_topnentry=4
+#hint_mixedpenalty=15
+#
+#The variables below are only useful if you want to speedup
+#the finding of the best tree.
+#hint_minhintfreq=0.1
+#hint_mlpenalty=2000
+#hint_max_ntry=4
+#hint_max_iter_hint=5
+#hint_debug=false
+
+
+forcetree
+#Due to the existance of both /Apps/System and /System,
+#menu gets confused. So, force /System in it's own section
+ System
+endforcetree
diff --git a/examples/pdmenu b/examples/pdmenu
new file mode 100755
index 0000000..9ce82fb
--- /dev/null
+++ b/examples/pdmenu
@@ -0,0 +1,68 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#
+# Written by Joey Hess.
+#
+# This generates a pdmenurc file that can be preprocessed by cpp to enable
+# different types of displays. For example, you can -Dx11 -Xtext to display
+# only the text and x11 entries, and not the vc ones.
+#
+# More info: /usr/share/doc/menu/html, /usr/doc/pdmenu/README.Debian
+
+# The verson of the menu package that can process this.
+compat="menu-1"
+
+#include the local preferences, pdmenu only uses the defintion of title().
+!include menu.h
+
+compat="menu-2"
+
+# Filename of the pdmenurc file we will generate.
+genmenu="pdmenurc_auto";
+
+# Where the system wide generated file is placed.
+rootprefix="/var/lib/pdmenu/";
+
+# Title of the top level menu that is made.
+mainmenutitle="Debian Menus";
+
+# Don't ever use "q" as a hotkey in menus, becuase it is used to popdown
+# submenus.
+hotkeyexclude="q";
+
+# Some text to go at the top of the autogenerated file.
+preoutput="# Automatically generated pdmenurc file.\n# Do not edit (see /usr/doc/pdmenu/README.debian)\n\n";
+
+# In what order we output the menus.
+treewalk="c(m)";
+
+# How to start a new menu in the rc file.
+startmenu="menu:" esc($section,":") ":" esc(title(),":") "\n";
+
+# How to add a submenu to a menu.
+# Notice that thanks to cpp and some #defines, the submenu is only added if
+# the submenu actually contains menu entries.
+submenutitle=
+ "#ifdef " cppesc($section) "\n"
+ "#define " cppesc(parent($section)) "\n"
+ " show:" esc(escfirst(title(),$hotkey,"_"),":") "..::" esc($section,":") "\n"
+ "#endif\n";
+
+# The supported display types, in order of preference.
+supported;
+x11= "#ifdef x11\n"
+ "#define " cppesc(parent($section)) "\n"
+ " exec:" esc(escfirst(title(),$hotkey,"_"),":") ":n:" $command " >/dev/null 2>&1 &\n"
+ "#endif\n";
+vc= "#ifdef vc\n"
+ "#define " cppesc(parent($section)) "\n"
+ " exec:" esc(escfirst(title(),$hotkey,"_"),":") "::" $command "\n"
+ "#endif\n";
+text= "#ifdef text\n"
+ "#define " cppesc(parent($section)) "\n"
+ " exec:" esc(escfirst(title(),$hotkey,"_"),":") "::" $command "\n"
+ "#endif\n";
+endsupported;
+
+# Pdmenu doesn't need anything special at the end of a menu.
+endmenu= "\n";
diff --git a/examples/system.9wmrc-menu b/examples/system.9wmrc-menu
new file mode 100644
index 0000000..dffe7a7
--- /dev/null
+++ b/examples/system.9wmrc-menu
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+#I need to be executable!!
+#
+#(all the other system.*wm*.rc files don't need to be executable,
+#but the 9wm one does.
+#(the system.9wmrc-menu file doesn't need to be executable, though)
+
+config=/etc/X11/9wm/system.9wmrc
+
+#
+#the next line inludes the /etc/X11/9wm/menudefs.hook file (or
+#the personalised version from the user.
+#
+include-menu-defs
+
+while test "$#" != "1" ; do
+ case "$1" in
+ --menu)
+ (echo /usr/bin/X11/9menu -teleport -label $2 -popdown \
+ `$2` exit)|/bin/sh;
+ shift;;
+ --start)
+ (echo /usr/bin/X11/9menu -iconic -teleport -label $2 -popdown \
+ `$2` exit)|/bin/sh;
+ shift;;
+
+ *)
+ echo Usage: $config --menu menu-name
+ exit;;
+ esac
+done
+
diff --git a/examples/system.ctwmrc-menu b/examples/system.ctwmrc-menu
new file mode 100644
index 0000000..1e0e86f
--- /dev/null
+++ b/examples/system.ctwmrc-menu
@@ -0,0 +1,199 @@
+#
+# $XConsortium: system.twmrc,v 1.8 91/04/23 21:10:58 gildea Exp $
+#
+# Default twm configuration file; needs to be kept small to conserve string
+# space in systems whose compilers don't handle medium-sized strings.
+#
+# Sites should tailor this file, providing any extra title buttons, menus, etc.
+# that may be appropriate for their environment. For example, if most of the
+# users were accustomed to uwm, the defaults could be set up not to decorate
+# any windows and to use meta-keys.
+#
+
+NoGrabServer
+RestartPreviousState
+DecorateTransients
+TitleFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+ResizeFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+MenuFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+IconFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*"
+IconManagerFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*"
+ShowWorkSpaceManager # start with workspcace manager up
+UseThreeDMenus
+UseThreeDTitles
+UseThreeDIconManagers
+UseThreeDBorders
+UseThreeDWMap
+SunkFocusWindowTitle
+
+workspacemanagergeometry "360x60+60-0" 4
+WorkSpaces {
+ "One" {"#686B9F" "white" "DeepSkyBlue3"}
+ "Two" {"#619AAE" "white" "firebrick" "white" "xpm:background8.xpm"}
+ "Three" {"#727786" "white" "brown"}
+ "Four" {"#8C5b7A" "white" "MidnightBlue"}
+
+ "Five" {"#727786" "white" "firebrick"}
+ "Six" {"#619AAE" "white" "firebrick" "white" "xpm:ball%.xpm"}
+ "Seven" {"#8C5b7A" "white" "chartreuse4"}
+ "Eight" {"#686B9F" "white" "MidnightBlue"}
+}
+
+Color
+{
+ BorderColor "blue"
+ DefaultBackground "green"
+ DefaultForeground "gray85"
+ BorderTileBackground "DeepSkyBlue1" {
+ "xterm" "DeepSkyBlue3"
+ }
+ BorderTileForeground "Black" {
+ "xterm" "DeepSkyBlue3"
+ }
+ TitleBackground "yellow" {
+ "xterm" "DeepSkyBlue3"
+ }
+ TitleForeground "blue" {
+ "xterm" "White"
+ }
+ MenuBackground "yellow"
+ MenuForeground "blue"
+ MenuTitleBackground "red"
+ MenuTitleForeground "yellow"
+ IconBackground "LightSlateBlue"
+ IconForeground "White"
+ IconBorderColor "gray85"
+ IconManagerBackground "DeepSkyBlue3" {"Axe" "DeepSkyBlue3" "xload" "DeepSkyBlue2"}
+ IconManagerForeground "blue"
+ MapWindowBackground "DeepSkyBlue1" {
+ "root*" "Red"
+ "xterm" "DeepSkyBlue3"
+ "Axe" "Yellow"
+ }
+ MapWindowForeground "Black" {
+ "xterm" "White"
+ }
+}
+
+IconManagerDontShow {
+ "WorkSpaceManager"
+ "xload"
+ "xclock"
+ "xdaliclock"
+ "xlogo"
+ "xpinguin"
+ "xteddy"
+}
+
+NoTitle { # little programs that look like icons
+ "TWM Icon Manager"
+ "WorkSpaceManager"
+ "xload"
+ "xclock"
+ "xdaliclock"
+ "xlogo"
+ "xpinguin"
+ "xteddy"
+}
+
+AutoRaise { # These window will raise automagically
+ "XTerm"
+ "Emacs"
+ "Netscape"
+ "Mosaic"
+ "Chimera"
+}
+
+#
+# Define some useful functions for motion-based actions.
+#
+MoveDelta 3
+Function "move-or-lower" { f.move f.deltastop f.lower }
+Function "move-or-raise" { f.move f.deltastop f.raise }
+Function "move-or-iconify" { f.move f.deltastop f.iconify }
+
+#
+# Set some useful bindings. Sort of uwm-ish, sort of simple-button-ish
+#
+Button1 = : root : f.menu "/Debian"
+Button2 = : root : f.menu "windowops"
+
+Button1 = m : window|icon : f.function "move-or-lower"
+Button2 = m : window|icon : f.iconify
+Button3 = m : window|icon : f.function "move-or-raise"
+
+Button1 = : title : f.function "move-or-raise"
+Button2 = : title : f.raiselower
+
+Button1 = : icon : f.function "move-or-iconify"
+Button2 = : icon : f.iconify
+
+Button1 = : iconmgr : f.iconify
+Button2 = : iconmgr : f.iconify
+
+Button1 = : frame : f.resize
+Button1 = m : frame : f.move
+Button2 = : frame : f.raiselower
+#
+# And a menus with the usual things
+#
+
+
+#This line includes the /etc/X11/ctwm/menudefs.hook file, as I don't
+#know how else to make twm include files.
+
+include-menu-defs
+
+
+menu "windowops" {
+ "Windows" f.title
+ "Occupy" f.occupy
+ "Occupy All" f.occupyall
+ "Iconify" f.iconify
+ "Refresh" f.refresh
+ "Vanish" f.vanish
+ "Info" f.identify
+ "" f.separator
+ "Resize" f.resize
+ "Move" f.move
+ "Adopt Window" f.adoptwindow
+ "Animate" f.startanimation
+ "Don't animate" f.stopanimation
+ "" f.separator
+ "Send Delete" f.delete
+ "Kill Window" f.destroy
+ "Pin menu" f.pin
+ "" f.separator
+ "Restart" f.restart
+ "Exit" f.quit
+}
+
+menu "windowmenu" {
+ "Occupy ..." f.occupy
+ "Occupy All" f.occupyall
+ "Iconify" f.iconify
+ "RaiseLower" f.raiselower
+ "Refresh" f.winrefresh
+ "Zoom" f.menu "Zoom"
+ "Vanish" f.vanish
+ "Focus" f.focus
+ "Unfocus" f.unfocus
+ "" f.separator
+ "Send Delete" f.delete
+ "Kill Window" f.destroy
+ "Resize..." f.resize
+ "Move..." f.move
+}
+
+menu "iconmenu" {
+ "Actions" f.title
+ "" f.separator
+ "Restore" f.iconify
+ "Move" f.move
+ "Occupy ..." f.occupy
+ "Occupy All" f.occupyall
+ "" f.separator
+ "Send Delete" f.delete
+ "Kill Window" f.destroy
+}
+
diff --git a/examples/system.fvwm2rc b/examples/system.fvwm2rc
new file mode 100644
index 0000000..ce60e78
--- /dev/null
+++ b/examples/system.fvwm2rc
@@ -0,0 +1,381 @@
+#
+# Configuration file for fvwm2
+# by Lars Wirzenius
+# "@(#):$Id: system.fvwm2rc,v 1.1 2003-04-07 17:04:19 ballombe Exp $"
+#
+# This file can be used both as the system.fvwmrc and the per-user ~/.fvwm2rc.
+# It uses certain `hooks' (files stored in /etc/X11/fvwm2 or ~/.fvwm2) to allow
+# the system administrator and user to modify menus, colors, and so on without
+# having to change this file.
+#
+# The defaults that this file sets up follow my own taste. They attempt to set
+# up a nice, easy, comfortable environment for the "ordinary" user. However,
+# using the hooks, it should be possible to change anything.
+#
+# Please read /usr/doc/fvwm2/README.sysrc for more information.
+#
+# Hopefully, you will never have to modify this file.
+#
+
+#
+# Section: pre.hook
+#
+# Use pre.hook for things that need to be done before anything else.
+# For example, a PixmapPath might be defined here.
+#
+Style "Fvwm Pager" StaysOnTop
+Style "FvwmPager" StaysOnTop
+Style "Fvwm*" NoTitle, NoHandles, Sticky, WindowListSkip,
+Style "Fvwm*" BorderWidth 0,CirculateSkipIcon
+Style "*" SmartPlacement
+Style "*" RandomPlacement
+Style "Xlock" NoTitle
+Style "xlock" NoTitle
+Module FvwmPager 0 3
+*FvwmButtons(4x1) - whatever Swallow "FvwmPager" Module FvwmPager 0 3
+*FvwmPagerBack #908090
+*FvwmPagerFore #484048
+*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmPagerHilight #cab3ca
+*FvwmPagerGeometry -1-1
+#*FvwmPagerLabel 0 Misc
+#*FvwmPagerLabel 1 Maker
+#*FvwmPagerLabel 2 Mail
+#*FvwmPagerLabel 3 Matlab
+*FvwmPagerSmallFont 5x8
+
+
+Read /etc/X11/fvwm2/pre.hook
+Read .fvwm2/pre.hook
+
+
+#
+# Section: Various global settings
+#
+# These settings are personal. If you need to modify them, do so in post.hook.
+#
+#
+# DeskTopSize sets the size of the desktop in units of physical screen
+# `pages'. I prefer to use separate desktops instead of pages, but
+# many reasonable people do it the other way. My reason is that this
+# makes it possible to have different backgrounds when changing the
+# workspace.
+#
+
+DeskTopSize 3x3
+
+#
+# I don't like to be able to move between pages or desks simply by
+# moving the mouse against the screen border. I find it very
+# confusing. The following command disables it.
+#
+
+EdgeScroll 0 0
+
+#
+# When moving a window against the edge of the screen, it is
+# nice to have a small resistance before the window is moved outside
+# the screen. This makes it easier to line windows against the
+# edges.
+#
+
+EdgeResistance 0 100
+
+
+#
+# Section: Styles, colors, fonts, and related things
+#
+# This section defines the looks, behavior, and other attributes of windows.
+# These are also quite personal. Modify them in post.hook.
+#
+#
+# The following sets window colors. This is highly personal,
+# of course.
+#
+
+Style "*" Color black/darkgrey
+HilightColor white steelblue
+WindowFont -adobe-helvetica-bold-r-*-*-12-*
+
+#
+# The following sets the window decorations: the window title, borders,
+# and the handles in the corners.
+#
+
+ButtonStyle 2 16 20x20@1 30x20@1 50x40@1 70x20@1 80x20@1 80x30@0 60x50@0 80x80@0 70x80@0 50x60@0 30x80@0 20x80@0 20x70@0 40x50@1 20x30@0 20x20@1
+ButtonStyle 4 5 25x25@1 25x75@1 75x75@0 75x25@0 25x25@1
+ButtonStyle 6 2 80x76@0 20x76@1
+
+Style "*" BorderWidth 6
+Style "*" HandleWidth 6
+Style "*" MWMBorder
+Style "*" MWMDecor
+Style "*" DecorateTransient
+Style "*" SmartPlacement
+Style "*" RandomPlacement
+Style "*" IconBox 0 0 50 -1
+
+Style "Fvwm*" NoTitle
+Style "Fvwm*" WindowListSkip
+Style "Fvwm*" CirculateSkip
+
+Style "FvwmButtons" Sticky
+Style "FvwmIconMan" Sticky
+
+Style "FvwmIdent" Title
+Style "FvwmIdent" WindowListHit
+Style "FvwmIdent" CirculateHit
+
+
+#
+# Section: Init and restart functions
+#
+# This section defines the functions InitFunction and RestartFunction.
+# InitFunction is executed automatically when fvwm first starts.
+# RestartFunction is executed automatically when fvwm restarts itself.
+# They share a common hook, init-restart.hook, and two specific hooks,
+# init.hook and restart.hook.
+#
+# init-restart.hook should be used for starting fvwm modules, such as the
+# button bar. init-hook should be used to start other applications; they
+# should not be started again, when fvwm is restarted, since they don't
+# die like fvwm modules do. restart.hook exists mostly for completeness;
+# tell me if you find any use for it.
+#
+# InitFunction runs the script setup-background, which looks in
+# ~/.fvwm2 to see if the user wants some specific background color or
+# image.
+#
+
+DestroyMenu InitFunction
+AddToFunc InitFunction
++ "I" Exec setup-background
+Read /etc/X11/fvwm2/init.hook
+Read /etc/X11/fvwm2/init-restart.hook
+Read .fvwm2/init.hook
+Read .fvwm2/init-restart.hook
+
+DestroyMenu RestartFunction
+AddToFunc RestartFunction
+Read /etc/X11/fvwm2/restart.hook
+Read /etc/X11/fvwm2/init-restart.hook
+Read .fvwm2/restart.hook
+Read .fvwm2/init-restart.hook
+
+
+#
+# Section: Menus
+#
+# This section defines a small menu structure. The main menu contains
+# some typical entries, and uses a hook (main-menu.hook) to allow the
+# user to add new entries. Most of the default entries are submenus,
+# which are also defined here.
+#
+
+#
+# MWM style menus are easier to use and better for Windows refugees.
+#
+
+MenuStyle black grey white -adobe-helvetica-bold-r-*-*-12-* mwm
+
+#
+# The main menu.
+#
+
+###DestroyMenu MainMenu
+###AddToMenu MainMenu
+###+ "Main menu" Title
+###Read /etc/X11/fvwm2/main-menu-pre.hook
+###Read .fvwm2/main-menu-pre.hook
+###Read /etc/X11/fvwm2/main-menu.hook
+###Read .fvwm2/main-menu.hook
+###+ "" Nop
+###+ "Exit Fvwm" Popup Quit-Verify
+###
+####
+# Read in system and user menu definitions.
+#
+
+Read /etc/X11/fvwm2/menudefs.hook
+Read .fvwm2/menudefs.hook
+
+#
+# The Window-Ops menu is for manipulating windows. It is invoked either
+# from the main menu, or directly from the root window.
+#
+
+DestroyMenu Window-Ops
+AddToMenu Window-Ops
++ "Window Ops" Title
++ "Move" Move
++ "Resize" Resize
++ "Raise" Raise
++ "Lower" Lower
++ "(De)Iconify" Iconify
++ "(Un)Stick" Stick
++ "(Un)Maximize vertical" Maximize 0 100
++ "(Un)Maximize horizontal" Maximize 100 0
++ "(Un)Maximize to screen" Maximize 100 100
++ "" Nop
++ "Destroy" Destroy
++ "Close" Close
+
+#
+# Quit-Verify checks that the user really wants to exit.
+#
+
+DestroyMenu Quit-Verify
+AddToMenu Quit-Verify
++ "Restart Fvwm" Restart fvwm2
++ "" Nop
++ "Really quit" Quit
+
+
+#
+# Section: Mouse bindings
+#
+# This section defines the mouse bindings, that is, all the things that
+# can be done with the mouse.
+#
+
+#
+# Each button gives a different menu from the background.
+#
+
+Mouse 1 R A Menu /Debian
+Mouse 2 R A Menu Window-Ops
+Mouse 3 R A WindowList
+
+#
+# Moving and resizing, depending on which part of the window
+# you grab (T=title bar, S=side/top/bottom, F=corner).
+#
+
+Mouse 1 T A move-or-raise
+Mouse 2 T A move-and-raise-or-raiselower
+Mouse 3 T A move-or-lower
+Mouse 0 F A resize-or-raiselower
+Mouse 1 S A move-or-raise
+Mouse 2 S A move-and-raise-or-raiselower
+Mouse 3 S A move-or-lower
+
+
+#
+# Move or de-iconify an icon.
+#
+
+Mouse 0 I A move-or-winmenu-or-deiconify
+
+#
+# Buttons on the title bar (1,3,5,7,9 are on the left, 0,8,6,4,2 on
+# the right side of the title bar). Note that the bindings here
+# make more sense if the ButtonStyle's defined earlier are retained.
+#
+
+Mouse 0 1 A Popup Window-Ops
+Mouse 0 2 A Close
+Mouse 0 4 A Maximize 0 100
+Mouse 0 6 A Iconify
+
+
+#
+# Section: Key bindings
+#
+# This section binds some actions to keys. The bindings have been inspired
+# by MWM, Windows, and nightmares. Everything that these key bindings do,
+# can be done without them. Therefore they should not be too much of a
+# burden on new users, but it definitely _can_ be confusing to press a
+# key by accident and have it do something completely unexpected.
+#
+
+Key Tab A M Next [CurrentDesk !iconic] Focus
+Key Tab A MS Prev [CurrentDesk !iconic] Focus
+Key Tab A CM Next [CurrentDesk] deiconify-and-focus
+Key Tab A CMS Prev [CurrentDesk] deiconify-and-focus
+Key Left A M Desk -1 0
+Key Up A M Desk -1 0
+Key Right A M Desk 1 0
+Key Down A M Desk 1 0
+Key F1 A M Popup Window-Ops
+Key F2 A M Popup /Debian
+Key F3 A M Lower
+Key F4 A M WindowList
+Key F5 A M CirculateUp
+Key F6 A M CirculateDown
+Key F7 A M Move
+Key F8 A M Resize
+Key F9 A M Iconify
+Key F10 A M Maximize
+
+Key F1 A C exec /usr/bin/X11/xterm_color -sb -sl 500 -j -ls -fn 7x14 -geometry 80x30
+#
+# Section: Functions
+#
+# This section defines various functions. Not all of these are used by
+# the default bindings, but they can be useful for a user who wants to
+# customize things.
+#
+#
+# The following functions operate on a window or menu. The
+# names are systematic: foo means "do foo"; foo-or-bar means
+# "do foo, if mouse is moving, bar if click"; and foo-or-bar-or-baz
+# adds "baz, if double-clicked".
+#
+
+DestroyMenu move-or-winmenu-or-deiconify
+AddToFunc move-or-winmenu-or-deiconify
++ "M" Move
++ "C" Popup Window-Ops
++ "D" Iconify
+
+DestroyMenu deiconify-and-focus
+AddToFunc deiconify-and-focus
++ "I" Iconify -1
++ "I" Focus
+
+DestroyMenu deiconify-and-raise
+AddToFunc deiconify-and-raise
++ "I" Iconify -1
++ "I" Raise
+
+DestroyMenu move-or-raiselower
+AddToFunc move-or-raiselower
++ "M" Move
++ "C" RaiseLower
+
+DestroyMenu move-or-raise
+AddToFunc move-or-raise
++ "M" Move
++ "C" Raise
+
+DestroyMenu move-or-lower
+AddToFunc move-or-lower
++ "M" Move
++ "C" Lower
+
+DestroyMenu move-and-raise-or-raiselower
+AddToFunc move-and-raise-or-raiselower
++ "M" Move
++ "M" Raise
++ "C" RaiseLower
+
+DestroyMenu move-or-raiselower-or-maximize-vertical
+AddToFunc move-or-raiselower-or-maximize-vertical
++ "M" Move
++ "C" RaiseLower
++ "D" Maximize 0 100
+
+DestroyMenu resize-or-raiselower
+AddToFunc resize-or-raiselower
++ "M" Resize
++ "C" RaiseLower
+
+#
+# Section: post.hook
+#
+# Use post.hook to force things that may have been changed earlier, for
+# example, key bindinds.
+#
+
+Read /etc/X11/fvwm2/post.hook
+Read .fvwm2/post.hook
diff --git a/examples/system.fvwm2rc95 b/examples/system.fvwm2rc95
new file mode 100644
index 0000000..ba8a7bb
--- /dev/null
+++ b/examples/system.fvwm2rc95
@@ -0,0 +1,520 @@
+#
+# .fvwm2rc95 example configuration file for fvwm95-2.0.41
+#
+
+#========================================================================#
+
+#
+# Fonts - one for window titles, another for icons, and another for the menus
+#
+WindowFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
+IconFont fixed
+MenuFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*
+
+#
+# Set the default window colors. The syntax is:
+# DefaultColors winforecolor winbackcolor titleforecolor titlebackcolor
+# where:
+# winbackcolor is the background (border) color of all windows,
+# including the menu windows
+# winforecolor is used for the menu text
+# titlebackcolor is the background color used for title bars of
+# non selected windows
+# titleforecolor is the color of the title text of non selected windows
+#
+DefaultColors Black #c0c0c0 #c0c0c0 grey51
+
+#
+# Text and background color for the title bar of the active (selected) window
+#
+HilightColors White #000080
+
+#
+# Text and background color for the title bar of sticky windows
+#
+StickyColors grey51 #60c080
+
+# You can also use the Style command to set the colors of individual
+# title bars of some non-selected windows
+
+#Style "*" ForeColor #c0c0c0
+#Style "*" BackColor grey51
+
+#========================================================================#
+
+#
+# Set up the major operating modes
+#
+
+Style "*" ClickToFocus
+# Comment the above and uncomment one of the following if you prefer
+# focus follow mouse.
+#Style "*" MouseFocus
+#Style "*" SloppyFocus
+
+# If we use the FvwmTaskBar we don't need the icons :-)
+# Style "..." Icon are also commented below.
+Style "*" NoIcon
+Style "*" MWMFunctions
+Style "*" HintOverride
+Style "*" MWMDecor
+Style "*" DecorateTransient
+
+OpaqueMoveSize 100
+EdgeScroll 100 100
+EdgeResistance 10000 0
+
+#
+# RandomPlacement prevents user interaction while placing windows:
+#
+Style "*" RandomPlacement
+
+#
+# NoPPosition instructs fvwm to ignore the PPosition field in window
+# geometry hints. Emacs annoyingly sets PPosition to (0,0)!
+#
+Style "*" NoPPosition
+
+Read /etc/X11/fvwm95/pre.hook
+Read .fvwm95/pre.hook
+
+#========================================================================#
+
+#
+# Set the desk top size in units of physical screen size
+#
+
+
+
+
+DeskTopSize 3x2
+
+#========================================================================#
+
+#
+# Module path and paths to the icons
+# ModulePath is a colon-separated list, just like regular unix PATH
+#
+ModulePath /usr/X11R6/lib/X11/fvwm95-2/
+PixmapPath /usr/X11R6/pixmaps:/usr/include/X11/pixmaps/:/usr/local/mini-icons/
+IconPath /usr/X11R6/icons:/usr/include/X11/bitmaps/:/usr/local/icons/
+
+#========================================================================#
+
+# Set the decoration styles and window options
+# If compatible styles are set for a single window in multiple Style
+# commands, then the styles are ORed together. If conflicting styles
+# are set, the last one specified is used.
+
+# These commands should command before any menus or functions are defined,
+# and before the internal pager is started.
+
+#
+# Default border and handle widths
+#
+Style "*" BorderWidth 5, HandleWidth 5
+
+Style "Fvwm*" NoTitle, Sticky, WindowListSkip
+Style "Fvwm Pager" StaysOnTop, NoHandles
+Style "FvwmBanner" StaysOnTop
+Style "FvwmButtons" NoTitle, NoHandles, Sticky, WindowListSkip,BorderWidth 5
+Style "*lock" NoTitle, NoHandles, Sticky, WindowListSkip
+Style "xbiff" NoTitle, Sticky, WindowListSkip
+
+#
+# Some mini-icons for the title bar
+#
+Style "*" TitleIcon mini-x2.xpm
+Style "*xterm*" TitleIcon mini-term.xpm
+Style "rxvt" TitleIcon mini-term.xpm
+Style "xcalc" TitleIcon mini-calc.xpm
+Style "xsession" TitleIcon mini-bx2.xpm
+Style "xv" TitleIcon mini-xv.xpm
+Style "Netscape" TitleIcon mini-nscape.xpm
+Style "xmag" TitleIcon mini-zoom.xpm
+Style "editor" TitleIcon mini-edit.xpm
+Style "tkps" TitleIcon mini-run.xpm
+Style "Ghostview" TitleIcon mini-gv.xpm
+Style "Xcolorsel" TitleIcon mini-colors.xpm
+Style "IDL*" TitleIcon mini-zoom.xpm
+Style "xeyes" TitleIcon mini-eyes.xpm
+Style "*fm*" TitleIcon mini-filemgr.xpm
+# xman resource names
+Style "topBox" TitleIcon mini-book1.xpm
+Style "help" TitleIcon mini-book2.xpm
+Style "manualBrowser" TitleIcon mini-book2.xpm
+# xpaint resource names
+Style "xpaint" TitleIcon mini-paint.xpm
+Style "Canvas" TitleIcon mini-paint.xpm
+Style "fatbits" TitleIcon mini-paint.xpm
+Style "filebrowser" TitleIcon mini-ofolder.xpm
+
+Style "FvwmFile" TitleIcon mini-ofolder.xpm
+Style "XDbx" TitleIcon mini-bug2.xpm
+
+
+#Style "rxvt" Icon term.xpm
+#Style "xterm" Icon xterm.xpm
+#Style "color_xterm" Icon rterm.xpm
+#Style "Appointment" Icon datebook.xpm
+#Style "xcalc" Icon Rcalc.xpm
+#Style "xbiff" Icon mail1.xpm
+#Style "xmh" Icon mail1.xpm, StartsOnDesk 2
+#Style "xman" Icon xman.xpm
+#Style "xvgr" Icon graphs.xpm
+#Style "matlab" Icon math4.xpm
+#Style "xmag" Icon mag_glass.xpm
+#Style "xgraph" Icon graphs.xpm
+#Style "xv" Icon xview.xpm
+#Style "FvwmButtons" Icon toolbox.xpm
+#Style "xconsole" Icon koala.xpm
+#Style "xsession" Icon koala.xpm
+#Style "editor" Icon textedit.xpm
+#Style "ghostview" Icon gv.xpm
+
+#========================================================================#
+
+#
+# Stuff to do at start-up
+#
+
+AddToFunc "InitFunction" "I" Exec xsetroot -solid cyan4 &
+#+ "I" Module FvwmBanner
++ "I" Module FvwmButtons
++ "I" Module FvwmTaskBar
+#+ "I" Module FvwmPager 0 3
+
+AddToFunc "RestartFunction" "I" Module FvwmButtons
++ "I" Module FvwmTaskBar
+#+ "I" Module FvwmPager 0 3
+
+
+#========================================================================#
+
+# Now define some handy complex functions
+
+#
+# This one moves and then raises the window if you drag the mouse,
+# only raises the window if you click, or does a full maximize if
+# you double click
+#
+AddToFunc "Move-or-Raise" "M" Move
++ "M" Raise
++ "C" Raise
++ "D" Maximize 100 100
+
+#
+# This one moves and then lowers the window if you drag the mouse,
+# only lowers the window if you click, or does a RaiseLower if you double
+# click
+#
+AddToFunc "Move-or-Lower" "M" Move
++ "M" Lower
++ "C" Lower
++ "D" RaiseLower
+
+#
+# This one moves or (de)iconifies:
+#
+AddToFunc "Move-or-Iconify" "M" Move
++ "D" Iconify
+
+#
+# This one resizes and then raises the window if you drag the mouse,
+# only raises the window if you click, or does a RaiseLower if you double
+# click
+#
+AddToFunc "Resize-or-Raise" "M" Resize
++ "M" Raise
++ "C" Raise
++ "D" RaiseLower
+
+
+#
+# The main menu.
+#
+
+
+#
+# Read in system and user menu definitions.
+#
+
+Read /etc/X11/fvwm95/menudefs.hook
+Read .fvwm95/menudefs.hook
+
+AddToMenu /Debian
++ "" Nop
++ "Exit Fvwm" Popup Quit-Verify
+
+
+#========================================================================#
+#
+# The Window-Ops menu is for manipulating windows. It is invoked either
+# from the main menu, or directly from the root window.
+#
+
+
+#
+# Now define the menus - defer bindings until later
+#
+
+# This is for the Start menu of the FvwmTaskBar
+
+
+#
+# This defines the most common window operations
+#
+AddToMenu "Window" "Window Ops" Title
++ "&Move" Function Move-or-Raise
++ "&Resize" Function Resize-or-Raise
++ "R&aise%mini-raise.xpm%" Raise
++ "&Lower%mini-lower.xpm%" Lower
++ "(De)Iconify" Iconify
++ "(Un)Stick" Stick
++ "(Un)Maximize" Maximize 100 100
++ "" Nop
++ "Kill" Destroy
++ "&Close" Delete
++ "" Nop
++ "Switch to..." WindowList
++ "Refresh Screen%mini-ray.xpm%" Refresh
+
+# This menu is invoked as a sub-menu - it allows you to quit,
+# restart, or switch to another WM.
+
+AddToMenu "Quit-Verify" "Really Quit Fvwm?" Title
++ "Restart%mini-turn.xpm%" Restart fvwm95-2
++ "" Nop
++ "Fvwm95" Restart /usr/bin/X11/fvwm95-2
++ "Fvwm95" Restart /usr/bin/X11/fvwm95-2
++ "Fvwm95" Restart /usr/bin/X11/fvwm95-2
++ "Yes, Really Quit%mini-exclam.xpm%" Quit
++ "No, Don't Quit%mini-cross.xpm%" Nop
+
+
+#
+# A trimmed down version of "Window Ops", good for binding to decorations
+#
+AddToMenu "Window-Ops2" "&Restore" Iconify -1
++ "&Move" Move-or-Raise
++ "&Size" Resize-or-Raise
++ "Mi&nimize" Iconify 1
++ "Ma&ximize" Maximize 100 100
++ "" Nop
++ "&Kill" Destroy
++ "&Close Alt+F4" Delete
+
+#========================================================================#
+
+#
+# One more complex function - couldn't be defined earlier because it used
+# pop-up menus
+#
+# This creates the "system" menu for the title-bar window-ops
+# pop-up
+#
+AddToFunc "window_ops_func" "C" PopUp Window-Ops2
++ "M" PopUp Window-Ops2
++ "D" Delete
+
+
+#========================================================================#
+
+#
+# Mouse bindings
+#
+
+# First, for the mouse in the root window
+# Button 1 gives the Utilities menu
+# Button 2 gives the Window Ops menu
+# Button 3 gives the WindowList (like TwmWindows)
+# I use the AnyModifier (A) option for the modifier field, so you can hold down
+# any shift-control-whatever combination you want!
+
+# Button Context Modifi Function
+Mouse 1 R A Menu "/Debian" Nop
+Mouse 2 R A Menu "Window Ops" Nop
+Mouse 3 R A WindowList
+#Mouse 3 R A Module "winlist" FvwmWinList transient
+
+# Now the title bar buttons
+# Any button in the left title-bar button gives the window ops menu
+# Any button in the first right title-bar button Iconifies the window
+# Any button in the second title-bar button full-maximizes
+# Any button in the third (rightmost) title-bar button closes
+# Note the use of "Mouse 0" for AnyButton.
+
+# Button Context Modif Function
+Mouse 0 1 A Function "window_ops_func"
+Mouse 1 2 A Delete
+Mouse 0 4 A Maximize 100 100
+Mouse 0 6 A Iconify
+
+#
+# Now the rest of the frame
+# Here I invoke my complex functions for Move-or-lower, Move-or-raise,
+# and Resize-or-Raise.
+#
+# Button 1 in the corner pieces, with any modifiers, gives resize or raise
+Mouse 1 F A Function "Resize-or-Raise"
+# Button 1 in the title, sides, or icon, w/ any modifiers, gives move or raise
+Mouse 1 TS A Function "Move-or-Raise"
+
+# Button 1 in an icons gives move for a drag, de-iconify for a double-click,
+# nothing for a single click
+# Button 2 in an icon, w/ any modifiers, gives de-iconify
+Mouse 1 I A Function "Move-or-Iconify"
+Mouse 2 I A Iconify
+
+# Button 2 in the corners, sides, or title-bar gives the window ops menu
+Mouse 2 FST A Function "window_ops_func"
+
+# Button 3 anywhere in the decoration (except the title-bar buttons)
+# does a raise-lower
+Mouse 3 TSIF A RaiseLower
+
+# Button 3 in the window, with the Modifier-1 key (usually alt or diamond)
+# gives Raise-Lower. Used to use control here, but that interferes with xterm
+Mouse 3 W M RaiseLower
+
+#========================================================================#
+
+# Now some keyboard shortcuts.
+
+# Arrow Keys
+# press arrow + control anywhere, and scroll by 1 page
+Key Left A C Scroll -100 0
+Key Right A C Scroll +100 +0
+Key Up A C Scroll +0 -100
+Key Down A C Scroll +0 +100
+
+# press arrow + meta key, and scroll by 1/10 of a page
+Key Left A M Scroll -10 +0
+Key Right A M Scroll +10 +0
+Key Up A M Scroll +0 -10
+Key Down A M Scroll +0 +10
+
+# press shift arrow + control anywhere, and move the pointer by 1% of a page
+Key Left A SC CursorMove -1 0
+Key Right A SC CursorMove +1 +0
+Key Up A SC CursorMove +0 -1
+Key Down A SC CursorMove +0 +1
+
+# press shift arrow + meta key, and move the pointer by 1/10 of a page
+Key Left A SM CursorMove -10 +0
+Key Right A SM CursorMove +10 +0
+Key Up A SM CursorMove +0 -10
+Key Down A SM CursorMove +0 +10
+
+# Keyboard accelerators
+Key F1 A M Popup "Utilities"
+Key F1 A M Popup "Utilities"
+Key F2 A M Popup "Window Ops"
+Key F3 A M Module "WindowList" FvwmWinList
+Key F4 A M Iconify
+Key F5 A M Move
+Key F6 A M Resize
+
+#Page Up/Dapge Down keys are used to scroll by one desktop page
+# in any context, press page up/down + control
+# in root context, just pressing page up/down is OK
+#
+# I prefer the non-wrapping scroll. These are for example purposes only
+#Key Next A C Scroll 100000 0
+#Key Next R N Scroll 100000 0
+#Key Prior A C Scroll -100000 0
+#Key Prior R N Scroll -100000 0
+
+Key Tab A M Prev Focus
+Key Tab A MS Next Focus
+
+Key Escape A C WindowList
+
+#========================================================================#
+
+# Definitions used by the modules
+
+#------------------ Pager
+*FvwmPagerBack grey60
+*FvwmPagerFore black
+*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmPagerHilight #c0c0c0
+*FvwmPagerGeometry -1-1
+*FvwmPagerLabel 0 Desktop
+*FvwmPagerSmallFont 5x8
+
+#------------------ FvwmButtons (from 2.0.42)
+*FvwmButtonsFore Black
+*FvwmButtonsBack #c0c0c0
+*FvwmButtonsFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+# Geometry - really likes to pick its own size, but giving a position is OK
+*FvwmButtonsGeometry -5-34
+# Layout: specify rows or columns, not both
+*FvwmButtonsRows 1
+
+# Define the buttons to use.....
+
+*FvwmButtons(Title xclock, Icon clock.xpm, \
+ Swallow(UseOld) "xclock" 'Exec /usr/bin/X11/xclock -bg \#c0c0c0 \
+ -padding 0 -geometry -1500-1500 &')
+*FvwmButtons(2x1, Title load, \
+ Swallow(UseOld) "xload" 'Exec /usr/bin/X11/xload \
+ -nolabel -bg grey60 -update 5 -geometry -1500-1500 &')
+*FvwmButtons(Title xterm, Icon rterm.xpm, \
+ Action 'Exec "XTerm" xterm_color \
+ -ls -sb -fn 8x13 -title "Color xterm" &')
+*FvwmButtons(Title Files, Icon Xfm.xpm, \
+ Action 'Exec "Files" files &')
+*FvwmButtons(Title Editor, Icon textedit.xpm, \
+ Action 'Exec "editor" editor &')
+*FvwmButtons(Title xcalc, Icon rcalc.xpm, \
+ Action 'Exec "Calculator" xcalc &')
+*FvwmButtons(Title xview, Icon xview.xpm, \
+ Action 'Exec "xv" xv &')
+*FvwmButtons(Title gview, Icon gv.xpm, \
+ Action 'Exec "ghostview" ghostview &')
+*FvwmButtons(Title netscape, Icon nscape.xpm, \
+ Action 'Exec "Netscape" netscape -geometry 920x622+90+5 &')
+*FvwmButtons(Title kill, Icon rbomb.xpm, Action Destroy)
+*FvwmButtons(2x1, Swallow(UseOld) "Desktop" 'FvwmPager 0 0')
+
+#------------------ Identify
+*FvwmIdentBack #000080
+*FvwmIdentFore Yellow
+*FvwmIdentFont -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*
+
+#------------------ FvwmWinList
+*FvwmWinListBack #c0c0c0
+*FvwmWinListFore Black
+*FvwmWinListFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmWinListAction Click1 Iconify -1,Focus
+*FvwmWinListAction Click2 Iconify
+*FvwmWinListAction Click3 Module "FvwmIdent" FvwmIdent
+*FvwmWinListUseSkipList
+*FvwmWinListGeometry +0-1
+*FvwmWinListShowCurrentDesk
+
+#------------------ FvwmTaskBar
+Style "FvwmTaskBar" NoTitle,BorderWidth 4,HandleWidth 4,Sticky,StaysOnTop,WindowListSkip,CirculateSkip
+
+*FvwmTaskBarGeometry +0-0
+*FvwmTaskBarFore Black
+*FvwmTaskBarBack #c0c0c0
+*FvwmTaskBarTipsFore black
+*FvwmTaskBarTipsBack bisque
+*FvwmTaskBarFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*
+*FvwmTaskBarSelFont -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*
+*FvwmTaskBarAction Click1 Iconify -1,Raise,Focus
+*FvwmTaskBarAction Click2 Iconify
+*FvwmTaskBarAction Click3 Module "FvwmIdent" FvwmIdent
+*FvwmTaskBarUseSkipList
+*FvwmTaskBarAutoStick
+*FvwmTaskBarStartName Start
+*FvwmTaskBarStartMenu /Debian
+*FvwmTaskBarStartIcon mini-exp.xpm
+*FvwmTaskBarShowTips
+#*FvwmTaskBarShowTransients
+#*FvwmTaskBarClockFormat %I:%M%p
+#*FvwmTaskBarHighlightFocus
+#*FvwmTaskBarAutoHide
+*FvwmTaskBarMailCommand Exec xterm_color -T Mail -ls -fn 8x13 -e pine -i
diff --git a/examples/system.fvwmrc-menu b/examples/system.fvwmrc-menu
new file mode 100644
index 0000000..00eb0f4
--- /dev/null
+++ b/examples/system.fvwmrc-menu
@@ -0,0 +1,513 @@
+# /etc/X11/fvwm/system.fvwmrc
+# Based heavily on system.fvwm, with modifications to bring it in line with
+# the previous debian fvwm package.
+#
+# See the fvwm(1) manpage for more details.
+#
+# This file is used if the user's ~/.fvwmrc is not found.
+#
+# Austin Donnelly <and1000@debian.org>
+#
+
+# Unfortunately, order does matter in this file
+# The correct order for inserting configurations is:
+# 1. Colors
+# 2. Assorted configuration paramters such as ClickToFocus, or MWMBorders
+# 3. Path setup (ModulePath, PixmapPath, IconPath)
+# 4. Style settings, including the default style Style "*" ...
+# 5. InitFunction and ResetFunction definitions.
+# 6. Other Functions. Functions cannot be forward referenced from
+# other functions, but they can be backward referenced.
+# 7. Menus definitions. Same caveats about forward referencing
+# 8. Key and Mouse Bindings.
+# 9. Module options.
+
+# The order of steps 5, 6, and 7 is not critical, as long as there are
+# no forward references to functions or menus.
+
+# If you get it wrong, the most common problem is that color or font settings
+# are ignored
+
+###########################################################################
+# set up the colors
+#
+
+# this is used for the selected window
+HiForeColor Black
+HiBackColor #5f9ea0
+
+# colours for non-selected windows
+StdForeColor Black
+StdBackColor Grey55
+
+# used for the pager
+PagerForeColor Black
+PagerBackColor #5f9ea0
+
+# used for windows that stick to the glass
+StickyForeColor Black
+StickyBackColor Grey75
+
+# Menu colors
+MenuForeColor Black
+MenuBackColor #5f9ea0
+MenuStippleColor SlateGrey
+
+############################################################################
+# Now the fonts - one for menus, another for window titles, another for icons
+# The menu font
+Font -adobe-times-bold-r-*-*-14-*-*-*-*-*-*-*
+# The font used in the window title bars.
+WindowFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
+# Font used to title icons with
+IconFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
+
+###########################################################################
+# Set up the major operating modes
+#
+######################## FOCUS STUFF ##############################
+# Set windows to auto-raise after 750 milliseconds if you like it.
+# Autoraise can sometimes obscure pop-up windows. Performance is now
+# similar to olvwm's auto-raise feature.
+#AutoRaise 750
+
+# Normally, we'll be in focus-follows mouse mode, but uncomment this
+# for mwm-style click-to-focus
+#ClickToFocus
+
+######################## ICON STUFF ##############################
+# Auto Place Icons is a nice feature....
+# Area of screen where icons are dumped (left top right bottom)
+# First go along RHS...
+IconBox -100 +140 -1 +730
+# ...next go along the bottom:
+IconBox +10 -40 +828 -1
+
+# If you uncomment this, and make sure that the WindowList is bound to
+# something, it works pretty much like an icon manager.
+#SuppressIcons
+
+# StubbornIcons makes icons de-iconify into their original position on the
+# desktop, instead of on the current page.
+#StubbornIcons
+
+# With AutoPlacement, icons will normally place themselves underneath active
+# windows. This option changes that.
+StubbornIconPlacement
+
+# If you want ALL you icons to follow you around the desktop (Sticky), try
+# this
+StickyIcons
+
+######################## MWM EMULATION #######################
+#
+# My feeling is that everyone should use MWMDecorHints and MWMFunctionHints,
+# since some applications depend on having the window manager respect them
+
+# MWMFunction hints parses the function information in the MOTIF_WM_HINTS
+# property, and prohibits use of these functions on the window. Appropriate
+# portions of the window decorations are removed.
+MWMFunctionHints
+
+# MWM is kinda picky about what can be done to transients, and it was keeping
+# me from iconifying some windows that I like to iconify, so here's an
+# over-ride that will allow me to do the operation, even tough the menu
+# item is shaded out.
+MWMHintOverride
+
+# MWMDecor hints parses the decoration information in the MOTIF_WM_HINTS
+# property, and removes these decoratons from the window. This does not affect
+# the functions that can be performed via the menus.
+MWMDecorHints
+
+# These are affect minor aspects for the look-and-feel.
+# Sub-menus placement mwm-style?
+MWMMenus
+# mwm-style border reliefs (less deep than default fvwm) ?
+# MWMBorders
+# Maximize button does mwm-inversion thingy
+MWMButtons
+######################## MISCELLANEOUS STUFF #######################
+# If you don't like the default 150 msec click delay for the complex functions
+# change this and uncomment it.
+#ClickTime 150
+
+# OpaqueMove has a number (N) attached to it (default 5).
+# if the window occupies less than N% of the screen,
+# then opaque move is used. 0 <= N <= 100
+OpaqueMove 20
+
+# flip by whole pages on the edge of the screen.
+EdgeScroll 100 100
+
+# A modest delay before flipping pages seems to be nice...
+# I thresh in a 50 pixel Move-resistance too, just so people
+# can try it out.
+EdgeResistance 250 50
+
+
+######################## WINDOW PLACEMENT #######################
+# RandomPlacement prevents user interaction while placing windows:
+# RandomPlacement
+
+# SmartPlacement makes new windows pop-up in blank regions of screen
+# if possible, or falls back to random or interactive placement.
+SmartPlacement
+
+# With SmartPlacement, windows will normally place themselves over icons.
+# Uncomment this to change that.
+#StubbornPlacement
+
+# NoPPosition instructs fvwm to ignore the PPosition field in window
+# geometry hints. Emacs annoyingly sets PPosition to (0,0)!
+NoPPosition
+
+
+######################## DECORATIONS #######################
+# If you want decorated transient windows, uncomment this:
+#DecorateTransients
+
+
+###########################################################################
+# Set up the virtual desktop and pager
+
+# use the internam pager, rather than the module
+Pager 5 5
+
+#set the desk top size in units of physical screen size
+DeskTopSize 2x2
+
+# and the reduction scale used for the panner/pager
+DeskTopScale 60
+
+##########################################################################
+# Module path and paths to the icons
+#
+# ModulePath is a colon-separated list, just like regular unix PATH
+ModulePath /usr/lib/X11/fvwm
+PixmapPath /usr/include/X11/pixmaps/
+IconPath /usr/include/X11/bitmaps/
+
+############################################################################
+# Set the decoration styles and window options
+# Order is important!!!!
+# If compatible styles are set for a single window in multiple Style
+# commands, then the styles are ORed together. If conflicting styles
+# are set, the last one specified is used.
+
+# These commands should command before any menus or functions are defined,
+# and before the internal pager is started.
+
+# change the default width.
+Style "*" BorderWidth 5, HandleWidth 5, Color Black/#60a0c0,Icon unknown1.xpm
+
+Style "Fvwm*" NoTitle, NoHandles, Sticky, WindowListSkip,BorderWidth 0, CirculateSkip
+Style "Fvwm Pager" StaysOnTop, BorderWidth 5, Color Black/#5f9ea0
+Style "FvwmPager" StaysOnTop, BorderWidth 5
+Style "FvwmBanner" StaysOnTop
+Style "GoodStuff" NoTitle, NoHandles, Sticky, WindowListSkip,BorderWidth 0
+Style "*lock" NoTitle, NoHandles, Sticky, WindowListSkip
+Style "xbiff" NoTitle, Sticky, WindowListSkip, CirculateSkip
+Style "xload" NoTitle, Sticky, WindowListSkip, CirculateSkip
+Style "rxvt" Icon term.xpm
+Style "xterm" Icon xterm.xpm, Color black/grey
+Style "xconsole" Icon xterm.xpm
+Style "Appointment" Icon datebook.xpm, NoButton 2, NoButton 4
+Style "xclock" NoTitle, Sticky, WindowListSkip, CirculateSkip
+Style "xcalc" Icon xcalc.xpm, NoButton 2
+Style "xcal" NoTitle, NoHandles, Sticky, WindowListSkip, CirculateSkip
+Style "xmh" Icon mail1.xpm, StartsOnDesk 2, NoButton 2
+Style "xman" Icon xman.xpm
+Style "xvgr" Icon graphs.xpm
+Style "matlab" Icon math4.xpm
+Style "xmag" Icon mag_glass.xpm
+Style "xgraph" Icon graphs.xpm
+Style "GoodStuff" Icon toolbox.xpm
+
+# This next one will need to be changed when emacs gets upgraded... :(
+Style "emacs" Icon /usr/lib/emacs/19.29/etc/gnu.xpm, Color Black/#f061c709e096
+
+
+
+# Change the Maximize and iconify buttons to up and down triangles.
+
+ButtonStyle : 2 4 50x35@1 65x65@0 35x65@0 50x35@1
+ButtonStyle : 4 4 50x65@1 35x35@1 65x35@1 50x65@0
+
+
+############################################################################
+# Now define some handy complex functions
+
+Function "RaiseLowerOrMove"
+ Move "motion"
+ RaiseLower "click"
+EndFunction
+
+Function "RaiseOrMove"
+ Move "motion"
+ Raise "click"
+EndFunction
+
+Function "LowerOrMove"
+ Move "motion"
+ Lower "click"
+EndFunction
+
+Function "IconifyOrMove"
+ Move "motion"
+ Iconify "click"
+ Iconify "doubleclick"
+EndFunction
+
+Function "DoubleClickIconify"
+ Iconify "click"
+ Iconify "doubleclick"
+EndFunction
+
+
+Function "InitFunction"
+ Exec "I" xmodmap -e "keycode 107 = 0x04"
+ #Exec "I" xhost +
+ Exec "I" xsetroot -solid steelblue
+ Module "I" GoodStuff
+ Desk "I" 0 2
+ Desk "I" 0 0
+EndFunction
+
+Function "RestartFunction"
+ Exec "I" xsetroot -solid "#266294"
+ Module "I" GoodStuff
+ Module "I" FvwmPager 0 3
+EndFunction
+
+
+include-menu-defs
+
+
+##Old-Debian ##############################################################################
+##Old-Debian # now define the menus
+##Old-Debian #
+##Old-Debian
+##Old-Debian # Provides a list of modules to fire off
+##Old-Debian
+##Old-Debian
+##Old-Debian Popup "Applications"
+##Old-Debian Title "Applications"
+##Old-Debian Exec "xterm" exec xterm &
+##Old-Debian Nop ""
+##Old-Debian Exec "Emacs" exec emacs &
+##Old-Debian Exec "Emacs RMAIL" exec emacs -f rmail &
+##Old-Debian Exec "Netscape" exec netscape &
+##Old-Debian EndPopup
+##Old-Debian
+Popup "Module-Popup"
+ Title "Modules"
+ Module "GoodStuff" GoodStuff
+ Module "Clean-Up" FvwmClean
+ Module "Identify" FvwmIdent
+ Module "SaveDesktop" FvwmSave
+ Module "Debug" FvwmDebug
+ Module "Pager" FvwmPager 0 3
+ Module "FvwmWinList" FvwmWinList
+EndPopup
+
+Popup "Fvwm"
+ Title "Fvwm"
+ Iconify "Iconify"
+ Module "Identify" FvwmIdent
+ Maximize "Maximize"
+ Move "Move"
+ Resize "Resize"
+ Stick "Stick"
+ Raise "Raise"
+ Lower "Lower"
+ Nop ""
+ Destroy "Kill"
+ Delete "Delete"
+ Nop ""
+ Popup "Modules" Module-Popup
+ Nop ""
+ Refresh "Refresh"
+ Restart "Restart" fvwm
+ Quit "Exit fvwm"
+EndPopup
+
+
+Popup "Window"
+ Iconify "Iconify"
+ Maximize "Maximize"
+ Move "Move"
+ Resize "Resize"
+ Stick "Stick"
+ Raise "Raise"
+ Lower "Lower"
+ Nop ""
+ Destroy "Kill"
+ Delete "Delete"
+EndPopup
+
+
+
+##############################################################################
+# This defines the mouse bindings
+
+# First, for the mouse in the root window
+# Button 1 gives the Applications menu
+# Button 2 gives the Window Ops menu
+# Button 3 gives the WindowList (like TwmWindows)
+# I use the AnyModifier (A) option for the modifier field, so you can hold down
+# any shift-control-whatever combination you want!
+
+# Button Context Modifi Function
+Mouse 1 R A PopUp "/Debian"
+Mouse 2 R A PopUp "Fvwm"
+Mouse 3 R A WindowList
+
+
+# Now the title bar buttons
+# Any button in the left title-bar button gives the window ops menu
+# Any button in the right title-bar button Iconifies the window
+# Any button in the rightmost title-bar button maximizes
+# Note the use of "Mouse 0" for AnyButton.
+
+# Button Context Modifi Function
+Mouse 0 1 N PopUp "Window"
+Mouse 0 2 N Maximize
+Mouse 0 4 N Iconify
+
+# Mouse buttons with the Meta (alt) key down always apply, even _inside_
+# the application's window.
+# (a) This is a little on the sneaky side: applications will never
+# get to see meta mouse clicks - but then I haven't yet found
+# one that does respond to them, other than emacs.
+# (b) Its a very fast way of working one you get used to it.
+Mouse 1 FSTW M Function "RaiseOrMove"
+Mouse 2 FSTWI M Iconify
+Mouse 3 FSTW M RaiseLower
+
+# Now the rest of the frame
+
+# Button 1 in the corner pieces, with any modifiers, gives resize
+# 2 in the corner pieces, with any modifiers, gives resize
+# 3 in the corner pieces, with any modifiers, will raise or lower it
+Mouse 1 F A Resize
+Mouse 2 F A Resize
+Mouse 3 F A RaiseLower
+
+# A click of button 1 on any of the sides will resize the window.
+# A click of button 2 on any of the sides will resize the window.
+# A click of button 3 on any of the sides will raise or lower it.
+Mouse 1 S N Resize
+Mouse 2 S N Resize
+Mouse 3 S N RaiseLower
+
+# A click of button 1 in the title bar will call "RaiseOrMove".
+# A click of button 2 in the title bar will call "LowerOrMove".
+# A click of button 3 in the title bar will raise or lower it.
+Mouse 1 T N Function "RaiseOrMove"
+Mouse 2 T N Function "LowerOrMove"
+Mouse 3 T N RaiseLower
+
+# A click of button 1 on an icon will call "IconifyOrMove".
+# A click of button 2 on an icon will call "IconifyOrMove".
+# A click of button 3 on an icon will raise or lower it.
+Mouse 1 I N Function "IconifyOrMove"
+Mouse 2 I N Function "IconifyOrMove"
+Mouse 3 I N RaiseLower
+
+
+############################################################################
+# Now some keyboard shortcuts.
+
+# Arrow Keys
+# press arrow + control anywhere, and scroll by 1 page
+Key Left A C Scroll -100 0
+Key Right A C Scroll +100 +0
+Key Up A C Scroll +0 -100
+Key Down A C Scroll +0 +100
+
+# Keyboard accelerators
+#Key F1 A M Popup "/Debian"
+#Key F2 A M Popup "Window"
+#Key F3 A M Module "WindowList" FvwmWinList
+#Key F4 A M Iconify
+#Key F5 A M Move
+#Key F6 A M Resize
+#Key F7 A M CirculateUp
+#Key F8 A M CirculateDown
+
+
+
+
+############################################################################
+############################################################################
+#Definitions used by the modules
+
+###################### GoodStuff button-bar ################################
+# Colors
+*GoodStuffFore Black
+*GoodStuffBack #908090
+
+# Font
+*GoodStuffFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+# Geometry - really likes to pick its own size, but giving a position is OK
+*GoodStuffGeometry -1-1
+
+# Layout: specify rows or columns, not both
+*GoodStuffRows 2
+
+# Define the buttons to use.....
+*GoodStuff Kill rbomb.xpm Destroy
+
+# xterm or rxvts on remote machines can be done like this
+# Output re-direction is csh style, not sh style
+# You will want to substitute your own hosts here!
+
+*GoodStuff Rulgm0 rterm.xpm Exec "" xterm -sb -sl 500 -j -ls -fn 7x7 -T rulgm0 -e r0 &
+*GoodStuff Rulgm4 rterm.xpm Exec "" xterm -sb -sl 500 -j -ls -fn 7x7 -T rulgm4 -e r4 &
+*GoodStuff Ruliln rterm.xpm Exec "" xterm -sb -sl 500 -j -ls -fn 7x7 -T ruliln -e rln &
+*GoodStuff Rulils rterm.xpm Exec "" xterm -sb -sl 500 -j -ls -fn 7x7 -T rulils -e rls &
+*GoodStuff Rulil0 rterm.xpm Exec "" xterm -sb -sl 500 -j -ls -fn 7x7 -T rulil0 -e rl0 &
+*GoodStuff Xcalc rcalc.xpm Exec "" xcalc &
+
+*GoodStuff Paging clamp.xpm TogglePage
+*GoodStuff - clock.xpm Swallow "xclock" xclock -bg \#908090 -geometry -1500-1500 -padding 0
+*GoodStuff(4x1) - whatever SwallowModule "FvwmPager" FvwmPager 0 3
+
+
+######################### No Clutter ########################################
+# I only wrote NoClutter as a simple test case, but maybe some big sites like
+# universities really have usage problems (too many open windows)....
+# Time delays are in seconds.
+*FvwmNoClutter 3600 Iconify 1
+*FvwmNoClutter 86400 Delete
+*FvwmNoClutter 172800 Destroy
+
+########################## Window-Identifier ###############################
+# Just choose colors and a fonts
+*FvwmIdentBack MidnightBlue
+*FvwmIdentFore Yellow
+*FvwmIdentFont -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*
+
+########################### Pager #########################################
+*FvwmPagerBack #908090
+*FvwmPagerFore #484048
+*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmPagerHilight #cab3ca
+*FvwmPagerGeometry -1-1
+*FvwmPagerLabel 0 Misc
+*FvwmPagerLabel 1 Maker
+*FvwmPagerLabel 2 Mail
+*FvwmPagerLabel 3 Matlab
+*FvwmPagerSmallFont 5x8
+
+
+##########################FvwmWinList##################################
+*FvwmWinListBack #908090
+*FvwmWinListFore Black
+*FvwmWinListFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmWinListAction Click1 Iconify -1,Focus
+*FvwmWinListAction Click2 Iconify
+*FvwmWinListAction Click3 Module "FvwmIdent" FvwmIdent
+*FvwmWinListUseSkipList
+*FvwmWinListGeometry +0-1
diff --git a/examples/system.steprc-menu b/examples/system.steprc-menu
new file mode 100644
index 0000000..6cb3da5
--- /dev/null
+++ b/examples/system.steprc-menu
@@ -0,0 +1,301 @@
+# 05/18/96 sample.steprc v1.2 fsf
+
+##########################################################################
+# NEXTSTEP(tm) look related stuff
+StdForeColor Black
+StdBackColor #bfbfbf
+HiForeColor White
+HiBackColor Black
+MenuBackColor #bfbfbf
+MenuForeColor Black
+Font -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*
+WindowFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
+IconBox 90 -68 -1 -1
+StickyForeColor Black
+StickyBackColor #60c0a0
+
+######################## FOCUS STUFF ##############################
+# Set windows to auto-raise after 325 milliseconds if you like it.
+Module Auto 325
+
+######################## MISCELLANEOUS STUFF #######################
+# If you don't like the default 150 msec click delay for the complex functions
+# change this.
+ClickTime 150
+
+# StubbornIcons makes icons de-iconify into their original position on the
+# desktop, instead of on the current page.
+#StubbornIcons
+
+# With AutoPlacement, icons will normally place themselves underneath active
+# windows. This option changes that.
+#StubbornIconPlacement
+
+# If you want ALL you icons to follow you around the desktop (Sticky), try
+# this
+StickyIcons
+
+######################## WINDOW PLACEMENT #######################
+# RandomPlacement prevents user interaction while placing windows:
+# RandomPlacement
+
+# SmartPlacement makes new windows pop-up in blank regions of screen
+# if possible, otherwise falls back to random or interactive placement
+#SmartPlacement
+
+EdgeScroll 0 0
+EdgeResistance 0 0
+SloppyFocus
+AppsBackingStore
+BackingStore
+SaveUnders
+
+# OpaqueMove has a number (N) attached to it (default 5), if the window occupies
+# less than N% of the screen, opaque move is used. 0 <= N <= 100
+OpaqueMove 100
+
+# NoPPosition instructs fvwm to ignore the PPosition field in window
+# geometry hints.
+# Emacs annoyingly sets PPosition to (0,0)!
+NoPPosition
+
+###########################################################################
+# Set up the virtual desktop and pager
+
+#set the desk top size in units of physical screen size
+DeskTopSize 2x2
+
+# and the reduction scale used for the panner/pager
+DeskTopScale 32
+
+##########################################################################
+# Module path
+# ModulePath is a colon-separated list, just like regular unix PATH
+ModulePath /usr/X11R6/lib/X11/fvwm:/usr/X11R6/lib/X11/afterstep
+PixmapPath /usr/include/X11/pixmaps/
+IconPath /usr/include/X11/bitmaps/
+NoBoundaryWidth 0
+BoundaryWidth 8
+Style "oclock" Sticky, NoTitle, StaysOnTop, WindowListSkip
+Style "*Pager" NoTitle, Sticky, StaysOnTop, WindowListSkip, NoHandles
+Style "xbiff" NoTitle, WindowListSkip
+Style "Minitabx11" StaysOnTop
+Style "Wharf" NoFocus,NoTitle, Sticky, WindowListSkip,StaysOnTop, NoHandles
+
+##########################################################################
+# customize your wharf (read: dock)
+Module Wharf
+
+# Eliminates the 3D "pushable" buttons and makes things boring
+#*WharfNoPush
+
+*WharfGeometry -1+0
+*WharfColumns 1
+*Wharf xbiff nil Swallow "xbiff" xbiff -bg "#8e8a9e" -fg "#00003f" -geometry 45x45-1-1 &
+*Wharf xload nil Swallow "xload" xload -nolabel -hl black -bg "#8e8a9e" -geometry 45x45-1-1 &
+*Wharf xterm monitor.xpm Exec "-" xterm -e tcsh -l &
+*Wharf lyx text.xpm Exec "-" /home/frank/bin/lyx &>/dev/null &
+*Wharf gimp 3dpaint.xpm Exec "-" gimp -geometry +15+373 &
+#*Wharf tkdate nil Swallow "tkdate" tkdate -geometry -1-1 &
+*Wharf pine writeletter.xpm Exec "-" xterm -T "pine" -e pine &
+*Wharf Netscape netscape3.xpm Exec "-" netscape -geometry 680x565+400+2 &
+*Wharf moxfm FilingCabinet.xpm Exec "-" moxfm >& /dev/null &
+*Wharf pager nil SwallowModule "FvwmPager" FvwmPager 0 0
+*Wharf config interface.xpm Exec "-" xterm -T "vi(.steprc)" -e vim -n ~/.steprc &
+*Wharf Recycler recycler.xpm Restart " " afterstep
+*Wharf Shutdown shutdown.xpm Quit
+##########################################################################
+
+
+############################################################################
+# define some common icon bitmaps
+# These are the color icons.
+# Of course, you need to change the directory to the one where they
+# really live.
+Icon "xterm" monitor.xpm
+Icon "pine" writeletter.xpm
+Icon "ghostview" text.xpm
+Icon "xman" xman.xpm
+Icon "gimp" 3dpaint.xpm
+Icon "xli" monalisa.xpm
+Icon "xv" xv1.xpm
+Icon "moxfm*" FileFolders.xpm
+Icon "*lyx*" text.xpm
+Icon "LyX" text.xpm
+Icon "Untitled*" YellowBlueRedGeometry.xpm
+
+Function "InitFunction"
+ Module "I" FvwmPager 0 0
+EndFunction
+Function "RestartFunction"
+ Module "I" FvwmPager 0 0
+EndFunction
+
+############################################################################
+# Now define some handy complex functions
+
+# This one moves and then raises the window if you drag the mouse,
+# only raises the window if you click, or does a RaiseLower if you double
+# click
+Function "Move-or-Raise"
+ Move "Motion"
+ Raise "Motion"
+ Raise "Click"
+ RaiseLower "DoubleClick"
+EndFunction
+
+Function "maximize_func"
+ Move "Motion"
+ Maximize "Click" 94 100
+ Shade "DoubleClick"
+ PutOnTop "TripleClick"
+EndFunction
+
+# This one moves or (de)iconifies:
+Function "Move-or-Iconify"
+ Move "Motion"
+ Iconify "DoubleClick"
+EndFunction
+
+Function "Resize-or-Raise"
+ Resize "Motion"
+ Raise "Motion"
+ Raise "Click"
+ Shade "DoubleClick"
+EndFunction
+
+# This is provided as a hint only.
+# Move to a known page on the desktop, then start an application in a
+# known location. Could also switch to a known desktop, I guess
+#Function "abs_coord"
+# GoToPage "Immediate" 1,1
+# Exec "Immediate" exec xcalc -geometry +100+100&
+#EndFunction
+
+##############################################################################
+#now define the menus - defer bindings until later
+
+include-menu-defs
+
+# This menu is invoked as a sub-menu - it allows you to quit
+Popup "Quit-Verify"
+ Title "Quit?"
+ Quit "Yes, Quit"
+ Restart "Restart" afterstep
+ Nop "No, Don't"
+EndPopup
+
+# This defines the most common window operations
+Popup "Window Ops"
+ Title "Window Ops"
+ Function "Move" Move-or-Raise
+ Function "Resize" Resize-or-Raise
+ Raise "Raise"
+ Lower "Lower"
+ PutOnTop "(Un)PutOnTop"
+ Iconify "(De)Iconify"
+ Stick "(Un)Stick"
+ Function "(Un)Maximize" maximize_func
+ Nop ""
+ Destroy "Destroy"
+ Close "Close"
+ Nop ""
+ Refresh "Refresh Screen"
+EndPopup
+
+
+##############################################################################
+# This defines the mouse bindings
+
+# First, for the mouse in the root window
+# Button 1 gives the HotList menu
+# Button 2 gives the WindowList menu
+# Button 3 gives the WindowOps
+
+Mouse 0 1 A Iconify
+Mouse 0 2 A Close
+Mouse 1 R A PopUp "/Debian"
+Mouse 1 FS A Function "Resize-or-Raise"
+Mouse 1 I A Function "Move-or-Iconify"
+Mouse 1 T A Function "maximize_func"
+Mouse 2 R A WindowList
+Mouse 2 FST A PopUp "Window Ops"
+Mouse 3 TSIF A RaiseLower
+Mouse 3 R A PopUp "Window Ops"
+Mouse 3 W M RaiseLower
+
+############################################################################
+# Now some keyboard shortcuts.
+
+# Keyboard accelerators
+Key F1 A M Popup "/Debian"
+Key F2 A M Popup "Window Ops"
+Key F3 A M WindowList
+Key F4 A M Exec "xwd" xwd -root -out ~/screen.xwd &
+Key F5 A A Iconify
+
+# Arrow Keys
+# press arrow + control anywhere, and scroll by 1 page
+Key Left A C Scroll -100 0
+Key Right A C Scroll +100 +0
+Key Up A C Scroll +0 -100
+Key Down A C Scroll +0 +100
+############################################################################
+
+############################################################################
+#Definitions used by the modules
+
+########################## Window-Identifier ###############################
+# Just choose colors and a fonts
+*FvwmIdentBack MidnightBlue
+*FvwmIdentFore Yellow
+*FvwmIdentFont -adobe-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*
+
+*FvwmPagerBack #908090
+*FvwmPagerFore #484048
+*FvwmPagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*FvwmPagerHilight #cab3ca
+*FvwmPagerGeometry +8-6
+*FvwmPagerLabel 0 Pager
+*FvwmPagerSmallFont 5x8
+
+*PagerBack #908090
+*PagerFore #484048
+*PagerFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-*
+*PagerHilight #cab3ca
+*PagerGeometry +8-6
+*PagerLabel 0 Pager
+*PagerSmallFont 5x8
+
+# Start the Audio player
+Module Audio
+
+# Select your normal audio player
+#*AudioPlayCmd /usr/bin/showaudio
+
+# Select the directory containing your sounds
+#*AudioDir /home/frank/mac/sounds
+
+#*AudioDelay 1
+
+# Attach sounds to window manager events...some don't appear to function
+# as well as they could
+#*Audio startup gong.au
+#*Audio shutdown clink.au
+#*Audio add_window bong.au
+#*Audio raise_window drip.au
+#*Audio lower_window drip.au
+#*Audio focus_change drip.au
+#*Audio destroy_window crash.au
+#*Audio iconify ploop.au
+#*Audio deiconify ploop.au
+#*Audio toggle_paging fwop.au
+#*Audio new_page beaming.au
+#*Audio new_desk beam_trek.au
+#*Audio configure_window huh.au
+#*Audio window_name bong.au
+#*Audio icon_name beep.au
+#*Audio res_class bong.au
+#*Audio res_name beep.au
+#*Audio end_windowlist twang.au
+
diff --git a/examples/system.twmrc-menu b/examples/system.twmrc-menu
new file mode 100644
index 0000000..8ab6c90
--- /dev/null
+++ b/examples/system.twmrc-menu
@@ -0,0 +1,104 @@
+#
+# $XConsortium: system.twmrc,v 1.8 91/04/23 21:10:58 gildea Exp $
+#
+# Default twm configuration file; needs to be kept small to conserve string
+# space in systems whose compilers don't handle medium-sized strings.
+#
+# Sites should tailor this file, providing any extra title buttons, menus, etc.
+# that may be appropriate for their environment. For example, if most of the
+# users were accustomed to uwm, the defaults could be set up not to decorate
+# any windows and to use meta-keys.
+#
+
+NoGrabServer
+RestartPreviousState
+DecorateTransients
+TitleFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+ResizeFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+MenuFont "-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"
+IconFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*-*-*-*"
+IconManagerFont "-adobe-helvetica-bold-r-normal--*-100-*-*-*"
+#ClientBorderWidth
+
+Color
+{
+ BorderColor "slategrey"
+ DefaultBackground "maroon"
+ DefaultForeground "gray85"
+ TitleBackground "maroon"
+ TitleForeground "gray85"
+ MenuBackground "maroon"
+ MenuForeground "gray85"
+ MenuTitleBackground "gray70"
+ MenuTitleForeground "maroon"
+ IconBackground "maroon"
+ IconForeground "gray85"
+ IconBorderColor "gray85"
+ IconManagerBackground "maroon"
+ IconManagerForeground "gray85"
+}
+
+#
+# Define some useful functions for motion-based actions.
+#
+MoveDelta 3
+Function "move-or-lower" { f.move f.deltastop f.lower }
+Function "move-or-raise" { f.move f.deltastop f.raise }
+Function "move-or-iconify" { f.move f.deltastop f.iconify }
+
+#
+# Set some useful bindings. Sort of uwm-ish, sort of simple-button-ish
+#
+Button1 = : root : f.menu "/Debian"
+Button2 = : root : f.menu "defops"
+
+Button1 = m : window|icon : f.function "move-or-lower"
+Button2 = m : window|icon : f.iconify
+Button3 = m : window|icon : f.function "move-or-raise"
+
+Button1 = : title : f.function "move-or-raise"
+Button2 = : title : f.raiselower
+
+Button1 = : icon : f.function "move-or-iconify"
+Button2 = : icon : f.iconify
+
+Button1 = : iconmgr : f.iconify
+Button2 = : iconmgr : f.iconify
+
+#
+# And a menus with the usual things
+#
+menu "defops"
+{
+"Twm" f.title
+"Iconify" f.iconify
+"Resize" f.resize
+"Move" f.move
+"Raise" f.raise
+"Lower" f.lower
+"" f.nop
+"Focus" f.focus
+"Unfocus" f.unfocus
+"Show Iconmgr" f.showiconmgr
+"Hide Iconmgr" f.hideiconmgr
+"" f.nop
+"Kill" f.destroy
+"Delete" f.delete
+"" f.nop
+"Restart" f.restart
+"Exit" f.quit
+}
+
+include-menu-defs
+##
+## menu "/Debian
+## {
+## "Twm" f.title
+## "Xterm" f.exec "/usr/bin/X11/xterm &"
+## "SubMenu" f.menu "SubMenu"
+## }
+##
+## menu "SubMenu"
+## {
+## "Xv" f.exec "/usr/bin/X11/xv /home/joost/mens/joost/plaatje/nu/unknwn15.jpeg &"
+## }
diff --git a/examples/translate_menus b/examples/translate_menus
new file mode 100644
index 0000000..58400a7
--- /dev/null
+++ b/examples/translate_menus
@@ -0,0 +1,99 @@
+#There's:
+# translate: only translate for exact matches (RE "^$match\$"
+# subtranslate: translate for matches of RE "^$match"
+# substitute: substitute substrings: sed -s "/^$match/$repl/".
+# this only works for "substitute x->x", and
+# will give interesting results for " substitute x->y".
+#
+# Language translators: DO NOT USE THIS FILE! (see note on top of this file)
+#
+# Implement transitory menu layout for menu migration.
+#
+# Applications [was:Apps]
+# Amateur Radio [was:Hamradio]
+# Data Management [was:Databases]
+# Network [was:Net]
+# Science
+# Science/Electronics [was:Technical]
+# Science/Mathematics [was:Math]
+# System
+# System/Administration [was:Admin]
+# System/Language Environment [was:Language-Environment]
+# Terminal Emulators [was:XShells]
+# Games
+# Action [was:Arcade]
+# Blocks [was:Tetris-like]
+# Screen
+# Saving [was:Save]
+# Locking [was:Lock]
+# Window Managers [was:WindowManagers]
+# FVWM Modules [was:WindowManagers/Modules]
+
+# Applications
+
+translate section->section
+ Apps/Hamradio "Apps/Amateur Radio"
+endtranslate
+
+translate section->section
+ Apps/Databases "Apps/Data Management"
+endtranslate
+
+translate section->section
+ Apps/Net Apps/Network
+endtranslate
+
+translate section->section
+ Apps/Math Apps/Science/Mathematics
+endtranslate
+
+translate section->section
+ Apps/Technical Apps/Science/Electronics
+endtranslate
+
+translate section->section
+ Apps/System/Admin Apps/System/Administration
+endtranslate
+
+translate section->section
+ Apps/System/Language-Environment "Apps/System/Language Environment"
+endtranslate
+
+translate section->section
+ XShells "Apps/Terminal Emulators"
+endtranslate
+
+# Games
+
+translate section->section
+ Games/Arcade Games/Action
+endtranslate
+
+translate section->section
+ Games/Tetris-like Games/Blocks
+endtranslate
+
+# Screen
+
+translate section->section
+ Screen/Lock Screen/Locking
+endtranslate
+
+translate section->section
+ Screen/Save Screen/Saving
+endtranslate
+
+# Toplevels
+
+substitute section->section
+ Apps/ Applications/
+endtranslate
+
+translate section->section
+ WindowManagers/Modules "FVWM Modules"
+endtranslate
+
+translate section->section
+ WindowManagers "Window Managers"
+endtranslate
+
diff --git a/examples/twm b/examples/twm
new file mode 100755
index 0000000..f12f29f
--- /dev/null
+++ b/examples/twm
@@ -0,0 +1,34 @@
+#!/usr/bin/install-menu
+# -*- mode: shell-script; -*-
+#I need menu-1!
+#
+#NOTE: the first line of this script _must_ be
+# equal to "#!/usr/bin/install-menu", otherwise update-menus
+# will feed this script old-compat-mode data.
+#
+#More info: /usr/share/doc/menu/html.
+#
+compat="menu-1"
+
+!include menu.h
+
+compat="menu-2"
+
+function f($com)=" \"" title() "\" f.exec \""$com " &\"\n";
+
+#This doens't seem to be possible with twm: wm="f.restart \"${title}\"\\n"
+supported;
+ x11= f($command);
+ text=f(esc(term(),"\""));
+# x11 = " \"" $title "\" f.exec \""$command " &\"\n";
+# text= " \"" $title "\" f.exec \"xterm -title \\\""
+# $title "\\\" -e " esc($command,"\"") " &\"\n";
+endsupported;
+startmenu= "menu \"" $section "\"\n{\n";
+endmenu= "}\n";
+submenutitle=" \"" title() "\" f.menu \"" $section "\"\n";
+genmenu= "menudefs.hook";
+rcfile= "system.twmrc";
+examplercfile="system.twmrc-menu";
+rootprefix= "/etc/X11/twm/";
+userprefix= "/.twm/";
diff --git a/install-menu/Makefile.am b/install-menu/Makefile.am
new file mode 100644
index 0000000..a263f37
--- /dev/null
+++ b/install-menu/Makefile.am
@@ -0,0 +1,11 @@
+INCLUDES = -I$(top_srcdir)/update-menus
+
+bin_PROGRAMS = install-menu
+
+install_menu_LDADD = ../update-menus/stringtoolbox.o ../update-menus/parsestream.o
+install_menu_SOURCES = install-menu.h install-menu.cc menu-tree.h menu-tree.cc hints.h hints.cc functions.cc functions.h
+
+install-exec-local:
+ test -d "$(DESTDIR)$(sbindir)" || mkdir "$(DESTDIR)$(sbindir)"
+ ln -f -s ../bin/install-menu $(DESTDIR)$(sbindir)/install-menu
+
diff --git a/install-menu/Makefile.in b/install-menu/Makefile.in
new file mode 100644
index 0000000..f60e257
--- /dev/null
+++ b/install-menu/Makefile.in
@@ -0,0 +1,428 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+bin_PROGRAMS = install-menu$(EXEEXT)
+subdir = install-menu
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+am__installdirs = "$(DESTDIR)$(bindir)"
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS)
+am_install_menu_OBJECTS = install-menu.$(OBJEXT) menu-tree.$(OBJEXT) \
+ hints.$(OBJEXT) functions.$(OBJEXT)
+install_menu_OBJECTS = $(am_install_menu_OBJECTS)
+install_menu_DEPENDENCIES = ../update-menus/stringtoolbox.o \
+ ../update-menus/parsestream.o
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+ -o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(install_menu_SOURCES)
+DIST_SOURCES = $(install_menu_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+INCLUDES = -I$(top_srcdir)/update-menus
+install_menu_LDADD = ../update-menus/stringtoolbox.o ../update-menus/parsestream.o
+install_menu_SOURCES = install-menu.h install-menu.cc menu-tree.h menu-tree.cc hints.h hints.cc functions.cc functions.h
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cc .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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu install-menu/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu install-menu/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
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ if test -f $$p \
+ ; then \
+ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+clean-binPROGRAMS:
+ -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+install-menu$(EXEEXT): $(install_menu_OBJECTS) $(install_menu_DEPENDENCIES)
+ @rm -f install-menu$(EXEEXT)
+ $(CXXLINK) $(install_menu_LDFLAGS) $(install_menu_OBJECTS) $(install_menu_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/functions.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hints.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/install-menu.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/menu-tree.Po@am__quote@
+
+.cc.o:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cc.obj:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ 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; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ 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; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && 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)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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:
+ for dir in "$(DESTDIR)$(bindir)"; 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)
+
+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-binPROGRAMS clean-generic 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
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-binPROGRAMS install-exec-local
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+ clean-generic ctags distclean distclean-compile \
+ distclean-generic distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-binPROGRAMS \
+ install-data install-data-am install-exec install-exec-am \
+ install-exec-local install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-binPROGRAMS \
+ uninstall-info-am
+
+
+install-exec-local:
+ test -d "$(DESTDIR)$(sbindir)" || mkdir "$(DESTDIR)$(sbindir)"
+ ln -f -s ../bin/install-menu $(DESTDIR)$(sbindir)/install-menu
+# 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/install-menu/functions.cc b/install-menu/functions.cc
new file mode 100644
index 0000000..fb1cc5c
--- /dev/null
+++ b/install-menu/functions.cc
@@ -0,0 +1,474 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menus/functions.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include "functions.h"
+#include "install-menu.h"
+#include <stringtoolbox.h>
+#include <iostream>
+#include <cstdio>
+#include <unistd.h>
+
+using std::ostream;
+using std::vector;
+using std::string;
+using std::map;
+using std::cerr;
+
+bool empty_string(const string &s)
+{
+ if (s.empty() || s == "none")
+ return true;
+ else
+ return false;
+}
+
+namespace functions {
+
+ostream &prefix::output(ostream &o, vector<cat_str *> &,
+ map<string, string> &)
+{
+ return o << menumethod->prefix();
+}
+
+ostream &shell::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string command = args[0]->soutput(menuentry);
+ FILE *status = popen(command.c_str(), "r");
+
+ if (!status)
+ throw exceptions::pipeerror_read(command);
+
+ while (!feof(status))
+ {
+ char tmp[MAX_LINE];
+ if (fgets(tmp, MAX_LINE, status) != NULL)
+ o << tmp;
+ }
+ pclose(status);
+ return o;
+}
+
+ostream &ifroot::output(ostream &o, vector<cat_str *> & args,
+ map<string, string> &menuentry)
+{
+ if(!is_root)
+ args[1]->output(o,menuentry);
+ else
+ args[0]->output(o,menuentry);
+
+ return o;
+}
+
+ostream &print::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ if (empty_string(s)) {
+ cerr << _("Zero-size argument to print function.");
+ throw exceptions::informed_fatal();
+ }
+ return o << s;
+}
+
+ostream &ifempty::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ if (empty_string(s))
+ args[1]->output(o,menuentry);
+ return o;
+}
+
+ostream &ifnempty::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ if (!empty_string(s))
+ args[1]->output(o,menuentry);
+ return o;
+}
+
+ostream &iffile::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ std::ifstream f(s.c_str());
+ if(f)
+ args[1]->output(o,menuentry);
+ return o;
+}
+
+ostream &ifelsefile::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ std::ifstream f(s.c_str());
+ if(f)
+ args[1]->output(o,menuentry);
+ else
+ args[2]->output(o,menuentry);
+ return o;
+}
+
+ostream &catfile::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ std::ifstream f(s.c_str());
+ char c;
+
+ while(f && f.get(c))
+ o<<c;
+ return o;
+}
+ostream &forall::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ const string &array=args[0]->soutput(menuentry);
+ vector<string> vec;
+ vector<string>::const_iterator i;
+ string s;
+ string varname=args[1]->soutput(menuentry);
+
+ break_char(array, vec, ':');
+
+ for(i = vec.begin(); i != vec.end(); ++i){
+ menuentry[varname]=(*i);
+ s+=args[2]->soutput(menuentry);
+ }
+ return o<<s;
+}
+
+ostream &esc::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << escape(args[0]->soutput(menuentry),
+ args[1]->soutput(menuentry));
+}
+
+ostream &escwith::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << escapewith(args[0]->soutput(menuentry),
+ args[1]->soutput(menuentry),
+ args[2]->soutput(menuentry));
+}
+
+ostream &escfirst::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ string esc=args[1]->soutput(menuentry);
+ string t;
+
+ for(string::size_type i=0; i != s.length(); ++i){
+ if(!esc.empty() && contains(esc, s[i])) {
+ t=s.substr(0,i);
+ t+=args[2]->soutput(menuentry);
+ t+=s.substr(i);
+ break;
+ }
+ t+=s[i];
+ }
+ return o<<t;
+}
+ostream &tolower::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o<<lowercase(args[0]->soutput(menuentry));
+}
+
+ostream &toupper::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << uppercase(args[0]->soutput(menuentry));
+}
+ostream &replacewith::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << ::replacewith(args[0]->soutput(menuentry),
+ args[1]->soutput(menuentry),
+ args[2]->soutput(menuentry));
+}
+
+ostream &replace::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << ::replace(args[0]->soutput(menuentry),
+ args[1]->soutput(menuentry),
+ args[2]->soutput(menuentry));
+}
+
+ostream &nstring::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int count= stringtoi(args[0]->soutput(menuentry));
+ int i;
+
+ for(i=0; i<count; i++)
+ o<<args[1]->soutput(menuentry);
+
+ return o;
+}
+ostream &cppesc::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ return o << ::cppesc(args[0]->soutput(menuentry));
+}
+
+ostream &add::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int x=stringtoi(args[0]->soutput(menuentry));
+ int y=stringtoi(args[1]->soutput(menuentry));
+
+ return o<<itostring(x+y);
+}
+
+ostream &sub::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int x=stringtoi(args[0]->soutput(menuentry));
+ int y=stringtoi(args[1]->soutput(menuentry));
+
+ return o<<itostring(x-y);
+}
+
+ostream &mult::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int x=stringtoi(args[0]->soutput(menuentry));
+ int y=stringtoi(args[1]->soutput(menuentry));
+
+ return o<<itostring(x*y);
+}
+
+ostream &div::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int x=stringtoi(args[0]->soutput(menuentry));
+ int y=stringtoi(args[1]->soutput(menuentry));
+
+ if(y)
+ return o<<itostring(x/y);
+ else
+ return o<<"0";
+}
+
+ostream &ifelse::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ (!empty_string(s)) ?
+ args[1]->output(o,menuentry)
+ :
+ args[2]->output(o,menuentry);
+ return o;
+}
+
+ostream &ifeq::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ string t=args[1]->soutput(menuentry);
+ if(s==t)
+ args[2]->output(o,menuentry);
+
+ return o;
+}
+ostream &ifneq::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ string t=args[1]->soutput(menuentry);
+ if(!(s==t))
+ args[2]->output(o,menuentry);
+
+ return o;
+}
+ostream &ifeqelse::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+ string t=args[1]->soutput(menuentry);
+ if(s==t)
+ args[2]->output(o,menuentry);
+ else
+ args[3]->output(o,menuentry);
+
+ return o;
+}
+
+ostream &cond_surr::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ if(!empty_string(s)){
+ args[1]->output(o,menuentry);
+ args[0]->output(o,menuentry);
+ args[2]->output(o,menuentry);
+ }
+ return o;
+}
+
+ostream &parent::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ return o<<string_parent(s);
+}
+
+ostream &basename::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ return o<<string_basename(s);
+}
+
+ostream &stripdir::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string s=args[0]->soutput(menuentry);
+
+ return o<<string_stripdir(s);
+}
+
+ostream &entrycount::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menuentry[PRIVATE_ENTRYCOUNT_VAR];
+}
+
+ostream &entryindex::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menuentry[PRIVATE_ENTRYINDEX_VAR];
+}
+
+ostream &firstentry::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int index=stringtoi(menuentry[PRIVATE_ENTRYINDEX_VAR]);
+
+ if(index == 0)
+ args[0]->output(o,menuentry);
+ return o;
+}
+
+ostream &lastentry::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ int index=stringtoi(menuentry[PRIVATE_ENTRYINDEX_VAR]);
+ int count=stringtoi(menuentry[PRIVATE_ENTRYCOUNT_VAR]);
+
+ if(index+1 == count)
+ args[0]->output(o,menuentry);
+ return o;
+}
+
+ostream &level::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menuentry[PRIVATE_LEVEL_VAR];
+}
+
+ostream &rcfile::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->rcfile();
+}
+ostream &examplercfile::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->examplercfile();
+}
+ostream &mainmenutitle::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->mainmenutitle();
+}
+ostream &rootsection::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->rootsection();
+}
+
+ostream &rootprefix::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->rootprefix()->soutput(menuentry);
+}
+
+ostream &userprefix::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->userprefix()->soutput(menuentry);
+}
+
+ostream &treewalk::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->treewalk();
+}
+ostream &postoutput::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->postoutput();
+}
+ostream &preoutput::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ return o<<menumethod->preoutput();
+}
+ostream &cwd::output(ostream &o, vector<cat_str *> &/*args*/,
+ map<string, string> &menuentry)
+{
+ char buf[300];
+ //Bug: getcwd returns NULL if strlen(cwd) > sizeof(buf), so we get
+ // a segfault here.
+ return o<<string(getcwd(buf,sizeof(buf)));
+}
+
+ostream &translate::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ string lang=args[0]->soutput(menuentry);
+ string text=args[1]->soutput(menuentry);
+ const char *txt = text.c_str();
+ const char *trans = ldgettext(lang.c_str(), "menu-sections", txt);
+ if (trans == txt)
+ trans = ldgettext(lang.c_str(), "menu-entries", txt);
+ return o << trans;
+}
+
+}
diff --git a/install-menu/functions.h b/install-menu/functions.h
new file mode 100644
index 0000000..8351102
--- /dev/null
+++ b/install-menu/functions.h
@@ -0,0 +1,301 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menus/functions.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef FUNCTIONS_H
+#define FUNCTIONS_H
+
+#include <fstream>
+#include <vector>
+#include <string>
+#include <map>
+#include <parsestream.h>
+
+class cat_str;
+
+/////////////////////////////////////////////////////
+// Function that can be used in install-menu (declarations)
+//
+//
+namespace functions {
+
+ /** Base class for function definitions */
+ class func {
+ public:
+ virtual ~func() { }
+ /** Number of arguments that function takes as parameters */
+ virtual unsigned int nargs() const = 0;
+ /** Calls function with arguments and returns output in stream */
+ virtual std::ostream &output(std::ostream &, std::vector<cat_str *> &,
+ std::map<std::string, std::string> &) = 0;
+ /** Accessor to function name */
+ virtual const char * getName() const = 0;
+ };
+
+ /** Template class for functions with N arguments */
+ template<unsigned int N>
+ struct funcN : public func {
+ unsigned int nargs() const { return N; }
+ };
+
+ /** Documentation for function can be found in menu manual */
+ struct prefix : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "prefix"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct shell : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "shell"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifroot: public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifroot"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct print : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "print"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifempty : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifempty"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifnempty : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifnempty"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct iffile : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "iffile"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifelsefile : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifelsefile"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct catfile : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "catfile"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct forall : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "forall"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct esc : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "esc"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct add : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "add"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct sub : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "sub"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct mult : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "mult"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct div : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "div"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifelse: public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifelse"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifeq: public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifeq"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifneq: public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifneq"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct ifeqelse: public funcN<4> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "ifeqelse"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct cond_surr: public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "cond_surr"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct escwith : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "escwith"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct escfirst : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "escfirst"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct tolower : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "tolower"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct toupper : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "toupper"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct replace : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "replace"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct replacewith : public funcN<3> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "replacewith"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct nstring : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "nstring"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct cppesc : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "cppesc"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct parent : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "parent"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct basename : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "basename"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct stripdir : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "stripdir"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct entrycount : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "entrycount"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct entryindex : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "entryindex"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct firstentry : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "firstentry"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct lastentry : public funcN<1> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "lastentry"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct level : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "level"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct rcfile : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "rcfile"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct examplercfile : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "examplercfile"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct mainmenutitle : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "mainmenutitle"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct rootsection : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "rootsection"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct rootprefix : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "rootprefix"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct userprefix : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "userprefix"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct treewalk : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "treewalk"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct postoutput : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "postoutput"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct preoutput : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "preoutput"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct cwd : public funcN<0> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "cwd"; }
+ };
+ /** Documentation for function can be found in menu manual */
+ struct translate : public funcN<2> {
+ std::ostream &output(std::ostream &o, std::vector<cat_str *> &, std::map<std::string, std::string> &);
+ const char * getName() const { return "translate"; }
+ };
+
+}
+
+#endif
diff --git a/install-menu/hints.cc b/install-menu/hints.cc
new file mode 100644
index 0000000..f07275a
--- /dev/null
+++ b/install-menu/hints.cc
@@ -0,0 +1,774 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menu/hints.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include <iostream>
+#include <algorithm>
+#include <functional>
+#include <cmath>
+#include "hints.h"
+
+/* Possible speedups:
+
+ In class correlation:
+ - simply `forget' hints that only occur once or less than
+ N/(nopt^2) times, or less than nopt-? times.
+ Or, those that occur more than 3*N/(nopt) times.
+ -> More general: don't sort hints by frequency f, but
+ by abs(f-1/nopt). This way the hints with the most
+ usefull frequency will appear first.
+ -Maybe this helps:
+ For hints that occur more then N/2 times, don't store the hints
+ themselves, but store "!hint" in those hint_input's where the
+ hint doens't occur. Should give identical results, but the
+ procedures may be confursed by hints that occur > N/2.
+ Overall speedup:
+ - change string into `int'! (and somewhere store a table with the
+ string - rope<char> mapping). This way, many data types will be
+ much smaller, and comparisions and searches will be much faster.
+ (especially the building of the correlation table!)
+ More try_shortcut heuristics!
+ Get rid of the exp(sqr(n)) behaviour:
+ - As long as there are still many (> nopt^2) children, don't
+ calculate the `real' penalty for all possible_divisions, but
+ only estimate heuristically. Then only use the `best' of the
+ few possibilities, discarding the others. This should make
+ time-complexity linear, if I'm right.
+ - If possible_divisions for example is:
+ AB
+ ABC
+ ACG
+ BCQ
+ then we now 3 times run process('A'). Only the first time we need
+ to actually do that. The other times we already know penalty(),
+ and we can simply copy the produced tree. (Same for B, C here.
+ with recursion this should give a good speedup, I hope).
+ Should make a _global_ set of set of hints, whith the `best'
+ tree for each set of hints.
+
+*/
+
+/* Bugs:
+
+ While writing, I wasn't aware that after a vector.push_back(), all
+ itterators to vector are (possibly) invalidated (that is, if a
+ reallocation occurs). Check this! (STL tutorial & refernence, page 130).
+*/
+
+using std::vector;
+using std::map;
+using std::multimap;
+using std::set;
+using std::pair;
+using std::cout;
+using std::string;
+using std::endl;
+
+string nspace(unsigned int n)
+{
+ string str;
+ for (;n > 0; n--)
+ str += ' ';
+ return str;
+}
+
+std::ostream& operator<<(std::ostream &o, const vector<string> &s)
+{
+ for (vector<string>::const_iterator i = s.begin(); i != s.end(); ++i)
+ o << '[' << *i << ']';
+
+ return o;
+}
+
+bool operator<(const set<string> &left, const set<string> &right)
+{
+ set<string>::const_iterator i,j;
+
+ for (i = left.begin(), j = right.begin();
+ (i != left.end()) && (j != right.end());
+ i++, j++)
+ {
+ if (*i < *j)
+ return true;
+ else if (*i > *j)
+ return false;
+ }
+ if (j == right.end())
+ return false;
+ else
+ return true;
+}
+
+
+/** This class combines the hints, and calculates a correlation table. */
+class correlation {
+
+public:
+ typedef vector<vector<int> > table;
+
+private:
+ bool debug_enabled;
+ /** Raw input for this correlation class. */
+ vector<vector<string> > hint_list;
+ /** Raw input frequency vector. */
+ vector<int> raw_count;
+ /** Sum of raw_count[i] for all i. */
+ int n_raw;
+
+ /** hints sorted by name, to be able to quickly find out a
+ * hints' freq. The frequency of each hint is the sum of their
+ * appearencies in hint_list (multiplied by raw_count).
+ */
+ map<string, int> hint_frequency;
+
+ /** Same as hint_frequency, but sorted by frequency. */
+ vector<string> frequency_hint;
+ /** Frequency of above hints. */
+ vector<int> frequency_freq;
+
+ /** tab[i][j] contains the number of occurences of both
+ * hint i and hint j in one menuentry. (hint_list[]).
+ * Multiplied by raw_count. Here (and in the rest)
+ * hint i refers to frequency_hint[i].
+ */
+ table tab;
+
+ void calc_correlations();
+ void debug();
+
+public:
+ correlation(const vector<vector<string> > &hint_input,
+ const vector<int> &count_input,
+ double min_hint_freq,
+ bool debug);
+
+ int frequency(const string& h) { return hint_frequency[h]; }
+ int frequency(unsigned int i) const { return frequency_freq[i]; }
+ string hint_i(unsigned int i) const { return frequency_hint[i]; }
+ vector<string> &hint_input_i(unsigned int i) { return hint_list[i]; }
+ int raw_total() const { return n_raw; }
+ unsigned int nhints() const { return tab.size(); }
+ table &get_table() { return tab; }
+};
+
+/** Calculate a correlation table.
+ *
+ * hint_input: has been sorted by calling routine,
+ * every hint in hint_input only occurs once
+ *
+ * raw_input_count[i]: records frequency of hint_input[i].
+*/
+correlation::correlation(const vector<vector<string> > &hint_input,
+ const vector<int> &raw_input_count,
+ double min_hint_freq,
+ bool debug_enab)
+ : debug_enabled(debug_enab), hint_list(hint_input),
+ raw_count(raw_input_count), n_raw(0)
+{
+ // First, calculate the frequencies of the hints.
+ // This information (and more) will later also be calculated
+ // in the correlation table, but things are easier if we have
+ // the frequencies now already.
+ map<string, int>::iterator hi;
+ unsigned int total = 0;
+ for (unsigned int i = 0; i < hint_input.size(); ++i)
+ {
+ for (unsigned int j = 0; j < hint_input[i].size(); ++j)
+ {
+ string c = hint_input[i][j];
+ hi = hint_frequency.find(c);
+ unsigned int n = raw_count[i];
+ total += n;
+ if (hi == hint_frequency.end())
+ hint_frequency[c] = n;
+ else
+ hi->second += n;
+ }
+ n_raw += raw_input_count[i];
+ }
+
+ multimap<int, string, std::greater<int> > fh;
+ multimap<int, string, std::greater<int> >::const_iterator fhi;
+ set<string> used_hints;
+ for (hi = hint_frequency.begin(); hi != hint_frequency.end(); ++hi)
+ {
+ if (((double)hi->second / total) >= min_hint_freq) {
+ fh.insert(pair<int, string>(hi->second, hi->first));
+ used_hints.insert(hi->first);
+ }
+ }
+
+ // search for items in hint_input that (due to the min_hint_freq
+ // limitation) are left out in used_hints.
+ vector<vector<string> >::const_iterator k;
+ vector<string>::const_iterator m,l;
+ for (k = hint_input.begin(); k != hint_input.end(); ++k)
+ {
+ if (!k->empty()) {
+ for (l = m = k->begin(); m != k->end(); ++m)
+ {
+ if (hint_frequency[*l] < hint_frequency[*m])
+ l = m;
+ if (used_hints.find(*m) != used_hints.end())
+ break;
+ }
+ if (m == k->end()) {
+ fh.insert(pair<int, string>(hint_frequency[*l], *l));
+ used_hints.insert(*l);
+ }
+ }
+ }
+
+ // store the information in frequency_hint etc.
+ for (fhi = fh.begin(); fhi != fh.end(); ++fhi)
+ {
+ frequency_hint.push_back(fhi->second);
+ frequency_freq.push_back(fhi->first);
+ }
+ calc_correlations();
+ debug();
+}
+
+/** Calculate correlation table */
+void correlation::calc_correlations()
+{
+ // fill table with zero's
+ for (unsigned int i = 0; i < frequency_hint.size(); ++i)
+ {
+ vector<int> h(frequency_hint.size());
+ tab.push_back(h);
+ }
+
+ // now build the correlation table.
+ // (could be done faster...).
+ for (unsigned int i = 0; i < frequency_hint.size(); ++i)
+ {
+ string c = frequency_hint[i];
+ vector<int> &tab_i = tab[i];
+ for (unsigned int j = 0; j < frequency_hint.size(); ++j)
+ {
+ if (i == j)
+ tab_i[j] = hint_frequency[c];
+ else
+ for (unsigned int k = 0; k < hint_list.size(); ++k)
+ {
+ vector<string>::const_iterator b = hint_list[k].begin();
+ vector<string>::const_iterator e = hint_list[k].end();
+ if((find(b, e, c) != e) && (find(b, e, frequency_hint[j]) != e)) {
+ tab_i[j] += raw_count[k];
+ }
+ }
+ }
+ }
+}
+
+/** Output debugging information for correlation table */
+void correlation::debug()
+{
+ if (!debug_enabled)
+ return;
+
+ vector<vector<string> >::const_iterator hi;
+ map<string, int>::const_iterator m;
+
+ cout << "BEGIN hint frequency (size=" << hint_frequency.size() << ")" << endl;
+ for (m = hint_frequency.begin(); m != hint_frequency.end(); ++m)
+ cout << nspace(2) << m->first << " - " << m->second << endl;
+ cout << "END hint frequency" << endl;
+
+ cout << "BEGIN hint_list (size=" << hint_list.size() << ")" << endl;
+ unsigned int i;
+ for (i = 0, hi = hint_list.begin(); hi != hint_list.end(); hi++, i++)
+ cout << nspace(2) << i << ' ' << *hi << ", count=" << raw_count[i] << endl;
+ cout << "END hint_list" << endl;
+
+ cout << "BEGIN correlation table" << endl;
+ for (unsigned int i = 0; i < frequency_hint.size(); ++i)
+ {
+ cout << nspace(2) << frequency_hint[i] << ' ';
+ for (unsigned int k = 0; k < frequency_hint.size(); ++k)
+ cout << tab[i][k] << ' ';
+ cout<<endl;
+ }
+ cout << "END correlation table" << endl;
+}
+
+
+/* Calculate a new menu tree.
+ *
+ * Arguments:
+ *
+ * hint_input: a vector with all sections.
+ * hint_output: what is to be the final tree
+ *
+ * The magic happens in sort_hints() and postprocess().
+*/
+void hints::calc_tree(const vector<vector<string> > &hint_input,
+ vector<vector<string> > &hint_output)
+{
+
+ hint_output.erase(hint_output.begin(), hint_output.end());
+ raw_count = vector<int>(hint_input.size(), 1);
+ hint_list = hint_input;
+
+ sort_hints();
+
+ postprocess(0, hint_list, raw_count, root_tree, 0);
+
+ vector<vector<string> >::const_iterator i;
+ for (i = hint_input.begin(); i != hint_input.end(); ++i)
+ {
+ vector<string> out;
+ search_hint(root_tree, *i, out);
+ hint_output.push_back(out);
+ if (debug_enabled)
+ cout << "IN: " << *i << " OUT: " << out << endl;
+ }
+ debug();
+}
+
+/** Sort the hint_list properly.
+ *
+ * This means that a vector that contained these strings, in this order:
+ *
+ * Games, Arcade, Doom, 3D
+ *
+ * will be changed into this order, when this function completes:
+ *
+ * 3D, Arcade, Doom, Games
+ *
+ * Duplicated elements are removed, and raw_count is set to the value of
+ * each entry.
+*/
+void hints::sort_hints()
+{
+ map<set<string>, int> sorted;
+ map<set<string>, int>::iterator si;
+
+ // The test below for (*).empty() is a bad hack! I don't want
+ // empty entries, that probably were caused by
+ // forcetree stuff. They will cause the optimize routines
+ // think that the toplevel menu already is mixed.
+
+ for (unsigned int i = 0; i < hint_list.size(); ++i)
+ {
+ if (!hint_list[i].empty()) {
+ set<string> h;
+
+ for (unsigned int j = 0; j < hint_list[i].size(); ++j)
+ h.insert(hint_list[i][j]);
+
+ si = sorted.find(h);
+
+ if (si == sorted.end())
+ sorted.insert(pair<set<string>, int>(h, raw_count[i]));
+ else
+ si->second++;
+ }
+ }
+ hint_list.erase(hint_list.begin(), hint_list.end());
+ raw_count.erase(raw_count.begin(), raw_count.end());
+
+ for (si = sorted.begin(); si != sorted.end(); ++si)
+ {
+ set<string>::const_iterator hi;
+ vector<string> tmpvec;
+ for (hi = si->first.begin(); hi != si->first.end(); ++hi)
+ tmpvec.push_back(*hi);
+ hint_list.push_back(tmpvec);
+ raw_count.push_back(si->second);
+ }
+
+ if (debug_enabled) {
+ cout << "BEGIN after sort_hints()" << endl;
+ for (unsigned int i = 0; i < hint_list.size(); ++i)
+ cout << hint_list[i] << ", count=" << raw_count[i] << endl;
+ cout << "END after sort_hints()" << endl;
+ }
+}
+
+double hints::calc_penalty(int level, int n, int unused)
+{
+ return std::pow(n-nopt(level), 2) + mixed_penalty*(unused!=0);
+}
+
+void hints::add_division(int level,
+ possible_divisions &division_list,
+ const vector<unsigned int> &division,
+ correlation &corr,
+ int unused,
+ double &worst_penalty, unsigned int iteration)
+{
+ double penalty;
+ vector<hint_tree> trees;
+ possible_divisions::iterator l;
+
+ if (!division.empty())
+ penalty = calc_penalty(level, division.size()+unused, unused);
+ else
+ penalty = calc_penalty(level, corr.raw_total()+unused, 0);
+
+
+ if ((division_list.size() < max_ntry) || (penalty < worst_penalty)) {
+ for (unsigned int i = 0; i < division.size(); ++i)
+ {
+ vector<hint_tree> c;
+ hint_tree tree(corr.hint_i(division[i]), c);
+ trees.push_back(tree);
+ }
+ if (debug_enabled) {
+ cout << "Adding division: " << "iteration=" << iteration
+ << ", penalty=" << penalty << ", dl.size()= "
+ << division_list.size() << ", hint=";
+ vector<unsigned int>::const_iterator j;
+ for (j = division.begin(); j != division.end(); ++j)
+ cout << "[" << corr.hint_i(*j) << "]";
+ cout << endl;
+ }
+ if (division_list.size() >= max_ntry) {
+ l = division_list.end();
+ l--;
+ division_list.erase(l, division_list.end());
+ }
+ division_list.insert(pair<const double, vector<hint_tree> >(penalty, trees));
+ l = division_list.end();
+ l--;
+ if (l->first < worst_penalty)
+ worst_penalty = l->first;
+ }
+}
+
+void hints::find_possible_divisions(int level,
+ possible_divisions &division_list,
+ const vector<vector<string> > &hint_input,
+ const vector<int> &raw_input_count,
+ int already_used)
+{
+ vector<unsigned int> division;
+ double worst_penalty = static_cast<int>(max_local_penalty);
+ unsigned int iterations = 0;
+
+ correlation corr(hint_input, raw_input_count, min_hint_freq, debug_enabled);
+ correlation::table &tab = corr.get_table();
+ vector<vector<int> > remaining;
+ {
+ // generate an `empty' remaining[] array, to show that all
+ // hints are still available (see also comment below).
+ vector<int> tmp(corr.nhints(), 1);
+ remaining.push_back(tmp);
+ }
+
+ // Add an empty division, this will be the division where
+ // all entries are dumpt directly in the menu.
+ add_division(level, division_list, division, corr,
+ already_used, worst_penalty, iterations);
+
+ unsigned int i = 0;
+ unsigned int used = 0;
+ unsigned int total = corr.raw_total();
+
+ while (true)
+ {
+ bool do_add = false;
+ bool do_remove_and_continue = false;
+
+ iterations++;
+
+ if (max_iter_hint >= 0)
+ if (iterations > (5 + max_iter_hint * corr.nhints()))
+ break;
+
+ // search for a hint that doesn't occur in the same
+ // (menu)entry as other, already used, hints. The remaining[]
+ // array maintains a list of such hints (remaining[i]=1 means
+ // hint[i] still can be used).
+ for (; i < tab.size(); ++i)
+ {
+ if (remaining.back()[i]) {
+ unsigned int used_tmp = used + corr.frequency(i);
+ if (used_tmp == total) {
+ // this combination of divisions perfectly uses up all
+ // menuentries: add it to the division_list, and
+ // then continue searching other possibilities.
+ division.push_back(i);
+
+ add_division(level, division_list,division, corr,
+ total - used_tmp + already_used,
+ worst_penalty, iterations);
+ division.pop_back();
+ } else if (used_tmp < total) {
+ used = used_tmp;
+ break;
+ }
+ }
+ }
+
+ if (i == tab.size() && !division.empty()) {
+ do_add = true;
+ do_remove_and_continue = true;
+ } else if (division.size() > (nopt(level) - already_used)) {
+ double penalty = calc_penalty(level, division.size()+1,0);
+ if ((division.size() >= max_ntry) && (penalty > worst_penalty)) {
+ // If after adding this hint we already exceed the maximum
+ // number of subentries, we can stop trying this hint.
+ // Also the previous hint (in division[]) will not work any
+ // more, as the following hints are all lower in frequency
+ // (and thus we need more of them to use all entries).
+ do_remove_and_continue = true;
+ }
+ }
+ if (do_add) {
+ // We didn't find a `perfect' match (i.e. one with all
+ // entries used), but insert this option in
+ // division_list anyway (with a penalty)
+ add_division(level,
+ division_list, division, corr,
+ total-used + already_used,
+ worst_penalty, iterations);
+ }
+ if (do_remove_and_continue) {
+ // Get i out of division (will be used in next iteration)
+ i = division.back();
+
+ used -= corr.frequency(i);
+
+ // Remove this (failed) last hint from division.
+ division.pop_back();
+ remaining.pop_back();
+ i++;
+ continue;
+ }
+ if (i == tab.size() && division.empty()) {
+ // apparently all possibilities have been seen.
+ break;
+ }
+
+ division.push_back(i);
+
+ vector<int> r;
+ for (unsigned int j = 0; j < tab.size(); ++j)
+ r.push_back((tab[i][j] == 0) && remaining.back()[j]);
+ remaining.push_back(r);
+ }
+ if (debug_enabled)
+ cout << "find_pos_div, level=" << level << ", iterations=" << iterations << endl;
+}
+
+bool hints::try_shortcut(int level,
+ const vector<vector<string> > &hint_input,
+ const vector<int> &raw_input_count,
+ hint_tree &tree,
+ int already_used)
+{
+ // Try with heuristics to reduce the thinking time
+ vector<int>::const_iterator i;
+
+ int raw_total = 0;
+ for (i = raw_input_count.begin(); i != raw_input_count.end(); ++i)
+ raw_total += *i;
+
+ if ((hint_input.size() <= 1) && (already_used == 0))
+ goto found;
+
+ if ((raw_total+already_used) < (nopt(level)*1.5))
+ goto found;
+
+ return false;
+found:
+ tree.penalty = calc_penalty(level, raw_total+already_used, 0);
+ return true;
+}
+
+void hints::postprocess(int level,
+ const vector<vector<string> >& hint_input,
+ const vector<int>& raw_input_count,
+ hint_tree& tree,
+ int already_used)
+{
+ possible_divisions division_list;
+
+ // In: hint_input. For example:
+ // hint_input[]=i,bc,bd,ec,ef,gh,gf
+ // Then, division_list will be setup to:
+ // possible_division[]={b,e,g,i}, {b,e,h,i,fg}, {b,f,h,i,ce},
+ // {c,f,d,h,i} (and so on).
+ // Then, in the cl-loop below, cl will go through the
+ // possible_divisions[] elements, and i go loop in one
+ // division (c=b,e,g,i for the first cl).
+
+
+ // General idea of search:
+ // First, in find_possible_divisions we search for all
+ // possible divisions for this node only (not it's
+ // children), and rank the divisions by looking only at.
+ // find_possible_divisions will only return the
+ // 5 or so best divisions. Then we evaluate (recursively,
+ // in postprocess) all children of those best divisions,
+ // and calculate the `real' penalty. The recursive search
+ // here will only return the best option found,
+ // in hint_tree t.
+
+ if (try_shortcut(level, hint_input, raw_input_count, tree, already_used)) {
+ // We found a shortcut, just return.
+ return;
+ }
+
+ find_possible_divisions(level, division_list, hint_input, raw_input_count,
+ already_used);
+
+ possible_divisions::iterator cl;
+ if (debug_enabled) {
+ unsigned int cl_i;
+ cout << "BEGIN after find_pos_div" << endl;
+ for (cl_i = 0, cl = division_list.begin();
+ (cl != division_list.end()) && (cl_i<7);
+ cl++, cl_i++)
+ {
+ cout << nspace(2) << "penalty: " << cl->first << ' ';
+ for (unsigned int i = 0; i < cl->second.size(); ++i)
+ {
+ cout << '[';
+ for (unsigned int j = 0; j < cl->second[i].key.size(); ++j)
+ cout << (cl->second[i]).key[j];
+ cout << ']';
+ }
+ cout << endl;
+ cout << "END after find_pos_div" << endl;
+ }
+ }
+
+ possible_divisions_it tmp_div_list;
+ for (cl = division_list.begin(); cl != division_list.end(); ++cl)
+ {
+ vector<bool> stored(hint_input.size());
+ double penalty = cl->first;
+ for (unsigned int i = 0; i < cl->second.size(); ++i)
+ {
+ vector<vector<string> > children_hint_input;
+ vector<int> children_counts;
+ //key_leftover: hints that belong to this key,
+ //but aren't put in the children_hint_input.
+ //This is in situations where key=A, and hints are A, AB, AC.
+ //Then, [A]B and [A]C are put in children_hint_input,
+ //but the first one [A] isn't.
+ int key_left_over=0;
+ const string &key = cl->second[i].key;
+
+ // In the example above, the first iteration key will be
+ // b, then e,...
+ // Now search entries in hint_input that have hint key in
+ // them. In the above example, when key=b, the sought
+ // hint_input[] entries will be 1 and 2 (bc,bd).
+ // Once the entries have been found, strip the key
+ // from them (resulting in c,d in the example), and try
+ // to (recursively) make a tree from that.
+ for (unsigned int j = 0; j < hint_input.size(); ++j)
+ if (!stored[j]) {
+ vector<string>::const_iterator b = hint_input[j].begin();
+ vector<string>::const_iterator e = hint_input[j].end();
+ vector<string>::const_iterator f = find(b, e, key);
+ if (f != e) {
+ vector<string> tmphint;
+ stored[j] = true;
+ for (unsigned int k = 0; k < hint_input[j].size(); ++k)
+ if (hint_input[j][k] != key)
+ tmphint.push_back(hint_input[j][k]);
+ if (!tmphint.empty()) {
+ children_hint_input.push_back(tmphint);
+ children_counts.push_back(raw_input_count[j]);
+ } else {
+ key_left_over+=raw_input_count[j];
+ }
+ }
+ }
+ if (!children_hint_input.empty()) {
+ if (debug_enabled)
+ cout << "Re-entering postprocess(), key=" << key
+ << ", left_over="<< key_left_over << endl;
+ postprocess(level+1, children_hint_input, children_counts, cl->second[i], key_left_over);
+ if (debug_enabled)
+ cout << "Done with postprocess(), key=" << key
+ << ", penalty=" << cl->second[i].penalty << endl;
+ penalty += cl->second[i].penalty;
+ } else {
+ double lpenalty = calc_penalty(level, key_left_over, 0);
+ cl->second[i].penalty = lpenalty;
+ penalty += lpenalty;
+ }
+ }
+ tmp_div_list.insert(pair<double,possible_divisions::iterator>(penalty,cl));
+ }
+ cl = tmp_div_list.begin()->second;
+ for (unsigned int i = 0; i < cl->second.size(); ++i)
+ tree.children.push_back(cl->second[i]);
+ tree.penalty = tmp_div_list.begin()->first;
+}
+
+/** Search for hint_in in hint_tree and put the result in hint_out */
+void hints::search_hint(hint_tree &tree,
+ const vector<string> &hint_in,
+ vector<string> &hint_out)
+{
+ bool found = false;
+
+ vector<string>::const_iterator begin = hint_in.begin();
+ vector<string>::const_iterator end = hint_in.end();
+
+ vector<hint_tree>::iterator t;
+ for (t = tree.children.begin(); t != tree.children.end(); ++t)
+ {
+ vector<string>::const_iterator j = find(begin, end, t->key);
+ if (j != end) {
+ hint_out.push_back(*j);
+ search_hint(*t, hint_in, hint_out);
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ tree.entries.push_back(hint_in);
+}
+
+
+/** Output the full hint_tree as debugging information */
+void hints::debug_hint_tree(const hint_tree &t, int level)
+{
+ cout << nspace(level) << t.key << ", penalty=" << t.penalty <<
+ " children=" << t.children.size() <<
+ " entries=" << t.entries.size() << endl;
+ for (unsigned int i = 0; i < t.children.size(); ++i)
+ debug_hint_tree(t.children[i], level+2);
+}
+
+/** Output debugging information */
+void hints::debug()
+{
+ if (!debug_enabled)
+ return;
+
+ std::cout << "BEGIN hint_tree (root):" << std::endl;
+ debug_hint_tree(root_tree, 0);
+ std::cout << "END hint_tree (root):" << std::endl;
+}
diff --git a/install-menu/hints.h b/install-menu/hints.h
new file mode 100644
index 0000000..32d2894
--- /dev/null
+++ b/install-menu/hints.h
@@ -0,0 +1,122 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menu/hints.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef HINTS_H
+#define HINTS_H
+
+#include <vector>
+#include <map>
+#include <set>
+#include <string>
+
+bool operator<(const std::set<std::string> &left, const std::set<std::string> &right);
+std::ostream& operator<<(std::ostream &, const std::vector<std::string> &);
+
+class hint_tree;
+class correlation;
+
+typedef std::multimap<double, std::vector<hint_tree> > possible_divisions;
+typedef std::multimap<double, possible_divisions::iterator> possible_divisions_it;
+
+class hint_tree {
+public:
+ hint_tree(std::string k, std::vector<hint_tree> &c) : key(k), children(c) { }
+ hint_tree(std::string k) : key(k) { }
+
+ std::string key;
+ std::vector<std::vector<std::string> > entries;
+ double penalty; //of the whole tree (including children, grandchildren, etc).
+ std::vector<hint_tree> children;
+};
+
+class hints {
+ bool debug_enabled;
+ double max_local_penalty;
+ hint_tree root_tree;
+
+ double mixed_penalty;
+ double min_hint_freq;
+ double hint_nentry, hint_topnentry;
+ unsigned int max_ntry;
+ int max_iter_hint;
+
+ std::vector<std::vector<std::string> > hint_list;
+ std::vector<int> raw_count;
+
+public:
+ hints()
+ : debug_enabled(false), root_tree("-"), min_hint_freq(0.3 /
+ hint_nentry), hint_nentry(6), hint_topnentry(6), max_ntry(5),
+ max_iter_hint(5) { }
+
+ void set_nentry(double n) { hint_nentry = n; }
+ void set_topnentry(double n) { hint_topnentry = n; }
+ void set_mixedpenalty(double p) { mixed_penalty = p; }
+ void set_minhintfreq(double m) { min_hint_freq = m / hint_nentry; }
+ void set_max_local_penalty(double p) { max_local_penalty = p; }
+ void set_max_ntry(int n) { max_ntry = n; }
+ void set_max_iter_hint(int n) { max_iter_hint = n;}
+ void set_debug(bool opt) { debug_enabled = opt; }
+ void calc_tree(const std::vector<std::vector<std::string> > &hint_input,
+ std::vector<std::vector<std::string> > &hint_output);
+
+private:
+ void sort_hints();
+ double calc_penalty(int level, int n, int unused);
+ double nopt(int level) const {
+ if (level != 0)
+ return hint_nentry;
+ else
+ return hint_topnentry;
+ }
+ void add_division(int level, possible_divisions &division_list,
+ const std::vector<unsigned int> &division,
+ correlation &h,
+ int unused,
+ double &worst_penalty,
+ unsigned int itteration);
+ bool try_shortcut(int level,
+ const std::vector<std::vector<std::string> > &hint_input,
+ const std::vector<int> &raw_input_count,
+ hint_tree &t,
+ int already_used);
+ void find_possible_divisions(int level, possible_divisions &division_list,
+ const std::vector<std::vector<std::string> > &hint_input,
+ const std::vector<int> &raw_input_count,
+ int already_used);
+ void postprocess(int level,
+ const std::vector<std::vector<std::string> > &hint_input,
+ const std::vector<int> &raw_input_count,
+ hint_tree &t,
+ int already_used);
+ void search_hint(hint_tree &t, const std::vector<std::string> &hint_in,
+ std::vector<std::string> &hint_out);
+ void debug_hint_tree(const hint_tree &t, int level);
+ void debug();
+};
+
+
+#endif /* HINTS_H */
diff --git a/install-menu/install-menu.cc b/install-menu/install-menu.cc
new file mode 100644
index 0000000..cdd6d79
--- /dev/null
+++ b/install-menu/install-menu.cc
@@ -0,0 +1,1034 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menu/install-menu.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include <set>
+#include <sstream>
+#include <iostream>
+#include <fstream>
+#include <cctype>
+#include <cstring>
+#include <cstdlib>
+#include <getopt.h>
+#include <limits.h>
+#include <sys/types.h>
+#include <dirent.h>
+#include <cstdio>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <errno.h>
+#include <pwd.h>
+#include "config.h"
+#include <iconv.h>
+#include <langinfo.h>
+
+#include "install-menu.h"
+#include "menu-tree.h"
+#include <stringtoolbox.h>
+
+using std::vector;
+using std::string;
+using std::map;
+using std::set;
+using std::ostream;
+using std::ofstream;
+using std::ifstream;
+using std::cerr;
+using std::cout;
+using std::endl;
+using namespace exceptions;
+
+int verbose = 0;
+const char * menuencoding = "UTF-8";
+bool is_root;
+const char *pw_dir;
+
+map<string, functions::func *> func_data;
+
+menuentry root_menu;
+methodinfo *menumethod;
+supportedinfo *supported;
+
+std::ofstream *genoutputfile = 0;
+set<string> outputnames; // all names of files ever written to
+
+struct option long_options[] = {
+ { "verbose", no_argument, NULL, 'v' },
+ { "help", no_argument, NULL, 'h' },
+ { "remove", no_argument, NULL, 'r' },
+ { NULL, 0, NULL, 0 } };
+
+// Should we do translations? This is set to 'true' when both outputencoding
+// and outputlanguage is set.
+bool do_translation = false;
+
+void store_func(functions::func *f)
+{
+ func_data[f->getName()] = f;
+}
+
+/** This function is used to convert a string from one encoding to another.
+ *
+ * The function could probably be prettier, but it works. One of the things
+ * I dislike about it is that the cleanup operations are duplicated three
+ * times (e.g. delete[]).
+ */
+std::string convert(const std::string& str)
+{
+ //std::cerr << "Original string: " << str << std::endl;
+ size_t insize = str.length();
+ char *inbuf = new char[insize + 1];
+ char *inbuf_t = inbuf;
+ strcpy(inbuf, str.c_str());
+
+ // Max length of a UTF-8 character is 6 per input character.
+ size_t outsize = insize * 6;
+ size_t outsize_t = outsize;
+
+ char *outbuf = new char[outsize];
+ char *outbuf_t = outbuf;
+
+ iconv_t conversion = iconv_open(menumethod->outputencoding().c_str(), menuencoding);
+
+ if (conversion == (iconv_t)(-1)) {
+ delete []inbuf;
+ delete []outbuf;
+ throw conversion_error(strerror(errno));
+ }
+
+ size_t retval = iconv(conversion, &inbuf_t, &insize, &outbuf_t, &outsize_t);
+ if (retval == (size_t)(-1)) {
+ delete []inbuf;
+ delete []outbuf;
+ iconv_close(conversion);
+ throw conversion_error(strerror(errno));
+ }
+
+ std::string conv_str = string(outbuf, outsize - outsize_t);
+ //std::cerr << "Converted string: " << conv_str << std::endl;
+ iconv_close(conversion);
+ delete []inbuf;
+ delete []outbuf;
+ return conv_str;
+}
+
+void add_functions()
+{
+ store_func(new functions::prefix);
+ store_func(new functions::shell);
+ store_func(new functions::ifroot);
+
+ store_func(new functions::print);
+ store_func(new functions::add);
+ store_func(new functions::sub);
+ store_func(new functions::mult);
+ store_func(new functions::div);
+ store_func(new functions::ifempty);
+ store_func(new functions::ifnempty);
+ store_func(new functions::iffile);
+ store_func(new functions::ifelsefile);
+ store_func(new functions::ifelse);
+ store_func(new functions::catfile);
+ store_func(new functions::forall);
+
+ store_func(new functions::ifeq);
+ store_func(new functions::ifneq);
+ store_func(new functions::ifeqelse);
+
+ store_func(new functions::cond_surr);
+ store_func(new functions::esc);
+ store_func(new functions::escwith);
+ store_func(new functions::escfirst);
+ store_func(new functions::tolower);
+ store_func(new functions::toupper);
+ store_func(new functions::replace);
+ store_func(new functions::replacewith);
+ store_func(new functions::nstring);
+ store_func(new functions::cppesc);
+ store_func(new functions::parent);
+ store_func(new functions::basename);
+ store_func(new functions::stripdir);
+ store_func(new functions::entrycount);
+ store_func(new functions::entryindex);
+ store_func(new functions::firstentry);
+ store_func(new functions::lastentry);
+ store_func(new functions::level);
+
+ store_func(new functions::rcfile);
+ store_func(new functions::examplercfile);
+ store_func(new functions::mainmenutitle);
+ store_func(new functions::rootsection);
+ store_func(new functions::rootprefix);
+ store_func(new functions::userprefix);
+ store_func(new functions::treewalk);
+ store_func(new functions::postoutput);
+ store_func(new functions::preoutput);
+ store_func(new functions::cwd);
+ store_func(new functions::translate);
+}
+
+cat_str *get_eq_cat_str(parsestream &i)
+{
+ i.skip_space();
+ i.skip_char('=');
+ return new cat_str(i);
+}
+
+int check_dir(string s)
+{
+ string t;
+ if (verbose)
+ cerr << String::compose(_("install-menu: checking directory %1\n"), s);
+ while (!s.empty()) {
+ string::size_type i = s.find('/', 1);
+ if (i != string::npos) {
+ t = s.substr(0, i+1);
+ for(; i < s.length() && (s[i] == '/'); i++);
+ s = s.substr(i);
+ } else {
+ t = s;
+ s.erase();
+ }
+ if (chdir(t.c_str()) < 0) {
+ if (verbose)
+ cerr << String::compose(_("install-menu: creating directory %1:\n"), t) ;
+ if (mkdir(t.c_str(),0755))
+ throw except_string(String::compose(_("Could not create directory(%1): %2"), t, strerror(errno)));
+ if (chdir(t.c_str()))
+ throw except_string(String::compose(_("Could not change directory(%1): %2"), t, strerror(errno)));
+ } else {
+ if (verbose)
+ cerr << String::compose(_("install-menu: directory %1 already exists\n"), t);
+ }
+ }
+ return !s.length();
+}
+
+void closegenoutput()
+{
+ set<string>::const_iterator i;
+
+ // OK, this will look clumsy in strace output, especially if there's
+ // only output file: first we close, and immediately afterwards we
+ // open and write again. But I don't see an easy and general way
+ // to get round that.
+ if (genoutputfile) {
+ delete genoutputfile;
+ genoutputfile = 0;
+ }
+ for(i = outputnames.begin(); i != outputnames.end(); ++i)
+ {
+ std::ofstream f(i->c_str(), std::ios::app);
+ f << menumethod->postoutput();
+ }
+}
+
+void genoutput(const string &s, map<string, string> &v)
+{
+ static string lastname = "////";
+
+ string name = menumethod->prefix() + '/' + menumethod->genmenu->soutput(v);
+ if (name != lastname) {
+ if (genoutputfile)
+ delete genoutputfile;
+ if (outputnames.find(name) == outputnames.end()) {
+ outputnames.insert(name);
+ check_dir(string_parent(name));
+ // after opening a file with ios::trunc, all writes seem to fail!
+ //genoutputfile=new ofstream(name.c_str(), ios::trunc);
+ // So, I do it this way instead:
+ unlink(name.c_str());
+ genoutputfile = new std::ofstream(name.c_str());
+ (*genoutputfile) << menumethod->preoutput();
+ } else {
+ genoutputfile = new std::ofstream(name.c_str(), std::ios::app);
+ }
+ lastname = name;
+ }
+ (*genoutputfile) << s;
+}
+
+/////////////////////////////////////////////////////
+// Construction:
+//
+
+cat_str::cat_str(parsestream &i)
+{
+ char buf[2]=".";
+ char c = i.get_char();
+ i.put_back(c);
+ try {
+ while(1)
+ {
+ i.skip_space();
+ c=i.get_char();
+ i.put_back(c);
+ if (isalpha(c))
+ v.push_back(new func_str(i));
+ else if (c == '\"')
+ v.push_back(new const_str(i));
+ else if (c == '$')
+ v.push_back(new var_str(i));
+ else if(c == ',')
+ break;
+ else if(c == ')')
+ break;
+ else if(c == '\0')
+ break;
+ else {
+ buf[0] = c;
+ throw char_unexpected(&i, buf);
+ }
+ }
+ } catch(endofline p) { }
+}
+
+var_str::var_str(parsestream &i)
+{
+ i.skip_char('$');
+ var_name = i.get_name();
+}
+
+func_str::func_str(parsestream &i)
+{
+ char c;
+ string name = i.get_name();
+ map<string, functions::func *>::const_iterator j = func_data.find(name);
+ if (j == func_data.end())
+ throw unknown_function(&i, name);
+ else
+ f = j->second;
+
+ i.skip_space();
+ i.skip_char('(');
+ do {
+ i.skip_space();
+ c = i.get_char();
+ if(c == ')')
+ break;
+ i.put_back(c);
+ args.push_back(new cat_str(i));
+ i.skip_space();
+ } while((c = i.get_char()) && (c == ','));
+ i.put_back(c);
+ i.skip_char(')');
+ if (args.size() != f->nargs())
+ throw narg_mismatch(&i, name);
+}
+
+
+/////////////////////////////////////////////////////
+// Output routines
+//
+
+ostream &const_str::output(ostream &o, map<string, string> &)
+{
+ return o << data;
+}
+
+bool cat_str::is_constant_string()
+{
+ for (unsigned int i=0; i<v.size(); i++)
+ if (!dynamic_cast<const_str*>(v[i]))
+ return false;
+ return true;
+}
+
+string cat_str::soutput(map<string, string> &menuentry)
+{
+ std::ostringstream s;
+
+ for(vector<str * >::const_iterator i = v.begin(); i != v.end(); ++i)
+ (*i)->output(s, menuentry);
+
+ return s.str();
+}
+
+ostream &cat_str::output(ostream &o, map<string, string> &menuentry)
+{
+ return o << soutput(menuentry);
+}
+
+void cat_str::output(map<string, string> &menuentry)
+{
+ genoutput(soutput(menuentry),menuentry);
+}
+
+ostream &var_str::output(ostream &o, map<string, string> &menuentry)
+{
+ return o << menuentry[var_name];
+}
+
+ostream &func_str::output(ostream &o, map<string, string> &menuentry)
+{
+ return f->output(o, args, menuentry);
+}
+
+/////////////////////////////////////////////////////
+// "defined" function (macro).
+//
+
+ostream &func_def::output(ostream &o, vector<cat_str *> &args,
+ map<string, string> &menuentry)
+{
+ map<string, string> local_menuentry = menuentry;
+
+ for(unsigned int i = 0; i < args_name.size(); ++i)
+ local_menuentry[args_name[i]] = args[i]->soutput(menuentry);
+
+ f->output(o,local_menuentry);
+ return o;
+}
+
+func_def::func_def(parsestream &i)
+{
+ char c;
+
+ func_name = i.get_name();
+ i.skip_space();
+ i.skip_char('(');
+ do {
+ i.skip_space();
+ c=i.get_char();
+ if(c==')')
+ break;
+ i.put_back(c);
+ i.skip_char('$');
+ args_name.push_back(i.get_name());
+ i.skip_space();
+ } while((c=i.get_char())&&(c==','));
+ i.put_back(c);
+ i.skip_char(')');
+ i.skip_space();
+ i.skip_char('=');
+ f = new cat_str(i);
+}
+
+/////////////////////////////////////////////////////
+// Supported stuff
+//
+
+supportedinfo::supportedinfo(parsestream &i)
+{
+ int prec = 0;
+ while(1)
+ {
+ try {
+ i.skip_space();
+ string name = i.get_name();
+ if (name == "endsupported")
+ return;
+
+ name = uppercase(name);
+
+ if (verbose)
+ /*Do not translate supported*/
+ cerr << String::compose(_("install-menu: [supported]: name=%1\n"), name);
+
+ supinfo info;
+ info.name = get_eq_cat_str(i);
+ info.prec = prec++;
+ supported[name] = info;
+ i.skip_line(); //read away the final newline
+ }
+ catch (endofline d) { }
+ }
+}
+
+void supportedinfo::subst(map<string, string> vars)
+{
+ map<string, string>::const_iterator i = vars.find(NEEDS_VAR);
+
+ if (i == vars.end()) {
+ cerr << String::compose(_("Menu entry lacks mandatory field \"%1\".\n"), NEEDS_VAR);
+ throw informed_fatal();
+ }
+
+ map<string, supinfo>::const_iterator j = supported.find(uppercase(i->second));
+ if (j == supported.end()) {
+ cerr << String::compose(_("Unknown value for field %1=\"%2\".\n"), NEEDS_VAR, i->second);
+ throw informed_fatal();
+ }
+ genoutput(j->second.name->soutput(vars), vars);
+}
+
+bool supportedinfo::supports(string& name)
+{
+ map<string, supinfo>::const_iterator i = supported.find(uppercase(name));
+ if (i == supported.end())
+ return false;
+ else
+ return true;
+}
+
+/////////////////////////////////////////////////////
+// forcetree stuff
+//
+
+void read_forcetree(parsestream &i)
+{
+ Regex r("[] /0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_abcdefghijklmnopqrstuvwxyz]");
+
+ while(1)
+ {
+ try {
+ i.skip_space();
+ string name = i.get_name(r);
+ if (name.empty())
+ throw ident_expected(&i);
+ if (name == "endforcetree")
+ return;
+
+ vector<string> sections;
+ break_char(name, sections, '/');
+ menuentry *entry = new menuentry;
+ entry->forced = true;
+ entry->vars[TITLE_VAR] = sections.back();
+ root_menu.add_entry_ptr(sections, entry);
+ i.skip_line();
+ }
+ catch(endofline d) { }
+ }
+
+}
+
+/////////////////////////////////////////////////////
+// methodinfo
+//
+methodinfo::methodinfo(parsestream &i)
+ : roots("/Debian"), mainmt("Debian"), treew("c(m)"),
+ onlyrunasroot(false), onlyrunasuser(false),
+ onlyuniquetitles(false), hint_optimize(false), hint_nentry(6),
+ hint_topnentry(5), hint_mixedpenalty(15), hint_minhintfreq(0.1),
+ hint_mlpenalty(2000), hint_max_ntry(4), hint_max_iter_hint(5),
+ hint_debug(false), hotkeycase(0)
+{
+ userpref=rootpref=sort=remove=prerun=preruntest=postrun=genmenu=
+ hkexclude=startmenu=endmenu=submenutitle=also_run=outputlanguage=0;
+
+ /*Should not be translated as this appear in the output file that can use
+ *a different encoding*/
+ preout = "# Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html)\n\n";
+
+ try {
+ while(1)
+ {
+ string name = i.get_name();
+ if (name=="supported") {
+ i.skip_line();
+ supported = new supportedinfo(i);
+ } else if (name=="forcetree") {
+ i.skip_line();
+ read_forcetree(i);
+ }
+ else if(name=="function")
+ store_func(new func_def(i));
+ else if(name=="startmenu")
+ startmenu=get_eq_cat_str(i);
+ else if(name=="endmenu")
+ endmenu=get_eq_cat_str(i);
+ else if(name=="submenutitle")
+ submenutitle=get_eq_cat_str(i);
+ else if(name=="hotkeyexclude")
+ hkexclude=get_eq_cat_str(i);
+ else if(name=="genmenu")
+ genmenu=get_eq_cat_str(i);
+ else if(name=="removemenu")
+ remove=get_eq_cat_str(i);
+ else if(name=="prerun")
+ prerun=get_eq_cat_str(i);
+ else if(name=="postrun")
+ postrun=get_eq_cat_str(i);
+ else if(name=="also_run")
+ also_run=get_eq_cat_str(i);
+ else if(name=="preruntest")
+ preruntest=get_eq_cat_str(i);
+ else if(name=="onlyrunasroot")
+ onlyrunasroot=i.get_eq_boolean();
+ else if(name=="onlyrunasuser")
+ onlyrunasuser=i.get_eq_boolean();
+ else if(name=="onlyuniquetitles")
+ onlyuniquetitles=i.get_eq_boolean();
+ else if(name=="sort")
+ sort=get_eq_cat_str(i);
+
+ else if(name=="compat"){
+ compt=i.get_eq_stringconst();
+ if(compt=="menu-1")
+ i.seteolmode(parsestream::eol_newline);
+ else if(compt=="menu-2")
+ i.seteolmode(parsestream::eol_semicolon);
+ else
+ throw unknown_compat(&i, compt);
+ }
+ else if(name=="rcfile")
+ rcf=i.get_eq_stringconst();
+ else if(name=="examplercfile")
+ exrcf=i.get_eq_stringconst();
+ else if(name=="mainmenutitle")
+ mainmt=i.get_eq_stringconst();
+ else if(name=="rootsection")
+ roots=i.get_eq_stringconst();
+ else if(name=="rootprefix")
+ rootpref=get_eq_cat_str(i);
+ else if(name=="userprefix")
+ userpref=get_eq_cat_str(i);
+ else if(name=="treewalk")
+ treew=i.get_eq_stringconst();
+ else if(name=="postoutput")
+ postout=i.get_eq_stringconst();
+ else if(name=="preoutput")
+ preout=i.get_eq_stringconst();
+ else if(name=="outputencoding")
+ outputenc=i.get_eq_stringconst();
+ else if(name=="command"){
+ system((i.get_eq_stringconst()).c_str());
+ exit(0);
+ }
+ else if(name=="hotkeycase"){
+ string s = i.get_eq_stringconst();
+ if(s == "sensitive")
+ hotkeycase = 1;
+ else if (s=="insensitive")
+ hotkeycase = 0;
+ else {
+ /*Do not translate quoted text*/
+ cerr << _("install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n");
+ throw informed_fatal();
+ }
+ }
+ else if(name=="outputlanguage"
+ //We accept the deprecated name repeat_lang for the time being
+ || name=="repeat_lang")
+ outputlanguage=get_eq_cat_str(i);
+ else if(name=="hint_optimize")
+ hint_optimize=i.get_eq_boolean();
+ else if(name=="hint_nentry")
+ hint_nentry=i.get_eq_double();
+ else if(name=="hint_topnentry")
+ hint_topnentry=i.get_eq_integer();
+ else if(name=="hint_mixedpenalty")
+ hint_mixedpenalty=i.get_eq_double();
+ else if(name=="hint_minhintfreq")
+ hint_minhintfreq=i.get_eq_double();
+ else if(name=="hint_mlpenalty")
+ hint_mlpenalty=i.get_eq_double();
+ else if(name=="hint_max_ntry"){
+ hint_max_ntry=i.get_eq_integer();
+ if(hint_max_ntry < 1)
+ hint_max_ntry=1;
+ }
+ else if(name=="hint_max_iter_hint")
+ hint_max_iter_hint=i.get_eq_integer();
+ else if(name=="hint_debug")
+ hint_debug=i.get_eq_boolean();
+ else
+ cerr << String::compose(_("install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. Ignoring.\n"), name, i.linenumber(), i.filename());
+
+ i.skip_line(); //read away final newline
+ }
+ } catch (endoffile) { }
+
+ if (outputenc == "LOCALE")
+ outputenc = nl_langinfo(CODESET);
+
+ if (!genmenu) {
+ cerr << String::compose(_("install-menu: %1 must be defined in menu-method %2"), "genmenu", i.filename());
+ throw informed_fatal();
+ }
+}
+
+cat_str *methodinfo::userprefix()
+{
+ if (userpref == 0)
+ throw unknown_indirect_function(0, "userprefix");
+ return userpref;
+}
+
+cat_str *methodinfo::rootprefix()
+{
+ if (rootpref == 0)
+ throw unknown_indirect_function(0, "rootprefix");
+ return rootpref;
+}
+
+string methodinfo::prefix()
+{
+ if (!is_root) {
+ string up = userprefix()->soutput(root_menu.vars);
+ // When userprefix is prefixed by // instead of just one /, treat the
+ // URL as absolute instead of relative.
+ if (up.length() > 1 && up.substr(0, 2) == "//") {
+ return up.substr(1);
+ } else {
+ return string(pw_dir)+"/"+up;
+ }
+ } else {
+ return rootprefix()->soutput(root_menu.vars);
+ }
+}
+
+/////////////////////////////////////////////////////
+// Misc
+//
+
+bool testuniqueness(map<string, string> &menuentry)
+{
+ static set<string> uniquetitles;
+
+ if(menumethod->onlyuniquetitles){
+ set <string>::const_iterator unique_i;
+ string &title=menuentry[TITLE_VAR];
+ if(!title.empty()) {
+ unique_i=uniquetitles.find(title);
+ if(unique_i!=uniquetitles.end())
+ return false;
+ else
+ uniquetitles.insert(title);
+ }
+ }
+ return true;
+}
+
+map<string, string> read_vars(parsestream &i)
+{
+ map<string, string> m;
+ try {
+ while(1)
+ {
+ string name = i.get_name();
+ string val = i.get_eq_stringconst();
+
+ if (do_translation) {
+ if (name == "title") {
+ // This won't work if ldgettext is also used (translate($lang)).
+ string title = dgettext("menu-entries", val.c_str());
+ try {
+ title = convert(title);
+ } catch (conversion_error& err) {
+ // Conversion failed, use the original, untranslated string.
+ title = val;
+ }
+ val = title;
+ } else if (name == "section") {
+ vector<string> names;
+ vector<string>::const_iterator i;
+ break_char(val, names, '/');
+ if (!names.empty())
+ val.erase();
+
+ for(i = names.begin(); i != names.end(); ++i)
+ {
+ string sectionname = dgettext("menu-sections", i->c_str());
+ try {
+ sectionname = convert(sectionname);
+ } catch (conversion_error& err) {
+ // Conversion failed, use the original, untranslated string.
+ sectionname = i->c_str();
+ }
+ val = val + '/' + sectionname;
+ }
+
+ }
+ }
+
+ m[name] = val;
+ }
+ }
+ catch (endofline p) { }
+ return m;
+}
+
+// This check is actually also done in update-menus, so it is sort of redundant
+// here. But we will still have trouble if they don't exists, so still make
+// the check here.
+void check_vars(parsestream &pi, map<string, string> &m)
+{
+ vector<string> need;
+
+ need.push_back(SECTION_VAR);
+ need.push_back(TITLE_VAR);
+ need.push_back(NEEDS_VAR);
+
+ for(vector<string>::iterator i = need.begin(); i != need.end(); ++i)
+ {
+ map<string, string>::const_iterator j = m.find(*i);
+ if ((j == m.end()) || j->second.empty())
+ throw missing_tag(pi.filename(), *i);
+ }
+}
+
+void read_input(parsestream &i)
+{
+ try {
+ while(1)
+ {
+
+ map<string, string> entry_vars = read_vars(i);
+
+ // check presence of section, title, needs vars. Later we will blindly
+ // assume they are defined.
+ check_vars(i, entry_vars);
+
+ vector<string> sections;
+ break_char(entry_vars[SECTION_VAR], sections, '/');
+ if (entry_vars[TITLE_VAR] != "/")
+ sections.push_back(entry_vars[TITLE_VAR]);
+ if (supported->supports(entry_vars[NEEDS_VAR]))
+ root_menu.add_entry(sections, entry_vars);
+ i.skip_line(); // read away the final newline
+ }
+ }
+ catch(endoffile p) { }
+}
+
+
+void includemenus(string replace, string menu_filename)
+{
+ // copy examplercfile to rcfile, replacing lines with "rep" with the
+ // menu-file menu_filename
+ bool changed = false;
+
+ string input_filename = menumethod->prefix() + '/' + menumethod->examplercfile();
+
+ ifstream input_file(input_filename.c_str());
+ if (!input_file) {
+ if (!is_root) {
+ // Running as non-root:
+ string input_filename2 = menumethod->rootprefix()->soutput(root_menu.vars) + '/' + menumethod->examplercfile();
+
+ input_file.clear(); // to clear the bad state of the old stream
+ input_file.open(input_filename2.c_str());
+ if (!input_file) {
+ cerr << String::compose(_("Cannot open file %1 (also tried %2).\n"), input_filename, input_filename2);
+ throw informed_fatal();
+ } else {
+ input_filename = input_filename2;
+ }
+ }else
+ // Running as root:
+ {
+ cerr << String::compose(_("Cannot open file %1.\n"), input_filename);
+ throw informed_fatal();
+ }
+ }
+
+ ifstream menu_file(menu_filename.c_str());
+ if (!menu_file) {
+ cerr << String::compose(_("Cannot open file %1.\n"), menu_filename);
+ throw informed_fatal();
+ }
+
+ string output_filename = menumethod->prefix() + '/' + menumethod->rcfile();
+ ofstream output_file(output_filename.c_str());
+
+ if (!output_file) {
+ cerr << String::compose(_("Cannot open file %1.\n"), output_filename);
+ if (!is_root)
+ cerr << _("In order to be able to create the user config file(s) for the window manager,\n"
+ "the above file needs to be writeable (and/or the directory needs to exist).\n");
+ throw informed_fatal();
+ }
+
+ std::string line;
+ while (getline(input_file, line))
+ {
+ if (contains(line, replace)) {
+
+ std::string menu_line;
+ while (getline(menu_file, menu_line))
+ output_file << menu_line << endl;
+
+ changed = true;
+
+ } else {
+ output_file << line << endl;
+ }
+ }
+
+ if (!changed)
+ cerr << String::compose(_("Warning: the string %1 did not occur in template file %2\n"), replace, input_filename);
+}
+
+const char *ldgettext(const char *lang, const char *domain, const char *msgid)
+{
+ /* this code comes from the gettext info page. It looks
+ very inefficient (as though for every language change a new
+ catalog file is opened), but tests show adding a language
+ change like this doesn't get performance down very much
+ (runtime goes `only' about 70% up, if switching between 2
+ languages, as compared to not switching at all).
+ */
+ /* Change language. */
+ setenv ("LANGUAGE", lang, 1);
+ /* Make change known. */
+ {
+ extern int _nl_msg_cat_cntr;
+ ++_nl_msg_cat_cntr;
+ }
+ return dgettext(domain, msgid);
+}
+
+void usage(ostream &c)
+{
+ /*Don't translate quoted string*/
+ c << _("install-menu [-vh] <menu-method>\n"
+ " Read menu entries from stdin in \"update-menus --stdout\" format\n"
+ " and generate menu files using the specified menu-method.\n"
+ " Options to install-menu:\n"
+ " -h --help : this message\n"
+ " --remove : remove the menu instead of generating it.\n"
+ " -v --verbose : be verbose\n");
+}
+
+int main(int argc, char **argv)
+{
+ int remove = 0;
+ uid_t uid = getuid();
+ struct passwd *pw = getpwuid(uid);
+ is_root = (uid == 0);
+ pw_dir = pw->pw_dir;
+ std::string script_name;
+ parsestream *ps = 0, *psscript = 0;
+
+ setlocale(LC_ALL, "");
+ bindtextdomain(PACKAGE, LOCALEDIR);
+ bind_textdomain_codeset("menu-sections", menuencoding);
+ textdomain(PACKAGE);
+
+ if (is_root) {
+ // When we are root, we set umask to 022 to ignore the real root umask.
+ // This is to ensure that the menu file can be read by users.
+ umask(0022);
+ }
+
+ while(1)
+ {
+ int c = getopt_long (argc, argv, "vh", long_options, NULL);
+ if(c == -1)
+ break;
+ switch (c) {
+ case '?': usage(cerr); return 1; break;
+ case 'h': usage(cout); return 0; break;
+ case 'v': verbose = 1; break;
+ case 'r': remove = 1; break;
+ }
+ }
+
+ try {
+ if (optind < argc) {
+ script_name = argv[optind];
+ } else {
+ cerr << _("install-menu: no menu-method script specified!");
+ throw informed_fatal();
+ }
+
+ add_functions();
+
+ string directory;
+ if (!is_root)
+ directory = MENUMETHODS;
+
+ ps = new parsestream(script_name, directory);
+
+ if (!ps->good()) {
+ cerr << String::compose(_("Cannot open script %1 for reading.\n"), script_name);
+ throw informed_fatal();
+ }
+ menumethod = new methodinfo(*ps);
+ if ((menumethod->onlyrunasroot || menumethod->userpref == 0) && !is_root)
+ return 0;
+ if ((menumethod->onlyrunasuser || menumethod->rootpref == 0) && is_root)
+ return 0;
+ if (remove)
+ {
+ if (menumethod->remove)
+ system(menumethod->remove->soutput(root_menu.vars).c_str());
+ else if (menumethod->genmenu
+ && menumethod->genmenu->is_constant_string())
+ {
+ unlink((menumethod->prefix()+"/"
+ +menumethod->genmenu->soutput(root_menu.vars)).c_str());
+ if (!menumethod->rcfile().empty())
+ unlink((menumethod->prefix()+"/"
+ +menumethod->rcfile()).c_str());
+ rmdir(menumethod->prefix().c_str());
+ }
+ else
+ cerr << String::compose(_("Warning: script %1 does not provide removemenu, menu not deleted\n"), script_name);
+ return 0;
+ }
+ if (menumethod->prerun)
+ system((menumethod->prerun->soutput(root_menu.vars)).c_str());
+ if (menumethod->preruntest) {
+ int retval = system((menumethod->preruntest->soutput(root_menu.vars)).c_str());
+ if (retval)
+ return retval;
+ }
+ if (menumethod->outputlanguage && (menumethod->outputlanguage->soutput(root_menu.vars) == "LOCALE") && !menumethod->outputencoding().empty())
+ do_translation = true;
+
+ psscript = new parsestream(std::cin);
+ root_menu.vars[TITLE_VAR] = menumethod->mainmenutitle();
+
+ read_input(*psscript);
+ if (menumethod->hint_optimize)
+ root_menu.process_hints();
+
+ root_menu.postprocess(1, 0, menumethod->rootsection());
+ root_menu.output();
+ closegenoutput();
+
+ if (menumethod->also_run) {
+ string run = menumethod->also_run->soutput(root_menu.vars);
+ vector<string> run_vec;
+ vector<string>::const_iterator run_i;
+
+ break_char(run, run_vec, ':');
+
+ methodinfo *old_menumethod = menumethod; // save old pointer
+
+ for (run_i = run_vec.begin(); run_i != run_vec.end(); ++run_i)
+ {
+ std::cout << String::compose(_("Running: \"%1\"\n"), *run_i);
+ parsestream also_ps(*run_i);
+ menumethod = new methodinfo(also_ps);
+ root_menu.output();
+ closegenoutput();
+ delete menumethod;
+ }
+ menumethod = old_menumethod; // restore old pointer
+ }
+ if (!menumethod->rcfile().empty() && !menumethod->examplercfile().empty())
+ includemenus("include-menu-defs",
+ menumethod->prefix()+"/"+menumethod->genmenu->soutput(root_menu.vars));
+ if (menumethod->postrun)
+ system((menumethod->postrun->soutput(root_menu.vars)).c_str());
+ } catch (genexcept& p) {
+ p.report();
+ cerr << String::compose(_("install-menu: %1: aborting\n"), script_name);
+ return 1;
+ }
+}
diff --git a/install-menu/install-menu.h b/install-menu/install-menu.h
new file mode 100644
index 0000000..b8ab456
--- /dev/null
+++ b/install-menu/install-menu.h
@@ -0,0 +1,239 @@
+/*
+ * Debian menu system -- update-menus
+ * install-menu/install-menu.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+
+#ifndef INSTALL_MENU_H
+#define INSTALL_MENU_H
+
+#include <iostream>
+#include <vector>
+#include <map>
+#include <common.h>
+#include <compose.hpp>
+#include <parsestream.h>
+#include "functions.h"
+
+/*
+
+Grammar of "string"'s:
+ cat = value | (value cat)
+ value = const | func | var
+ const = "\"" .* "\""
+ var = "$"name
+ func = name "(" args ")"
+ args = cat | (args "," cat)
+ name = [a-z,A-Z,_][a-z,A-Z,_,0-9]*
+
+Structure of container classes
+ str general container
+ const contains constant string
+ cat std::vector of str's
+ var contains a named variable (like section, title, needs, ...).
+ func a function (print, ifelse, iffile, ..).
+ funcN is a templated type, where:
+ funcN<1> is with 1 arguments
+ funcN<2> is with 2 arguments
+ ...
+
+Example "str":
+ "title=" print($title) ", mess:" \
+ ifelse($longtitle, print(title), $longtitle)
+*/
+
+/** Container class. See above documentation. */
+class str {
+public:
+ virtual std::ostream &output(std::ostream &o, std::map<std::string, std::string> &menuentry) = 0;
+ virtual ~str() { };
+};
+
+/** Container class. See above documentation. */
+class const_str : public str {
+ std::string data;
+public:
+ const_str(parsestream &i) : data(i.get_stringconst()) { }
+ /** Output the constant string */
+ virtual std::ostream &output(std::ostream &o, std::map<std::string, std::string> &menuentry);
+};
+
+/** Container class. See above documentation. */
+class cat_str : public str {
+ std::vector<str *> v;
+public:
+ bool is_constant_string();
+ cat_str(parsestream &);
+ std::ostream &output(std::ostream &o, std::map<std::string, std::string> &menuentry);
+ void output(std::map<std::string, std::string> &menuentry);
+ std::string soutput(std::map<std::string, std::string> &menuentry);
+};
+
+/** Container class. See above documentation. */
+class var_str : public str {
+ std::string var_name;
+public:
+ var_str(parsestream &i);
+ /** Output the contents of the variable */
+ std::ostream &output(std::ostream &o, std::map<std::string, std::string> &menuentry);
+};
+
+class func;
+
+/** Container class. See above documentation. */
+class func_str : public str {
+ std::vector<cat_str *> args;
+ functions::func *f;
+public:
+ func_str(parsestream &);
+ /** Output the return value of the function */
+ std::ostream &output(std::ostream &o, std::map<std::string, std::string> &menuentry);
+};
+
+
+class func_def : public functions::func {
+ cat_str *f;
+ std::string func_name;
+ std::vector<std::string> args_name;
+public:
+ func_def(parsestream &i);
+ unsigned int nargs() const { return args_name.size(); }
+ std::ostream &output(std::ostream &, std::vector<cat_str *> &,std::map<std::string, std::string> &);
+ const char * getName() const { return func_name.c_str(); }
+ virtual ~func_def() { }
+};
+
+/** Class containing info of supported menu needs */
+class supportedinfo {
+ /** Representation of a single supported menu need */
+ class supinfo {
+ public:
+ cat_str *name;
+ int prec;
+ };
+ /** Map containing all supported menu needs */
+ std::map<std::string, supinfo> supported;
+public:
+ supportedinfo(parsestream &);
+ /** Checks whether a specified 'supported' exists */
+ bool supports(std::string&);
+ void subst(std::map<std::string, std::string> );
+};
+
+/** Class containing configurable menu-method data */
+class methodinfo {
+ std::string compt, rcf, exrcf, roots, mainmt, treew, outputenc;
+ std::string preout, postout;
+
+public:
+ methodinfo(parsestream &);
+
+ bool keep_sections;
+ cat_str *startmenu, *endmenu, *submenutitle, *hkexclude,
+ *genmenu, *postrun, *prerun, *remove, *sort, *rootpref, *userpref,
+ *outputlanguage, *also_run, *preruntest;
+
+ bool onlyrunasroot, onlyrunasuser;
+ bool onlyuniquetitles;
+
+ // hint stuff:
+ bool hint_optimize;
+ double hint_nentry;
+ double hint_topnentry;
+ double hint_mixedpenalty;
+ double hint_minhintfreq;
+ double hint_mlpenalty;
+ int hint_max_ntry;
+ int hint_max_iter_hint;
+ bool hint_debug;
+
+ int hotkeycase; //0=insensitive, 1=sensitive
+
+ const std::string &rcfile() const { return rcf; }
+ const std::string &examplercfile() const { return exrcf; }
+ const std::string &mainmenutitle() const { return mainmt; }
+ const std::string &rootsection() const { return roots; }
+ const std::string &treewalk() const { return treew; }
+ const std::string &preoutput() const { return preout; }
+ const std::string &postoutput() const { return postout; }
+ const std::string &outputencoding() const { return outputenc; }
+ cat_str *rootprefix();
+ cat_str *userprefix();
+
+ std::string prefix();
+};
+
+extern methodinfo *menumethod;
+extern supportedinfo *supported;
+extern bool is_root;
+extern bool testuniqueness(std::map<std::string, std::string> &menuentry);
+const char *ldgettext(const char *lang, const char *domain, const char *msgid);
+
+namespace exceptions {
+ /** Exception to be thrown when number of arguments to function didn't match */
+ class narg_mismatch : public except_pi_string {
+ public:
+ narg_mismatch(parsestream *p, std::string s) : except_pi_string(p,s) {}
+ std::string message() const {
+ return String::compose(_("Number of arguments to function %1 does not match."), msg);
+ }
+ };
+ /** Exception to be thrown when an unknown function was used */
+ class unknown_function : public except_pi_string {
+ public:
+ unknown_function(parsestream *p, std::string s) : except_pi_string(p,s) {}
+ std::string message() const {
+ return String::compose(_("Unknown function: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when a function was not defined but used */
+ class unknown_indirect_function : public except_pi_string {
+ public:
+ unknown_indirect_function(parsestream *p, std::string s) : except_pi_string(p,s){}
+ std::string message() const {
+ return String::compose(_("Indirectly used, but not defined function: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when a unknown identifier was found in menu-method */
+ class unknown_ident : public except_pi_string {
+ public:
+ unknown_ident(parsestream *p, std::string s) : except_pi_string(p,s) {}
+ std::string message() const {
+ return String::compose(_("Unknown identifier: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when encoding conversion failed */
+ class conversion_error : public except_string {
+ public:
+ conversion_error(std::string s) : except_string(s) { }
+ std::string message() const {
+ return String::compose(_("Encoding conversion error: \"%1\""), msg);
+ }
+ };
+}
+
+#endif
diff --git a/install-menu/menu-tree.cc b/install-menu/menu-tree.cc
new file mode 100644
index 0000000..4fb7556
--- /dev/null
+++ b/install-menu/menu-tree.cc
@@ -0,0 +1,556 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menus/menu-tree.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include <cstdlib>
+#include <cctype>
+#include <cstring>
+#include <list>
+#include <set>
+#include "menu-tree.h"
+#include "install-menu.h"
+#include "hints.h"
+#include <stringtoolbox.h>
+
+using std::vector;
+using std::string;
+using std::list;
+using std::set;
+using std::map;
+
+/** Return prioritized string of useful shortcut keys
+ *
+ * As input takes a string, usually a menu entry title, and then parses it
+ * and returns the best possible characters for a shortcut key.
+ *
+ */
+string sort_hotkey(const string& str)
+{
+ string keys;
+ string::size_type size = str.length();
+ char *s = strdup(str.c_str());
+
+ if (str.empty())
+ return keys;
+
+ keys = s[0];
+ s[0] = '\0';
+ // Adds all uppercase letters which appears after a space or punctation
+ // mark.
+ for (string::size_type i = 1; i != size; ++i)
+ if ((isspace(s[i-1]) || ispunct(s[i-1])) && isupper(s[i])) {
+ keys += s[i];
+ s[i] = '\0';
+ }
+ // Adds letters or digit which appears after a space or punctation mark.
+ for (string::size_type i = 1; i != size; ++i)
+ if ((isspace(s[i-1]) || ispunct(s[i-1])) && isalnum(s[i])) {
+ keys += s[i];
+ s[i] = '\0';
+ }
+ // Adds uppercase letters.
+ for (string::size_type i = 1; i != size; ++i)
+ if (isupper(s[i])) {
+ keys += s[i];
+ s[i] = '\0';
+ }
+ // Adds letters.
+ for (string::size_type i = 1; i != size; ++i)
+ if (isalpha(s[i])) {
+ keys += s[i];
+ s[i] = '\0';
+ }
+ // Adds letters and digits.
+ for (string::size_type i = 1; i != size; ++i)
+ if (isalnum(s[i])) {
+ keys += s[i];
+ s[i] = '\0';
+ }
+ free(s);
+ return keys;
+}
+
+/** Adds a new entry in the menu hierarchy.
+ *
+ * Arguments:
+ *
+ * sections: A vector of strings, holding the section names.
+ * entry_vars: Variables of the entry to be added.
+ *
+ * There are two ways to store the menuentries in the `tree'
+ * - `flat', all menuentries in the toplevel submenus map.
+ * This is used when working with `hints'. In this case, we
+ * will later sort out the tree.
+ * - as a true tree.
+ * However, even in the `flat', hint-processing case, if there already
+ * exists a submenu with exactly the right sections[0], then we do desent,
+ * if it has a entry_vars[FORCED_VAR] set.
+ */
+void menuentry::add_entry(std::vector<std::string> sections, std::map<std::string, std::string> &entry_vars)
+{
+ map<string, string>::iterator vi;
+ map<string, string>::iterator vj;
+ bool use_forced = false;
+
+ if (sections.empty()) {
+ // No sections defined, this means that we probably are at the last
+ // node, so we just need to fill in variables that aren't already
+ // defined.
+ for (vi = entry_vars.begin(); vi != entry_vars.end(); ++vi)
+ {
+ if (vi->first == TITLE_VAR)
+ continue;
+ if (vi->first == SECTION_VAR)
+ continue;
+
+ vj = vars.find(vi->first);
+ if ((vj == vars.end()) || vj->second.empty() || (vj->second == "none"))
+ vars[vi->first] = vi->second;
+ }
+ return;
+ }
+
+ vector<string> firstsection;
+ firstsection.push_back(sections[0]);
+ submenu_container::iterator firstsection_i = submenus.find(firstsection);
+
+ if (firstsection_i != submenus.end())
+ if (firstsection_i->second->forced)
+ use_forced = true;
+
+ if ((!menumethod->hint_optimize || use_forced) && (sections.size() > 1)) {
+ // We are either not using hint_optimize, or we have to add this
+ // section, because it's forced to be created by the forcetree.
+ //
+ // And because sections.size() > 1, there are more sections to add.
+
+ // Add new subsections to our new section (but strip the first one)
+ vector<string> subsections;
+ for (vector<string>::iterator i = sections.begin()+1; i != sections.end(); ++i)
+ if (!i->empty())
+ subsections.push_back(*i);
+
+ // If the first subsection doesn't already exist, then create a new one.
+ if (firstsection_i == submenus.end()) {
+ submenus[firstsection] = new menuentry;
+ submenus[firstsection]->vars[TITLE_VAR] = firstsection[0];
+ }
+
+ submenus[firstsection]->add_entry(subsections, entry_vars);
+ } else {
+ submenu_container::iterator f = submenus.find(sections);
+ if (f == submenus.end()) {
+ // Add a new entry, because these sections doesn't exist.
+ submenus[sections] = new menuentry;
+ submenus[sections]->vars = entry_vars;
+ } else {
+ // Modifying an already existing entry. Add all variables
+ // that aren't already defined.
+ for (vi = entry_vars.begin(); vi != entry_vars.end(); ++vi)
+ {
+ menuentry *m = f->second;
+ vj = m->vars.find(vi->first);
+ if ((vj==m->vars.end()) || vj->second.empty() || (vj->second == "none"))
+ m->vars[vi->first] = vi->second;
+ }
+ }
+ }
+}
+
+/** Adds a new entry in the menu hierarchy, using an already created
+ * menuentry pointer.
+ *
+ * Arguments:
+ *
+ * sections: A vector of strings, holding the section names.
+ * entry: a pointer to a menuentry.
+ */
+void menuentry::add_entry_ptr(std::vector<std::string> sections, menuentry *entry)
+{
+ if (sections.size() > 1) {
+ // There are more sections to add...
+
+ // Add new subsections to our new section (but strip the first one)
+ vector<string> subsections;
+ for (vector<string>::iterator i = sections.begin()+1; i != sections.end(); ++i)
+ if (!i->empty())
+ subsections.push_back(*i);
+
+ // If the first subsection doesn't already exist, then create a new one.
+ vector<string> firstsection;
+ firstsection.push_back(sections[0]);
+ if (submenus.find(firstsection) == submenus.end()) {
+ submenus[firstsection] = new menuentry;
+ submenus[firstsection]->forced = entry->forced;
+ submenus[firstsection]->vars[TITLE_VAR] = firstsection[0];
+ }
+ submenus[firstsection]->add_entry_ptr(subsections, entry);
+ } else if (submenus.find(sections) == submenus.end()) {
+ // Add a new entry, because this section doesn't exist.
+ submenus[sections] = entry;
+ }
+}
+
+struct menusort {
+
+ bool operator()(std::string s1, std::string s2) const {
+ return strcoll(s1.c_str(), s2.c_str())<0;
+ }
+};
+
+/** Output menu tree.
+ *
+ * Uses the 'treewalk' variable to define what to output in which order,
+ * this documentation was taken from the menu manual:
+ *
+ * `treewalk="c(m)"'
+ * This string defines in what order to dump the `$startmenu',
+ * `$endmenu', and `$submenutitle' (and its children). Each char in
+ * the string refers to:
+ *
+ * c : dump children of menu.
+ * m : dump this menu's $submenutitles
+ * ( : dump $startmenu
+ * ) : dump $endmenu
+ * M : dump all $submenutitles of this menu and this menu's children.
+ *
+ * The default is "c(m)". For olvwm, one needs: "(M)"
+ */
+void menuentry::output()
+{
+ string treew = menumethod->treewalk();
+ submenu_container::iterator sub_i;
+ std::multimap<string, menuentry *, menusort> sorted;
+ std::multimap<string, menuentry *>::iterator i;
+
+ // Sort the submenus in sorted:
+ for (sub_i = submenus.begin(); sub_i != submenus.end(); ++sub_i)
+ {
+ string s;
+ if (menumethod->sort)
+ s = menumethod->sort->soutput(sub_i->second->vars);
+ else
+ s = sub_i->second->vars[SORT_VAR] + ':' + sub_i->second->vars[TITLE_VAR];
+
+ sorted.insert(std::pair<string, menuentry *>(s, sub_i->second));
+ }
+ int index = 0;
+ for (i = sorted.begin(); i != sorted.end(); ++i)
+ i->second->vars[PRIVATE_ENTRYINDEX_VAR] = itostring(index++);
+
+ // Output the menu according to the treewalk variable.
+ for (string::size_type j = 0; j < treew.length(); ++j)
+ {
+ bool children_too = false;
+ switch (treew[j])
+ {
+ case 'c':
+ for (i = sorted.begin(); i != sorted.end(); ++i)
+ if (!i->second->submenus.empty())
+ i->second->output();
+ break;
+ case '(':
+ if (!submenus.empty())
+ if (menumethod->startmenu && testuniqueness(vars))
+ menumethod->startmenu->output(vars);
+ break;
+ case ')':
+ if (!submenus.empty())
+ if (menumethod->endmenu && testuniqueness(vars))
+ menumethod->endmenu->output(vars);
+ break;
+ case 'M':
+ children_too = true;
+ case 'm':
+ for (i = sorted.begin(); i != sorted.end(); ++i)
+ {
+ if (!i->second->vars[COMMAND_VAR].empty() &&
+ testuniqueness(i->second->vars)) {
+ supported->subst(i->second->vars);
+ } else {
+ if (menumethod->submenutitle && !i->second->submenus.empty() &&
+ testuniqueness(i->second->vars))
+ menumethod->submenutitle->output(i->second->vars);
+ if (children_too)
+ i->second->output();
+ }
+ }
+ }
+ }
+}
+
+/** Put the $hint variable contents in the hint of the submenu[] map. For
+ * submenu entries (without a command), put the $hint variable in all
+ * menuentries that lie below that one.
+ */
+void menuentry::store_hints()
+{
+ submenu_container::iterator i, j;
+ unsigned int l;
+
+ // Make sure menuhints are empty
+ for(i = submenus.begin(); i != submenus.end(); ++i)
+ i->second->menuhints.erase(i->second->menuhints.begin(), i->second->menuhints.end());
+
+ for (i = submenus.begin(); i != submenus.end(); ++i)
+ {
+ const string &hints_str = i->second->vars[HINTS_VAR];
+
+ if (!hints_str.empty()) {
+ vector<string> hints;
+
+ break_char(hints_str, hints, ',');
+
+ j = i;
+
+ do {
+ for (vector<string>::iterator k = hints.begin(); k != hints.end(); ++k)
+ j->second->menuhints.push_back(*k);
+
+ j++;
+ if (j == submenus.end())
+ break;
+
+ for (l = 0; l != i->first.size(); ++l)
+ if (i->first[l] != j->first[l])
+ break;
+ } while (l == i->first.size());
+
+ }
+ }
+}
+
+/** Process the menu hierarchy through the hints algorithms.
+ *
+ * Basically, it has 4 steps (also marked as comments in the code):
+ *
+ * Step 1: Fetch appropriate sections to put in hint_list vector.
+ * Step 2: Initialize hints class and calculate a new tree, using hint_list.
+ * Step 3: Remove all submenus.
+ * Step 4: Using the new hint_out vector, initialize our new sorted tree,
+ * thus re-creating the previously removed submenus (but in a different
+ * order).
+ */
+void menuentry::process_hints()
+{
+ vector<vector<string> > hint_list, hint_out;
+ vector<vector<string> >::iterator k, m;
+ vector<string>::const_iterator l;
+ submenu_container::iterator i;
+
+ // First, process hints of children.
+ for (i = submenus.begin(); i != submenus.end(); ++i)
+ if (i->second->vars[COMMAND_VAR].empty())
+ i->second->process_hints();
+
+ store_hints();
+
+ // Step 1.
+ // Go through all submenus, and add their sections to hint_list.
+ for (i = submenus.begin(); i != submenus.end(); ++i)
+ {
+ vector<string> sections;
+
+ for (l = i->first.begin(); l != i->first.end(); ++l)
+ sections.push_back(*l);
+
+ // If there are more than one element in 'sections', pop off the last
+ // one, since that's the title of the application.
+ if (sections.size() > 1) {
+ sections.pop_back();
+ if (menumethod->hint_debug)
+ std::cout << "Adding to hint_list: " << i->first << ", hints="
+ << i->second->menuhints << std::endl;
+ for (l=i->second->menuhints.begin(); l!=i->second->menuhints.end(); ++l)
+ sections.push_back(*l);
+ hint_list.push_back(sections);
+ } else {
+ vector<string> empty; // to make sure hint_list[i] and submenus[i] match
+ hint_list.push_back(empty);
+ }
+ }
+ // Step 2.
+ hints h;
+ h.set_nentry(menumethod->hint_nentry);
+ h.set_topnentry(menumethod->hint_topnentry);
+ h.set_mixedpenalty(menumethod->hint_mixedpenalty);
+ h.set_minhintfreq(menumethod->hint_minhintfreq);
+ h.set_max_local_penalty(menumethod->hint_mlpenalty);
+ h.set_max_ntry(menumethod->hint_max_ntry);
+ h.set_max_iter_hint(menumethod->hint_max_iter_hint);
+ h.set_debug(menumethod->hint_debug);
+
+ // Calculate our new tree, using hints. A lot of magic happens here.
+ h.calc_tree(hint_list, hint_out);
+
+ // Step 3.
+ submenu_container oldsubmenus = submenus;
+ submenus.erase(submenus.begin(), submenus.end());
+
+ // Step 4.
+ for (k = hint_list.begin(), m = hint_out.begin(), i = oldsubmenus.begin();
+ k != hint_list.end();
+ k++, m++, i++)
+ {
+ vector<string> sections = *m;
+
+ // Restore title (we popped it of earlier in this function).
+ sections.push_back(i->first.back());
+
+ // Finally re-add the entry...
+ add_entry_ptr(sections, i->second);
+ }
+}
+
+/** Postprocess will set or correct some variables in the
+ * menuentry tree (vars), that were not known at the time of
+ * creation of the menuentry classes (due to hints, or other reasons)
+ *
+ * Arguments:
+ *
+ * n_parent: number of elements in menu of parent
+ * level: how deep this entry is nested in menu tree.
+ * prev_section: parent section name
+ */
+void menuentry::postprocess(int n_parent, int level, const std::string& prev_section)
+{
+ submenu_container::iterator i, i_next;
+
+ vars[PRIVATE_LEVEL_VAR] = itostring(level);
+
+ // If we are at the bottom of the hierarchy, use the "parents" section name.
+ if (!level)
+ vars[SECTION_VAR] = prev_section;
+
+ for (i = submenus.begin(); i != submenus.end();)
+ {
+ i_next=i;
+ i_next++;
+
+ string newsection = prev_section;
+ for(vector<string>::const_iterator j = i->first.begin(); j != i->first.end(); ++j)
+ newsection += '/' + *j;
+
+ menuentry *me = i->second;
+ me->vars[SECTION_VAR] = newsection;
+
+ // Get the real section name by removing title of the section name. This
+ // is useful when for example the title is "Foo version/456".
+ me->vars[BASESECTION_VAR] = newsection.substr(0, newsection.rfind(me->vars[TITLE_VAR]) - 1);
+
+ if (!me->submenus.empty())
+ me->postprocess(submenus.size(), level+1, newsection);
+
+ // Number of entries may have been changed by above call, so we need to
+ // test again.
+ if (me->submenus.empty()) {
+ if (me->vars.find(COMMAND_VAR) == me->vars.end()) {
+ // This is an empty menu (without comand or submenus), so delete it.
+ submenus.erase(i);
+
+ } else {
+ i->second->vars[PRIVATE_ENTRYCOUNT_VAR] = itostring(submenus.size());
+ i->second->vars[PRIVATE_LEVEL_VAR] = itostring(level+1);
+ }
+ }
+ // don't use i here any more, it may have been erased above
+ i = i_next; // don't do i++, as *i now may not be defined
+ }
+
+ generate_hotkeys();
+
+ vars[PRIVATE_ENTRYCOUNT_VAR] = itostring(n_parent);
+}
+
+char menuentry::hotkeyconv(char h)
+{
+ if (menumethod->hotkeycase)
+ return h;
+ else
+ return tolower(h);
+}
+
+void menuentry::generate_hotkeys()
+{
+ string::size_type i,j;
+ list<int>::iterator k, old_k;
+ submenu_container::iterator subi;
+ map<string, string>::iterator l;
+ vector<string> keys;
+ list<int> todo;
+ set<char> used_chars;
+ string s;
+ char c;
+
+ string str0 = "0";
+ str0[0]='\0';
+ if (menumethod->hkexclude)
+ s = menumethod->hkexclude->soutput(vars);
+ for (i = 0; i != s.length(); i++)
+ used_chars.insert(hotkeyconv(s[i]));
+
+ for(subi = submenus.begin(), i = 0; subi != submenus.end(); subi++, i++)
+ {
+ todo.push_back(i);
+ l = subi->second->vars.find(HOTKEY_VAR);
+ if (l != subi->second->vars.end())
+ keys.push_back(l->second);
+ else
+ keys.push_back(str0);
+ keys[i] += sort_hotkey(subi->second->vars[TITLE_VAR]);
+ }
+ j = 0;
+ while (!todo.empty())
+ {
+ for (k = todo.begin();k != todo.end();)
+ {
+ i = *k;
+ old_k = k++; //k++ here, to be able to todo.erase(old_k) safely.
+ if (j >= keys[i].length()) {
+ keys[i] = str0;
+ todo.erase(old_k); //no hotkey found -- give up on this entry.
+ continue;
+ }
+ c = keys[i][j];
+ if (c) {
+ if (used_chars.find(hotkeyconv(c)) == used_chars.end()) {
+ todo.erase(old_k); //found a hotkey for this entry.
+ keys[i] = c;
+ used_chars.insert(hotkeyconv(c));
+ continue;
+ } else {
+ keys[i].replace(j,1,str0);
+ }
+ }
+ }
+ j++;
+ }
+ for (subi = submenus.begin(), i = 0; subi != submenus.end(); subi++, i++)
+ {
+ c = keys[i][0];
+ if (c)
+ subi->second->vars[HOTKEY_VAR] = c;
+ }
+}
diff --git a/install-menu/menu-tree.h b/install-menu/menu-tree.h
new file mode 100644
index 0000000..8f93d8c
--- /dev/null
+++ b/install-menu/menu-tree.h
@@ -0,0 +1,64 @@
+/*
+ * Debian menu system -- install-menu
+ * install-menus/menu-tree.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef MENU_TREE_H
+#define MENU_TREE_H
+
+#include <vector>
+#include <string>
+#include <map>
+
+class menuentry;
+
+/** submenu_container:
+ * vector<string> first - full title, broken into a vector of strings
+ * menuentry* second - the menu entry with this title
+ */
+typedef std::map<std::vector<std::string>, menuentry *> submenu_container;
+
+/** Internal representation of a menu entry */
+class menuentry {
+ char hotkeyconv(char);
+ void generate_hotkeys();
+ void store_hints();
+ std::vector<std::string> menuhints;
+
+public:
+ menuentry() : forced(false) { }
+
+ submenu_container submenus;
+ std::map<std::string, std::string> vars;
+ bool forced;
+
+ void add_entry(std::vector<std::string> sections, std::map<std::string, std::string>& entry_vars);
+ void add_entry_ptr(std::vector<std::string> sections, menuentry *entry);
+ void output();
+ void postprocess(int n_parent, int level, const std::string& prev_section);
+ void process_hints();
+};
+
+
+#endif /* MENU_TREE_H */
diff --git a/install-sh b/install-sh
new file mode 100755
index 0000000..4d4a951
--- /dev/null
+++ b/install-sh
@@ -0,0 +1,323 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2005-05-14.22
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# 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
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch. It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+chmodcmd="$chmodprog 0755"
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+ or: $0 [OPTION]... SRCFILES... DIRECTORY
+ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+ or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c (ignored)
+-d create directories instead of installing files.
+-g GROUP $chgrpprog installed files to GROUP.
+-m MODE $chmodprog installed files to MODE.
+-o USER $chownprog installed files to USER.
+-s $stripprog installed files.
+-t DIRECTORY install into DIRECTORY.
+-T report an error if DSTFILE is a directory.
+--help display this help and exit.
+--version display version info and exit.
+
+Environment variables override the default commands:
+ CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test -n "$1"; do
+ case $1 in
+ -c) shift
+ continue;;
+
+ -d) dir_arg=true
+ shift
+ continue;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift
+ shift
+ continue;;
+
+ --help) echo "$usage"; exit $?;;
+
+ -m) chmodcmd="$chmodprog $2"
+ shift
+ shift
+ continue;;
+
+ -o) chowncmd="$chownprog $2"
+ shift
+ shift
+ continue;;
+
+ -s) stripcmd=$stripprog
+ shift
+ continue;;
+
+ -t) dstarg=$2
+ shift
+ shift
+ continue;;
+
+ -T) no_target_directory=true
+ shift
+ continue;;
+
+ --version) echo "$0 $scriptversion"; exit $?;;
+
+ *) # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ test -n "$dir_arg$dstarg" && break
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dstarg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dstarg"
+ shift # fnord
+ fi
+ shift # arg
+ dstarg=$arg
+ done
+ break;;
+ esac
+done
+
+if test -z "$1"; then
+ if test -z "$dir_arg"; then
+ echo "$0: no input file specified." >&2
+ exit 1
+ fi
+ # It's OK to call `install-sh -d' without argument.
+ # This can happen when creating conditional directories.
+ exit 0
+fi
+
+for src
+do
+ # Protect names starting with `-'.
+ case $src in
+ -*) src=./$src ;;
+ esac
+
+ if test -n "$dir_arg"; then
+ dst=$src
+ src=
+
+ if test -d "$dst"; then
+ mkdircmd=:
+ chmodcmd=
+ else
+ mkdircmd=$mkdirprog
+ fi
+ else
+ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+ # might cause directories to be created, which would be especially bad
+ # if $src (and thus $dsttmp) contains '*'.
+ if test ! -f "$src" && test ! -d "$src"; then
+ echo "$0: $src does not exist." >&2
+ exit 1
+ fi
+
+ if test -z "$dstarg"; then
+ echo "$0: no destination specified." >&2
+ exit 1
+ fi
+
+ dst=$dstarg
+ # Protect names starting with `-'.
+ case $dst in
+ -*) dst=./$dst ;;
+ esac
+
+ # If destination is a directory, append the input filename; won't work
+ # if double slashes aren't ignored.
+ if test -d "$dst"; then
+ if test -n "$no_target_directory"; then
+ echo "$0: $dstarg: Is a directory" >&2
+ exit 1
+ fi
+ dst=$dst/`basename "$src"`
+ fi
+ fi
+
+ # This sed command emulates the dirname command.
+ dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+
+ # Make sure that the destination directory exists.
+
+ # Skip lots of stat calls in the usual case.
+ if test ! -d "$dstdir"; then
+ defaultIFS='
+ '
+ IFS="${IFS-$defaultIFS}"
+
+ oIFS=$IFS
+ # Some sh's can't handle IFS=/ for some reason.
+ IFS='%'
+ set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+ shift
+ IFS=$oIFS
+
+ pathcomp=
+
+ while test $# -ne 0 ; do
+ pathcomp=$pathcomp$1
+ shift
+ if test ! -d "$pathcomp"; then
+ $mkdirprog "$pathcomp"
+ # mkdir can fail with a `File exist' error in case several
+ # install-sh are creating the directory concurrently. This
+ # is OK.
+ test -d "$pathcomp" || exit
+ fi
+ pathcomp=$pathcomp/
+ done
+ fi
+
+ if test -n "$dir_arg"; then
+ $doit $mkdircmd "$dst" \
+ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
+
+ else
+ dstfile=`basename "$dst"`
+
+ # Make a couple of temp file names in the proper directory.
+ dsttmp=$dstdir/_inst.$$_
+ rmtmp=$dstdir/_rm.$$_
+
+ # Trap to clean up those temp files at exit.
+ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Copy the file name to the temp name.
+ $doit $cpprog "$src" "$dsttmp" &&
+
+ # and set any options; do chmod last to preserve setuid bits.
+ #
+ # If any of these fail, we abort the whole thing. If we want to
+ # ignore errors from any of these, just make sure not to ignore
+ # errors from the above "$doit $cpprog $src $dsttmp" command.
+ #
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
+
+ # Now rename the file to the real destination.
+ { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
+ || {
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ if test -f "$dstdir/$dstfile"; then
+ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+ || {
+ echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+ (exit 1); exit 1
+ }
+ else
+ :
+ fi
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+ }
+ }
+ fi || { (exit 1); exit 1; }
+done
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+{
+ (exit 0); exit 0
+}
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/missing b/missing
new file mode 100755
index 0000000..894e786
--- /dev/null
+++ b/missing
@@ -0,0 +1,360 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2005-06-08.21
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+
+# 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, 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.
+
+if test $# -eq 0; then
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+fi
+
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+ configure_ac=configure.ac
+else
+ configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case "$1" in
+--run)
+ # Try to run requested program, and just exit if it succeeds.
+ run=
+ shift
+ "$@" && exit 0
+ # Exit code 63 means version mismatch. This often happens
+ # when the user try to use an ancient version of a tool on
+ # a file that requires a minimum version. In this case we
+ # we should proceed has if the program had been absent, or
+ # if --run hadn't been passed.
+ if test $? = 63; then
+ run=:
+ msg="probably too old"
+ fi
+ ;;
+
+ -h|--h|--he|--hel|--help)
+ echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+ -h, --help display this help and exit
+ -v, --version output version information and exit
+ --run try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ help2man touch the output file
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ tar try tar, gnutar, gtar, then tar without non-portable flags
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake@gnu.org>."
+ exit $?
+ ;;
+
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "missing $scriptversion (GNU Automake)"
+ exit $?
+ ;;
+
+ -*)
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+ ;;
+
+esac
+
+# Now exit if we have it, but it failed. Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+ lex|yacc)
+ # Not GNU programs, they don't have --version.
+ ;;
+
+ tar)
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ exit 1
+ fi
+ ;;
+
+ *)
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+ # We have it, but it failed.
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ # Could not run --version or --help. This is probably someone
+ # running `$TOOL --version' or `$TOOL --help' to check whether
+ # $TOOL exists and not knowing $TOOL uses missing.
+ exit 1
+ fi
+ ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+ aclocal*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
+
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`${configure_ac}'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+ test -z "$files" && files="config.h"
+ touch_files=
+ for f in $files; do
+ case "$f" in
+ *:*) touch_files="$touch_files "`echo "$f" |
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+ *) touch_files="$touch_files $f.in";;
+ esac
+ done
+ touch $touch_files
+ ;;
+
+ automake*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print |
+ sed 's/\.am$/.in/' |
+ while read f; do touch "$f"; done
+ ;;
+
+ autom4te)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them.
+ You can get \`$1' as part of \`Autoconf' from any GNU
+ archive site."
+
+ file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
+ test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ if test -f "$file"; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo "#! /bin/sh"
+ echo "# Created by GNU Automake missing as a replacement of"
+ echo "# $ $@"
+ echo "exit 0"
+ chmod +x $file
+ exit 1
+ fi
+ ;;
+
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' $msg. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
+ ;;
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ help2man)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a dependency of a manual page. You may need the
+ \`Help2man' package in order for those modifications to take
+ effect. You can get \`Help2man' from any GNU archive site."
+
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+ fi
+ if [ -f "$file" ]; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo ".ab help2man is required to generate this page"
+ exit 1
+ fi
+ ;;
+
+ makeinfo)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ the \`GNU make' package. Grab either from any GNU archive site."
+ # The file to touch is that specified with -o ...
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ # ... or it is the one specified with @setfilename ...
+ infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ # ... or it is derived from the source name (dir/f.texi becomes f.info)
+ test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+ fi
+ # If the file does not exist, the user really needs makeinfo;
+ # let's fail without touching anything.
+ test -f $file || exit 1
+ touch $file
+ ;;
+
+ tar)
+ shift
+
+ # We have already tried tar in the generic part.
+ # Look for gnutar/gtar before invocation to avoid ugly error
+ # messages.
+ if (gnutar --version > /dev/null 2>&1); then
+ gnutar "$@" && exit 0
+ fi
+ if (gtar --version > /dev/null 2>&1); then
+ gtar "$@" && exit 0
+ fi
+ firstarg="$1"
+ if shift; then
+ case "$firstarg" in
+ *o*)
+ firstarg=`echo "$firstarg" | sed s/o//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ case "$firstarg" in
+ *h*)
+ firstarg=`echo "$firstarg" | sed s/h//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ fi
+
+ echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+ You may want to install GNU tar or Free paxutils, or check the
+ command line arguments."
+ exit 1
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequisites for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/mkinstalldirs b/mkinstalldirs
new file mode 100755
index 0000000..4f58503
--- /dev/null
+++ b/mkinstalldirs
@@ -0,0 +1,40 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+# Author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain
+
+# $Id: mkinstalldirs,v 1.13 1999/01/05 03:18:55 bje Exp $
+
+errstatus=0
+
+for file
+do
+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+ shift
+
+ pathcomp=
+ for d
+ do
+ pathcomp="$pathcomp$d"
+ case "$pathcomp" in
+ -* ) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ echo "mkdir $pathcomp"
+
+ mkdir "$pathcomp" || lasterr=$?
+
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ fi
+ fi
+
+ pathcomp="$pathcomp/"
+ done
+done
+
+exit $errstatus
+
+# mkinstalldirs ends here
diff --git a/po-sections/Makefile.am b/po-sections/Makefile.am
new file mode 100644
index 0000000..7fda799
--- /dev/null
+++ b/po-sections/Makefile.am
@@ -0,0 +1,32 @@
+MOs = @MO_SECTIONS@
+POs = @PO_SECTIONS@
+localedir = $(datadir)/locale
+
+EXTRA_DIST = $(POs) menufile2pot menu-sections.pot README trme2po
+
+all-local: $(MOs)
+install-data-local:$(MOs) lang.h
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/menu-sections.mo; \
+ done
+
+lang.h: $(MOs)
+ echo "#List of languages for multilingual menu" >lang.h
+ echo >>lang.h
+ echo 'function sections_translations()="$(MOs) "' \
+ | sed -e 's/.mo /:/g; s/:"/"/' >>lang.h
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+clean-local:
+ rm -f *.mo lang.h
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/menu-sections.mo; \
+ done
diff --git a/po-sections/Makefile.in b/po-sections/Makefile.in
new file mode 100644
index 0000000..f4f7d55
--- /dev/null
+++ b/po-sections/Makefile.in
@@ -0,0 +1,325 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = po-sections
+DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = $(datadir)/locale
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+MOs = @MO_SECTIONS@
+POs = @PO_SECTIONS@
+EXTRA_DIST = $(POs) menufile2pot menu-sections.pot README trme2po
+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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu po-sections/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu po-sections/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
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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 all-local
+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)
+
+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-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-local
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-local distclean distclean-generic distdir dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am uninstall-local
+
+
+all-local: $(MOs)
+install-data-local:$(MOs) lang.h
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/menu-sections.mo; \
+ done
+
+lang.h: $(MOs)
+ echo "#List of languages for multilingual menu" >lang.h
+ echo >>lang.h
+ echo 'function sections_translations()="$(MOs) "' \
+ | sed -e 's/.mo /:/g; s/:"/"/' >>lang.h
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+clean-local:
+ rm -f *.mo lang.h
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/menu-sections.mo; \
+ done
+# 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/po-sections/README b/po-sections/README
new file mode 100644
index 0000000..f30fc36
--- /dev/null
+++ b/po-sections/README
@@ -0,0 +1,18 @@
+If you want to start translating, you should start with a
+menu-messages.po[t] file. Really, we should distribute that
+file somewhere on www.debian.org, but that hasn't been done yet.
+To generate it temporarily from the menu entry files installed
+on your system, type
+
+ make menu-messages.pot
+
+Then you simply type
+ mv menu-messages.pot de.po
+if you want to start making the german translations.
+
+The Makefile in this dir really needs fixing up, but I'll do
+that soon anyway. Probably before you manage to send in your
+??.po file.
+
+Thanks,
+joost <joostje@debian.org> \ No newline at end of file
diff --git a/po-sections/ar.po b/po-sections/ar.po
new file mode 100644
index 0000000..2c9c916
--- /dev/null
+++ b/po-sections/ar.po
@@ -0,0 +1,446 @@
+# translation of menu_po-sections.po to Arabic
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Ossama M. Khayat <okhayat@yahoo.com>, 2005, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-07-16 22:06+0300\n"
+"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n"
+"Language-Team: Arabic <support@arabeyes.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "تطبيقات"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "الموصليّة"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "هواة اللاسلكي"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "إدارة البيانات"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "المحررات"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "التعليم"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "المحاكيات"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "إدارة الملÙات"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "الرسوم"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "الأجهزة المتنقلة"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "الشبكة"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "التواصل"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "نقل الملÙات"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "المراقبة"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "تصÙØ­ الوب"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "أخبار الوب"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "المكتب"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "البرمجة"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "إدارة المشاريع"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "العلوم"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "الÙلك"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "الأحياء"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "الكيمياء"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "تحليل البيانات"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "الإلكترونيات"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "الهندسة"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "علوم الجيولوجيا"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "الرياضيات"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "الطب"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "الÙيزياء"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "الاجتماع"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "طرÙيات"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "الصوتيات"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "النظام"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "الإدارة"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "العتاد"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "البيئة اللغوية"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "إدارة الحزم"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "الأمن"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "محاكيات الطرÙيات"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "النص"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "التلÙزيون والراديو"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "المستعرضات"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "الÙيديو"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "تطوير الوب"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "الألعاب"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "الحركة"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "المغامرة"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "البلوكات"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "اللوحة"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ورق"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "الأحجيات"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "المحاكاة"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "الاستراتيجية"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "أدوات"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "ألعاب"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "مساعدة"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "شاشة"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "الحÙÙظ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "القَÙْل"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "مدراء النواÙØ°"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "وحدات FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "ويندو ميكر"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "المظهر"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "مساحة العمل"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Ù…Ùكوّنات آيس إيب"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "دمى"
diff --git a/po-sections/ast.po b/po-sections/ast.po
new file mode 100644
index 0000000..6baa8e5
--- /dev/null
+++ b/po-sections/ast.po
@@ -0,0 +1,447 @@
+# Menu section translation
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.35\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2009-01-11 15:42+0100\n"
+"Last-Translator: astur <malditoastur@gmail.com>\n"
+"Language-Team: Asturian <softast-xeneral@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=2; plural=(n != 1);\n"
+"X-Poedit-Language: Asturian\n"
+"X-Poedit-Country: SPAIN\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicaciones"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accesibilidá"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioaficionaos"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Xestión de datos"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editores"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educación"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladores"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Xestión de ficheros"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Gráficos"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Preseos Móviles"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rede"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicación"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Tresferencies de ficheros"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorización"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Restolar Web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Noticies Web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Ofimática"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programación"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Xestión de proyeutos"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciencia"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomía"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Bioloxía"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analís de datos"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Eleutrónica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Inxeniería"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Xeoloxía"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemátiques"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Ciencies sociales"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Consoles"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Soníu"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Alministración"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Entornu de Llingua"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Xestión de paquetes"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Seguridá"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladores de terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Testu"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV y radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visores"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Videu"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desendolcu Web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Xuegos"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Aición"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Bloques"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tableru"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartes"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzles"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulación"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estratexa"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ferramientes"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Xuguetes"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Aida"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pantalla"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Curiapantalles"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Bloquiapantalles"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Xestores de ventanes"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Módulos de FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aspeutu"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espaciu de trabayu"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componentes d'Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Esbardos"
diff --git a/po-sections/be.po b/po-sections/be.po
new file mode 100644
index 0000000..3548878
--- /dev/null
+++ b/po-sections/be.po
@@ -0,0 +1,447 @@
+# translation of menu_2.1.36_be.po to Belarusian (Official spelling)
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Paul Petruk <inet@tut.by>, 2006.
+# Pavel Piatruk <berserker@neolocation.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_2.1.36_be\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-14 05:01+0300\n"
+"Last-Translator: Pavel Piatruk <berserker@neolocation.com>\n"
+"Language-Team: Belarusian (Official spelling) <i18n@mova.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Праграмы"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "ДаÑтупнаÑць"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ÐматарÑкае радыё"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Кіраванне дадзенымі"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "РÑдактары"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "ÐдукацыÑ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ЭмулÑтары"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Кіраванне файламі"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графіка"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "ÐœÐ°Ð±Ñ–Ð»ÑŒÐ½Ñ‹Ñ Ð¿Ñ€Ñ‹Ð»Ð°Ð´Ñ‹"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Сецiва"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "СувÑзь"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Перадача файлаў"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Маніторынг"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ПраглÑд Web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Ðавіны Web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ОфіÑ"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Праграмаванне"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Кіраванне праектамі"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ðавука"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтраноміÑ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "БіÑлогіÑ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ХіміÑ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ðналіз дадзеных"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Электроніка"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ІнжÑнерныÑ"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "ГеаграфіÑ"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "МатÑматыка"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медыцына"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Фізіка"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Соцыюм"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Ðбалонкі"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Гук"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "СіÑÑ‚Ñма"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ÐдмініÑтраванне"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Ðпаратнае забеÑпÑчÑнне"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Моўнае аÑÑроддзе"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Кіраванне пакетамі"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "БÑÑпека"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ЭмулÑтары Ñ‚Ñрмінала"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ТÑкÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ТБ і радыё"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ПраглÑдчыкі"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ВідÑа"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "РаÑпрацоўка Web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Гульні"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Экшн"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Прыгоды"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "БлокавыÑ"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ÐаÑтольныÑ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "КартачныÑ"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ЛагічныÑ"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "СімулÑтары"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "СтратÑгічныÑ"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Сродкі"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "ПроÑÑ‚Ñ‹Ñ"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Дапамога"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Экран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Зберагальнікі"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Блакіроўка"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "ÐœÑнÑджÑры вакон"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Модулі FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Знешні выглÑд"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ÐŸÑ€Ð°Ñ†Ð¾ÑžÐ½Ð°Ñ Ð¿Ñ€Ð°Ñтора"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Кампаненты Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ÐŸÐ»ÑŽÑˆÐ°Ð²Ñ‹Ñ Ð¼Ñ–ÑˆÐºÑ–"
diff --git a/po-sections/bg.po b/po-sections/bg.po
new file mode 100644
index 0000000..9add083
--- /dev/null
+++ b/po-sections/bg.po
@@ -0,0 +1,479 @@
+# translation of menu_po-sections_bg.po to Bulgarian
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+#
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Damyan Ivanov <dam@modsoftsys.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-18 13:16+0300\n"
+"Last-Translator: Damyan Ivanov <dam@modsoftsys.com>\n"
+"Language-Team: Bulgarian <dict@fsa-bg.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Програми"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "ДоÑтъпноÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ЛюбителÑко радио"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Работа Ñ Ð´Ð°Ð½Ð½Ð¸"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Редактори"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Обучение"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Емулатори"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Работа Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²Ðµ"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графика"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Мобилни уÑтройÑтва"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Мрежа"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "КомуникациÑ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ПрехвърлÑне на файлове"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Ðаблюдение"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Сърфиране в Интернет"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Ðовини"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ОфиÑ"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Разработка"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Управление на проекти"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ðауки"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтрономиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "БиологиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ХимиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ðнализ на данни"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Електроника"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ИнженерÑтво"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Ðауки за земÑта"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Математика"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медицина"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Физика"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Социални науки"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Обвивки"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Звук"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "СиÑтема"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Управление"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Хардуер"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Езикова Ñреда"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Управление на пакети"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "СигурноÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Терминални емулатори"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Работа Ñ Ñ‚ÐµÐºÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Ð¢ÐµÐ»ÐµÐ²Ð¸Ð·Ð¸Ñ Ð¸ радио"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Програми за преглед"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Видео"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Уеб разработка"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Игри"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Екшън"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ПриключенÑки"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Блокчета"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ÐаÑтолни"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Карти"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ЛогичеÑки"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Симулатори"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "СтратегичеÑки"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ИнÑтрументи"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Играчки"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Помощ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Екран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Предпазване"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Заключване"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Мениджъри на прозорци"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Модули за FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Изглед"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Работно мÑÑто"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Компоненти на Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Плюшени"
+
+#~ msgid "Apps"
+#~ msgstr "Програми"
+
+#~ msgid "Hamradio"
+#~ msgstr "ЛюбителÑко радио"
+
+#~ msgid "Math"
+#~ msgstr "Математика"
+
+#~ msgid "Technical"
+#~ msgstr "ТехничеÑки"
+
+#~ msgid "Arcade"
+#~ msgstr "Ðркадни"
+
+#~ msgid "Sports"
+#~ msgstr "Спортни"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Подобни на тетриÑ"
+
+#~ msgid "Root-window"
+#~ msgstr "Фон"
+
+#~ msgid "XShells"
+#~ msgstr "X-терминали"
+
+#~ msgid "Admin"
+#~ msgstr "ÐдминиÑтрациÑ"
diff --git a/po-sections/bn.po b/po-sections/bn.po
new file mode 100644
index 0000000..3947b87
--- /dev/null
+++ b/po-sections/bn.po
@@ -0,0 +1,478 @@
+# Bengali translation of Menu section
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Mahay Alam Khan (মাহে আলম) <makl10n@yahoo.com>, 2006.
+# Khandakar Mujahidul Islam <suzan@bengalinux.org>, 2006.
+# Md. Rezwan Shahid <rezwan@ankur.org.bd>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2009-04-13 16:20+0600\n"
+"Last-Translator: Md. Rezwan Shahid <rezwan@ankur.org.bd>\n"
+"Language-Team: Bengali <ankur-bd-l10n@googlegroups.com>\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: WordForge 0.5-beta1\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "à¦à¦•à§à¦¸à§‡à¦¸à¦¿à¦¬à¦¿à¦²à¦¿à¦Ÿà¦¿"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "অà§à¦¯à¦¾à¦®à§‡à¦šà¦¾à¦° রেডিও"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ডেটা মà§à¦¯à¦¾à¦¨à§‡à¦œà¦®à§‡à¦¨à§à¦Ÿ"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "সমà§à¦ªà¦¾à¦¦à¦•"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "শিকà§à¦·à¦¾"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ইমà§à¦²à§‡à¦Ÿà¦°"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ফাইল মà§à¦¯à¦¾à¦¨à§‡à¦œà¦®à§‡à¦¨à§à¦Ÿ"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "গà§à¦°à¦¾à¦«à¦¿à¦•à§à¦¸"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "মোবাইল যনà§à¦¤à§à¦°"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "নেটওয়ারà§à¦•"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "যোগাযোগ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ফাইল সà§à¦¥à¦¾à¦¨à¦¾à¦¨à§à¦¤à¦°"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "মনিটরিং"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ওয়েব বà§à¦°à¦¾à¦‰à¦œà¦¿à¦‚"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ওয়েব নিউজ"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "অফিস"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "পà§à¦°à§‹à¦—à§à¦°à¦¾à¦®à¦¿à¦‚"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "পà§à¦°à¦œà§‡à¦•à§à¦Ÿ মà§à¦¯à¦¾à¦¨à§‡à¦œà¦®à§‡à¦¨à§à¦Ÿ"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "বিজà§à¦žà¦¾à¦¨"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "মহাকাশ বিজà§à¦žà¦¾à¦¨"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "জীববিজà§à¦žà¦¾à¦¨"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "রসায়ন"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "ডেটা বিশà§à¦²à§‡à¦·à¦¨"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "ইলেকà§à¦Ÿà§à¦°à¦¨à¦¿à¦•"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "পà§à¦°à¦•à§Œà¦¶à¦²"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "ভূবিজà§à¦žà¦¾à¦¨"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "গণিত"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "ঔষধবিদà§à¦¯à¦¾"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "পদরà§à¦¥à¦¬à¦¿à¦¦à§à¦¯à¦¾"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "সামাজিক"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "শেল"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "শবà§à¦¦"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "সিসà§à¦Ÿà§‡à¦®"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "অà§à¦¯à¦¾à¦¡à¦®à¦¿à¦¨à¦¿à¦¸à§à¦Ÿà§à¦°à§‡à¦¶à¦¨"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "হারà§à¦¡à¦“য়à§à¦¯à¦¾à¦°"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "ভাষা পরিবেশ"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "পà§à¦¯à¦¾à¦•à§‡à¦œ মà§à¦¯à¦¾à¦¨à§‡à¦œà¦®à§‡à¦¨à§à¦Ÿ"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "নিরাপতà§à¦¤à¦¾"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "টারà§à¦®à¦¿à¦¨à¦¾à¦² ইমà§à¦²à§‡à¦Ÿà¦°"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "টেকà§à¦¸à¦Ÿ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "টিভি à¦à¦¬à¦‚ রেডিও"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "দরà§à¦¶à¦•"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ভিডিও"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "ওয়েব ডেভেলপমেনà§à¦Ÿ"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "খেলা"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "অà§à¦¯à¦¾à¦•à¦¶à¦¨"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "অà§à¦¯à¦¾à¦¡à¦­à§‡à¦žà§à¦šà¦¾à¦°"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "বà§à¦²à¦•"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "বোরà§à¦¡"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "কারà§à¦¡"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ধাà¦à¦§à¦¾"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "সিমà§à¦²à§‡à¦¶à¦¨"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "কৌশল"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "টà§à¦²"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "খেলনা"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "সহায়িকা"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "পরà§à¦¦à¦¾"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "সংরকà§à¦·à¦£ করা হচà§à¦›à§‡"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "লক করা হচà§à¦›à§‡"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "উইনà§à¦¡à§‹ মà§à¦¯à¦¾à¦¨à§‡à¦œà¦¾à¦°"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM মডিউল"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "উইনà§à¦¡à§‹ মেকার"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "উপসà§à¦¥à¦¿à¦¤à¦¿"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ওয়ারà§à¦•à¦¸à§à¦ªà§‡à¦¸"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape উপাদান"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "টেডি"
+
+#~ msgid "Apps"
+#~ msgstr "অà§à¦¯à¦¾à¦ªà§à¦²à¦¿à¦•à§‡à¦¶à¦¨"
+
+#~ msgid "Hamradio"
+#~ msgstr "হà§à¦¯à¦¾à¦®à¦°à§‡à¦¡à¦¿à¦“"
+
+#~ msgid "Math"
+#~ msgstr "গণিত"
+
+#~ msgid "Technical"
+#~ msgstr "টেকনিকà§à¦¯à¦¾à¦²"
+
+#~ msgid "Arcade"
+#~ msgstr "আরà§à¦•à§‡à¦¡"
+
+#~ msgid "Sports"
+#~ msgstr "খেলাধূলা"
+
+#~ msgid "Tetris-like"
+#~ msgstr "টেটà§à¦°à¦¿à¦¸à§‡à¦°-মত"
+
+#~ msgid "Root-window"
+#~ msgstr "রà§à¦Ÿ-উইনà§à¦¡à§‹"
+
+#~ msgid "XShells"
+#~ msgstr "à¦à¦•à§à¦¸à¦¶à§‡à¦²"
+
+#~ msgid "Admin"
+#~ msgstr "অà§à¦¯à¦¾à¦¡à¦®à¦¿à¦¨"
diff --git a/po-sections/br.po b/po-sections/br.po
new file mode 100644
index 0000000..cd3f6bf
--- /dev/null
+++ b/po-sections/br.po
@@ -0,0 +1,440 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: \n"
+"Last-Translator: Michel Nédélec <mnedeleg@yahoo.fr>\n"
+"Language-Team: Breton\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Breton\n"
+"X-Poedit-Country: FRANCE\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Arloadoù"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Monedusted"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Skingomz amatour"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Mererezh roadennoù"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Aozerioù"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Deskadurezh"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatorioù"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Mererezh restroù"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikoù"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Periantoù hezoug"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rouedad"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kehentiñ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Treuzkas restroù"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitor"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Kenrouedad"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Keleier"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Burev"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Diorren"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Mererezh mennadoù"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Skiant"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomiezh"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Bevoniezh"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kimiezh"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Dielfennadur roadennoù"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronik"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ijinouriezh"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Skiantoù an douar"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Jedoniezh"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medisinerezh"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizik"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sokial"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Son"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Reizhiad"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Mererezh"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Periantoù"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Endro yezh"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Mererezh ar pakadoù"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Surentez"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulatorioù termenell"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Testenn"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Skinwell ha skingomz"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Diskwelerioù"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Diorren kenrouedad"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "C'hoarioù"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Birvidik"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Troioù-kaer"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blok"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Taol"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kartenn"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzzles"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Drevezerezh"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategiezh"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ostilhoù"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "C'hoariell"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Skoazell"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Skramm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Beilh"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Prennañ"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Merour prenestroù"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modulennoù FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Tres"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Takad labour"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Parzhioù Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Grognonenn"
diff --git a/po-sections/bs.po b/po-sections/bs.po
new file mode 100644
index 0000000..86be9cb
--- /dev/null
+++ b/po-sections/bs.po
@@ -0,0 +1,489 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-11-06 16:22+0100\n"
+"Last-Translator: Safir Secerovic <sapphire@linux.org.ba>\n"
+"Language-Team: Bosnian <lokal@linux.org.ba>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: 3\n"
+"X-Poedit-Country: BOSNIA AND HERZEGOVINA\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "UreÄ‘ivaÄi"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Obrazovanje"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatori"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "Mreža"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "Obrazovanje"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programiranje"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Nauka"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "Baze podataka"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "Nauka"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Ljuske"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Zvuk"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "Emulatori"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Preglednici"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Igre"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "Obrazovanje"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Avanture"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "ZakljuÄaj"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "PloÄa"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kartaške"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Slagalice"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulacije"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategije"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Alati"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "IgraÄke"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Pomoć"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekran"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "Zaštiti"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "ZakljuÄaj"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "UpravljaÄi prozora"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "Moduli"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "UpravljaÄi prozora"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Izgled"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Radni prostor"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "Mozilla komponente"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Medvjedići"
+
+#~ msgid "Apps"
+#~ msgstr "Aplikacije"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radio amaterstvo"
+
+#~ msgid "Math"
+#~ msgstr "Matematika"
+
+#~ msgid "Technical"
+#~ msgstr "TehniÄki"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkadne"
+
+#~ msgid "Sports"
+#~ msgstr "Sport"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetrisi"
+
+#~ msgid "Root-window"
+#~ msgstr "Pozadina"
+
+#~ msgid "XShells"
+#~ msgstr "X ljuske"
+
+#~ msgid "Admin"
+#~ msgstr "Administracija"
diff --git a/po-sections/ca.po b/po-sections/ca.po
new file mode 100644
index 0000000..ed96faf
--- /dev/null
+++ b/po-sections/ca.po
@@ -0,0 +1,479 @@
+# Menu sections translation to Catalan.
+# Copyright © 2003, 2004, 2008 Software in the Public Interest, Inc.
+# This file is distributed under the same license as the menu package.
+# Jordi Mallach <jordi@debian.org>, 2003, 2004, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-09-10 19:39+0200\n"
+"Last-Translator: Jordi Mallach <jordi@debian.org>\n"
+"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicacions"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accessibilitat"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioafició"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gestió de dades"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editors"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educació"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladors"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gestió de fitxers"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Gràfics"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositius mòbils"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Xarxa"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicació"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transferència de fitxers"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Seguiment"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navegació web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Notícies web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Oficina"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programació"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gestió de projectes"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciència"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Anàlisi de dades"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Electrònica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Enginyeria"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geociència"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemàtiques"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Social"
+
+# Intèrprets d'ordres queda massa llarg. Intèrprets a seques, ambigu... jm
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Intèrprets d'ordres"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "So"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administració"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Maquinari"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Entorn de llengua"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gestió de paquets"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Seguretat"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladors de terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Text"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV i ràdio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visualitzadors"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vídeo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desenvolupament web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jocs"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Acció"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blocs"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "De taula"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartes"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Trencaclosques"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simuladors"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estratègia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Eines"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Joguines"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ajuda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pantalla"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Estalvi"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Blocatge"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gestors de finestres"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Mòduls de l'FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aparença"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espai de treball"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Components de l'Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Peluixos"
+
+#~ msgid "Apps"
+#~ msgstr "Aplicacions"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radioaficionat"
+
+#~ msgid "Math"
+#~ msgstr "Matemàtiques"
+
+#~ msgid "Technical"
+#~ msgstr "Tècniques"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Esports"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tipus tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Finestra arrel"
+
+#~ msgid "XShells"
+#~ msgstr "Shells per a X"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Administració"
diff --git a/po-sections/cs.po b/po-sections/cs.po
new file mode 100644
index 0000000..38596af
--- /dev/null
+++ b/po-sections/cs.po
@@ -0,0 +1,479 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Czech translation: Miroslav Kure, 2004--2007
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-14 21:27+0200\n"
+"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikace"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Přístupnost"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioamatéři"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Správa dat"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editory"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Vzdělání"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulátory"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Správa souborů"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobilní zařízení"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Síť"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikace"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Přenos souborů"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Sledování"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Prohlížení webu"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Zprávy z webu"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kancelář"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programování"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Správa projektů"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Věda"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomie"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologie"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chemie"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analýza dat"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Inženýrství"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Zeměpis"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicína"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fyzika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "SpoleÄenské"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shelly"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Zvuky"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Systém"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Správa"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Jazykové prostředí"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Správa balíků"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "BezpeÄnost"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulátory terminálu"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Text"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Televize a rádio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ProhlížeÄe"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Vývoj webu"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Hry"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "AkÄní"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Dobrodružné"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokové"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Deskové"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Karetní"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Hlavolamy"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulátory"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategie"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Nástroje"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "HraÄky"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Nápověda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Obrazovka"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Spoření"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Zamykání"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Správci oken"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM moduly"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Vzhled"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Pracovní plocha"
+
+# Fresuently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape - souÄásti"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Medvídci"
+
+#~ msgid "Apps"
+#~ msgstr "Aplikace"
+
+#~ msgid "Hamradio"
+#~ msgstr "Amatérské rádio"
+
+#~ msgid "Math"
+#~ msgstr "Matematika"
+
+#~ msgid "Technical"
+#~ msgstr "Technické"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkády"
+
+#~ msgid "Sports"
+#~ msgstr "Sporty"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetrisové variace"
+
+#~ msgid "Root-window"
+#~ msgstr "Kořenové okno"
+
+#~ msgid "XShells"
+#~ msgstr "XShelly"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Administrátor"
diff --git a/po-sections/da.po b/po-sections/da.po
new file mode 100644
index 0000000..58b122d
--- /dev/null
+++ b/po-sections/da.po
@@ -0,0 +1,453 @@
+# Danish translation menu sections.
+# Copyright (C) 2011 menu & nedenstående oversættere.
+# This file is distributed under the same license as the menu package.
+# Morten brix Pedersen, 2003.
+# Joe Hansen <joedalton2@yahoo.dk>, 2011.
+#
+# Note: Please send any inquiries on this file to the Debian Danish
+# translation team (debian-l10n-danish@lists.debian.org)
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.45\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2011-04-30 22:24+0100\n"
+"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
+"Language-Team: Danish <debian-l10n-danish@lists.debian.org>\n"
+"Language: da\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Programmer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Tilgængelighed"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatørradio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Datahåndtering"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Tekstredigering"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Uddannelse"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatorer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Filhåndtering"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafik"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobile enheder"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Netværk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kommunikation"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Filoverførsel"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Overvågning"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Internetbrowsere"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Nyhedskilder"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kontorpakker"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmering"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projekthåndtering"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Videnskab"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologi"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kemi"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Dataanalyse"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronik"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Udviklingsprogrammer"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geovidenskab"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematik"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicin"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fysik"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Social"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Kommandoskaller"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Lyd"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "System"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administration"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Sprogmiljø"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakkehåndtering"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sikkerhed"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminalemulatorer"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Tv og radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Fremvisere"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Internetudvikling"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spil"
+
+# action, aktion, spændingsspil, ???
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Spændingsspil"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Eventyr"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokspil"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Brætspil"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kortspil"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puslespil"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulering"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategi"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Værktøjer"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Legetøj"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hjælp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Skærm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Pauseskærm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "LÃ¥s"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Vindueshåndteringer"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-moduler"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Udseende"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Skrivebord"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-komponenter"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Bamser"
diff --git a/po-sections/de.po b/po-sections/de.po
new file mode 100644
index 0000000..2294f5c
--- /dev/null
+++ b/po-sections/de.po
@@ -0,0 +1,445 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# German translation:
+# Sebastian Rittau <srittau@debian.org>, 2003, 2004.
+# Sven Joachim <svenjoac@gmx.de>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.36\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-14 17:12+0200\n"
+"Last-Translator: Sven Joachim <svenjoac@gmx.de>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Anwendungen"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Barrierefreiheit"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amateurfunk"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Datenverwaltung"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editoren"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Bildung"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatoren"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Dateiverwaltung"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafik"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobile Geräte"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Netzwerk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kommunikation"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Dateiübertragung"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Ãœberwachung"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Web-Surfen"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Web-Nachrichten"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Büro"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmierung"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projektverwaltung"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Wissenschaft"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomie"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologie"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chemie"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Datenanalyse"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronik"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Konstruktion"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geowissenschaften"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Mathematik"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medizin"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Physik"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sozialwissenschaften"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Audio"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "System"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administration"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Sprachumgebung"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Paketverwaltung"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sicherheit"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminalemulatoren"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Text"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Fernsehen und Radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Betrachter"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web-Entwicklung"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spiele"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Action"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Abenteuer"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Tetris-artig"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Brettspiele"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kartenspiele"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Rätsel"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulationen"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategie"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Werkzeuge"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Spielzeuge"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hilfe"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Bildschirm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Schonen"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Sperren"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Fenstermanager"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-Module"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Erscheinungsbild"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Arbeitsfläche"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-Komponenten"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddys"
diff --git a/po-sections/dz.po b/po-sections/dz.po
new file mode 100644
index 0000000..873b44c
--- /dev/null
+++ b/po-sections/dz.po
@@ -0,0 +1,477 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: sections.pot\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-12-11 17:46+0530\n"
+"Last-Translator: Jurmey Rabgay <jur_gay@yahoo.com>\n"
+"Language-Team: dzongkha <pgeyleg@dit.gov.bt>\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-Country: bhutan\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "གློག་རིམ་"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "འཛུལ་སྤྱོད་"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ཨེ་མེ་ཅུ་ཡེར་ རེ་ཌིའོ་"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "གནད་སྡུད་འཛིན་སà¾à¾±à½¼à½„་"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "ཞུན་དགཔ་ཚུà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "ཤེས་རིག"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ནུས་འཕྲུལ་ཚུà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ཡིག་སྣོད་འཛིན་སà¾à¾±à½¼à½„་"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "ཚད་རིས་ཚུà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "འགྲུལ་འཕྲིན་à½à½–ས་འཕྲུལ་"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "ཡོངས་འབྲེལ་"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "བརྒྱུད་འབྲེལ་"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ཡིག་སྣོད་གནས་སོར་"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "ལྟ་རྟོག་འབད་ནི་"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "à½à½ºà½–་བརྡ་འཚོལ་"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "à½à½ºà½–་གནས་ཚུལ་"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ཡིག་ཚང་"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "ལས་རིམ་བཟོ་བà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "ལས་འགུལ་འཛིན་སà¾à¾±à½¼à½„་"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "ཚན་རིག"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "གནམ་རིག་"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "སà¾à¾±à½ºà¼‹à½£à¾¡à½“་རིག་པ་"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "རྫས་སྦྱོར་རིག་པ་"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "གནད་སྡུད་དཔྱད་ཞིབ་"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "གློག་ཆས་"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "བཟོ་ལས་"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "ཚན་རིག་པ་"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "ཨང་རྩིས་རིག་པ་"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "སྨན་"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "གསོ་རིག་"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "མི་སྡེའི་"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ཤལསིà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "སྒྲ་སà¾à½‘à¼"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "རིམ་ལུགསà¼"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "བདག་སà¾à¾±à½¼à½„་"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "སྲ་ཆས་"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "སà¾à½‘་ཡིག་གནས་སྟངས་"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "à½à½´à½˜à¼‹à½¦à¾’ྲིལ་འཛིན་སà¾à¾±à½¼à½„་"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "སྲུང་སà¾à¾±à½¼à½–་"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ཊར་མི་ནཱལ་ ནུས་འཕྲུལ་"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ཚིག་ཡིག"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ཊི་བི་དང་རེ་ཌིའོ་"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "མà½à½¼à½„་བྱེདà¼"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "à½à½²à¼‹à½Œà½²à½ à½¼à¼‹"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "à½à½ºà½–་གོང་འཕེལ་"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "རྩེདམོà¼"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "བྱ་བ་"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "དཀའ་ཉེན་ཅན་གྱི་བྱ་བà¼"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "སྡེབ་ཚན་"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "རྩེད་པང་à¼"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "à½à¼‹à½¦à½ºà¼"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "སྒྲིག་རྩེད་ཚུà¼"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "གཡོ་རྫུསà¼"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "à½à½–ས་འཇུསà¼"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ལག་ཆས་ཚུà¼"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "བྱིས་པའི་རྩེདམོà¼"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "གྲོགས་རམà¼"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "གསལ་གཞིà¼"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "སྲུང་ནི་"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "བསྡམ་བཞག་ནི་"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "སྒོ་སྒྲིག་འཛིན་སà¾à¾±à½¼à½„་པ་"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "ཨེཕ་བི་ཌབ་ལུ་ཨེམ་ ཚད་གཞི་"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "སྒོ་སྒྲིག་བཟོ་མི་"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "འབྱུང་སྣང་à¼"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ལཱ་གི་ས་སྒོ"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "ཨའི་སིཔ་ ཆ་ཤས་"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ཊེ་ཌིསིà¼"
+
+#~ msgid "Apps"
+#~ msgstr "གློག་རིམ་ཚུà¼"
+
+#~ msgid "Hamradio"
+#~ msgstr "ཧམ་རེ་ཌིའོà¼"
+
+#~ msgid "Math"
+#~ msgstr "ཨང་རྩིསà¼"
+
+#~ msgid "Technical"
+#~ msgstr "à½à½–ས་རིག"
+
+#~ msgid "Arcade"
+#~ msgstr "ཨར་ཀེཌིà¼"
+
+#~ msgid "Sports"
+#~ msgstr "རྩེད་རིགས་ཚུà¼"
+
+#~ msgid "Tetris-like"
+#~ msgstr "ཊེ་ཊིསི་བཟུམ་སྦེà¼"
+
+#~ msgid "Root-window"
+#~ msgstr "རྩ་བའི་སྒོ་སྒྲིག"
+
+#~ msgid "XShells"
+#~ msgstr "ཨེགསི་ཤལསིà¼"
+
+#~ msgid "Admin"
+#~ msgstr "བདག་སà¾à¾±à½¼à½„་à¼"
diff --git a/po-sections/el.po b/po-sections/el.po
new file mode 100644
index 0000000..01dca9a
--- /dev/null
+++ b/po-sections/el.po
@@ -0,0 +1,450 @@
+# translation of menu_po-sections_el.po to
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Konstantinos Margaritis <markos@debian.org>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_el\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-08-24 17:35+0300\n"
+"Last-Translator: \n"
+"Language-Team: <en@li.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "ΕφαÏμογές"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "ΠÏοσβασιμότητα"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ΕÏασιτεχνικό Ράδιο"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ΔιαχείÏιση Δεδομένων"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "ΚειμενογÏάφοι"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Εκπαιδευτικά"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ΠÏοσομοιωτές"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ΔιαχείÏιση ΑÏχείων"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "ΓÏαφικά"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Κινητές Συσκευές"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Δίκτυο"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Επικοινωνία"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ΜεταφοÏά ΑÏχείων"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "ΠαÏακολοÏθηση"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ΠεÏιήγηση ΙστοÏ"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Îέα ΙστοÏ"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ΓÏαφείο"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "ΠÏογÏαμματισμός"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "ΔιαχείÏιση Σχεδίων"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Επιστημονικά"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ΑστÏονομία"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Βιλογία"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Χημεία"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ανάλυση Δεδομένων"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "ΗλεκτÏονικά"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Μηχανική"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Γεωεπιστήμες"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Μαθηματικά"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "ΙατÏική"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Φυσική"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Κοινωνικά"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ΚελÏφη"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Ήχος"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "ΣÏστημα"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ΔιαχείÏιση"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Υλικό"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "ΠεÏιβάλλον Γλώσσας"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "ΔιαχείÏιση Πακέτων"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Ασφάλεια"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ΠÏοσομοιωτές ΤεÏματικών"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Κείμενο"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV και Ράδιο"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ΠÏοβολείς"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Βίντεο"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Ανάπτυξη ΙστοÏ"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Παιχνίδια"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "ΔÏάση"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ΠεÏιπέτεια"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blocks"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ΕπιτÏαπέζια"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ΧαÏτιά"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Πάζλ"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Εξομοιωτές"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "ΣτÏατηγικής"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ΕÏγαλεία"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Ψυχαγωγικά"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Βοήθεια"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Οθόνη"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Αποθήκευση"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Κλείδωμα"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "ΔιαχειÏιστές ΠαÏαθÏÏων"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "ΑÏθÏώματα FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Εμφάνισης"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Επιφάνεια ΕÏγασίας"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Συνιστώσες Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ΑÏκουδάκια"
diff --git a/po-sections/eo.po b/po-sections/eo.po
new file mode 100644
index 0000000..bce06f9
--- /dev/null
+++ b/po-sections/eo.po
@@ -0,0 +1,446 @@
+# Menu section translation
+# Joost Witteveen <joostje@debian.org>, 2000-2003.
+# MJ Ray <mjr@debian.org>, 2005.
+# Felipe Castro <fefcas@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-06-28 17:54-0300\n"
+"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
+"Language-Team: <debian-l10n-esperanto@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikaĵoj"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Alirebleco"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Diletanta Radio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Datumar-administrado"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Redaktado"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Edukado"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Åœajnigiloj"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Dosier-administrado"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikado"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Moveblaj Aparatoj"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Reto"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikado"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Dosier-transÅuto"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Kontrolado"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Ret-foliumado"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Ret-novaĵoj"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Oficejo"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programado"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projekt-administrado"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Scienco"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomio"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologio"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kemio"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Datumar-analizo"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektroniko"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "InÄenierado"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Tero-scienco"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematiko"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicino"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fiziko"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Soci-scienco"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Åœeloj"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Soniloj"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistemo"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrado"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Aparataro"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Lingva Medio"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pak-administrado"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sekureco"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminaloj (Åajnigiloj)"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Teksto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV kaj Radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Montriloj"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Interreto (programado)"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Ludoj"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Tuj-agado"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventuro"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokoj"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tabulo"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Ludkartoj"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Enigmoj"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulado"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategio"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Iloj"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Ludiloj"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Helpo"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekrano"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Åœparado"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Ekran-Ålosado"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Fenestro-regiloj"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-moduloj"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aspekto"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "LaborSpaco"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Mozilo (Iceape)"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Ursetoj"
diff --git a/po-sections/es.po b/po-sections/es.po
new file mode 100644
index 0000000..aad0e7e
--- /dev/null
+++ b/po-sections/es.po
@@ -0,0 +1,485 @@
+# Menu section translation
+# Copyright (C) Software in the Public Interest, 2004
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+# Translators:
+# - Initial translation:
+# Javier Fernandez-Sanguino <jfs@debian.org>, march 2004
+# - Updated by:
+# Javier Fernandez-Sanguino <jfs@debian.org>, 2007
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-12-24 18:52+0100\n"
+"Last-Translator: Javier Fernandez-Sanguino <jfs@debian.org>\n"
+"Language-Team: Debian Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-POFile-SpellExtra: Iceape TV Ositos Window Bloqueapantallas FVWM Maker\n"
+"X-POFile-SpellExtra: Salvapantallas Puzles\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicaciones"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accesibilidad"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioaficionados"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gestión de datos"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editores"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educación"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladores"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gestión de archivos"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Gráficos"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositivos móviles"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Red"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicación"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transferencias de archivos"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorización"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navegación web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Noticias web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Ofimática"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programación"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gestión de proyectos"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciencia"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomía"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biología"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Análisis de datos"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Electrónica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ingeniería"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geología"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemáticas"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Ciencias sociales"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Consolas"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Sonido"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administración"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Entorno de idioma"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gestión de paquetes"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Seguridad"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladores de terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Texto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV y radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visores"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vídeo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desarrollo web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Juegos"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Acción"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Bloques"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tablero"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartas"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzles"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulación"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estrategia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Herramientas"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Juguetes"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ayuda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pantalla"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Salvapantallas"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Bloqueapantallas"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gestores de ventanas"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Módulos de FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Apariencia"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espacio de trabajo"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componentes de Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Ositos"
+
+#~ msgid "Apps"
+#~ msgstr "Aplicaciones"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radio-aficionados"
+
+#~ msgid "Math"
+#~ msgstr "Matemáticas"
+
+#~ msgid "Technical"
+#~ msgstr "Técnica"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Deportes"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tipo Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Ventana raíz"
+
+#~ msgid "XShells"
+#~ msgstr "Consolas X"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Administración"
diff --git a/po-sections/et.po b/po-sections/et.po
new file mode 100644
index 0000000..94b4607
--- /dev/null
+++ b/po-sections/et.po
@@ -0,0 +1,445 @@
+# Estonian translation of Debian menu.
+# Copyright (C) 2008 THE Debian COPYRIGHT HOLDER
+# This file is distributed under the same license as the Debian menu package.
+# mihkel <turakas gmail com>, 2010
+msgid ""
+msgstr ""
+"Project-Id-Version: Debian menu 2.1.43\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2010-05-19 14:53+0300\n"
+"Last-Translator: mihkel <turakas@gmail.com>\n"
+"Language-Team: et <et@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Emacs\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Rakendused"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Hõlbustused"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatöör-raadio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Andmete haldamine"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Redaktorid"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Haridus"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulaatorid"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Failihaldus"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Graafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobiilsed seadmed"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Võrk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Suhtlus"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Failiülekanne"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitooring"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Veebi lehitsemine"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Veebi uudised"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kontor"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmeerimine"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projektide haldamine"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Teadus"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronoomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Bioloogia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Keemia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Andmete analüüs"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektroonika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Tehnika"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geoteadus"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemaatika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Meditsiin"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Füüsika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sotsiaal"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Kestad"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Heli"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Süsteem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Haldamine"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Riistvara"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Keele keskkond"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakkide haldamine"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Turvalisus"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Ternimali emulaatorid"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV ja raadio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Vaatajad"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Veebiarendus"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Mängud"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Tegevus"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Seiklus"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokid"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Lauamängud"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kaardimängud"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Pusled"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulatsioon"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strateegia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Töövahendid"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Lelud"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Abi"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekraan"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Salvestamine"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Lukustamine"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Aknahaldurid"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM moodulid"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Välimus"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Tööala"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape komponendid"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Kaisukarud"
diff --git a/po-sections/eu.po b/po-sections/eu.po
new file mode 100644
index 0000000..5f8242c
--- /dev/null
+++ b/po-sections/eu.po
@@ -0,0 +1,448 @@
+# translation of eu.po to Euskara
+# translation of menu to Euskara
+# Debian menu system
+# Copyright (C) 2006 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2006.
+# Piarres Beobide <pi@beobide.net>, 2007, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: eu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-02-29 23:38+0100\n"
+"Last-Translator: Piarres Beobide <pi@beobide.net>\n"
+"Language-Team: Euskara <Librezale@librezale.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikazioak"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Erabilerraztasuna"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Irrati-amateurra"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Datu Kudeaketa"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editoreak"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Hezkuntza"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatzaileak"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Fitxategi kudeaketa"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikoak"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Gailu Mugikorrak"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Sarea"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikazioa"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Fitxategi-transferentzia"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Kontrolatzen"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Web Nabigatzea"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Web Berriak"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Bulegoa"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programazioa"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Proiektu zuzendaritza"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Zientzia"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kimika"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Datu analisia"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ingeniaritza"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geozientzia"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medizina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fisika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Soziala"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shell-ak"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Soinua"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrazioa"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardwarea"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Hizkuntz ingurunea"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakete kudeaketa"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Segurtasuna"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminal emulatzaileak"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Testua"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV eta irratia"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Ikustaileak"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Bideoa"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web garapena"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jokoak"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Ekintza"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Abentura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokeak"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Mahaigainekoak"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Txartela"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzleak"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulazioa"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estrategia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Tresnak"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Jostagarriak"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Laguntza"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pantaila"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Gordetzen"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Blokeatu"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Leiho kudeatzaileak"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM Moduluak"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Itxura"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Laneko area"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape Osagaiak"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Panpinak"
diff --git a/po-sections/fi.po b/po-sections/fi.po
new file mode 100644
index 0000000..9394631
--- /dev/null
+++ b/po-sections/fi.po
@@ -0,0 +1,479 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Tommi Vainikainen, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-04 15:03+0300\n"
+"Last-Translator: Tommi Vainikainen <thv+debian@iki.fi>\n"
+"Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Sovellukset"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Esteettömyys"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatööriradio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Tiedonhallinta"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editorit"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Koulutus"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulaattorit"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Tiedostonhallinta"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafiikka"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobiililaitteet"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Verkko"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Tietoliikenne"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Tiedostonsiirto"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Seuranta"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "WWW-selailu"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "WWW-uutiset"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Toimisto"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Ohjelmointi"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projektinhallinta"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Tiede"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kemia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Tietoanalyysi"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektroniikka"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Suunnittelu"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Maantiede"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematiikka"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Lääketiede"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fysiikka"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sosiaalitieteet"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Kuoret"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Ääni"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Järjestelmä"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Hallinta"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Laitteisto"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Kieliympäristö"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Paketinhallinta"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Tietoturva"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Pääte-emulaattorit"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Teksti"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV ja radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Katselimet"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "WWW-kehitys"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Pelit"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Toiminta"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Seikkailu"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Palikat"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Lauta"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kortti"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Ongelma"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulaatio"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Työkalut"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Lelut"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ohje"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Näyttö"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Säästö"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Lukitseminen"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Ikkunointiohjelmat"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-moduulit"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Ulkoasu"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Työtila"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-komponentit"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Nallekarhut"
+
+#~ msgid "Apps"
+#~ msgstr "Sovellukset"
+
+#~ msgid "Hamradio"
+#~ msgstr "Amatööriradio"
+
+#~ msgid "Math"
+#~ msgstr "Matematiikka"
+
+#~ msgid "Technical"
+#~ msgstr "Tekninen"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Urheilu"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-tyyliset"
+
+#~ msgid "Root-window"
+#~ msgstr "Juuri-ikkuna"
+
+#~ msgid "XShells"
+#~ msgstr "XKuoret"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Järjhal"
diff --git a/po-sections/fr.po b/po-sections/fr.po
new file mode 100644
index 0000000..a37ce79
--- /dev/null
+++ b/po-sections/fr.po
@@ -0,0 +1,489 @@
+# Menu section translation
+# Copyright (C) 2003,2007
+# This file is distributed under the same license as the menu package.
+# French translation :
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Jean-Philippe Guérard <jean-philippe.guerard@tigreraye.org>, 2003,2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.7-2\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-07 14:01+0200\n"
+"Last-Translator: Jean-Philippe Guérard <jean-philippe.guerard@tigreraye."
+"org>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Applications"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accessibilité"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio amateur"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gestion de données"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Éditeurs"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Éducatif"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Émulateurs"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gestion de fichiers"
+
+#
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Dessin et image"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Matériel nomade"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Réseau"
+
+#
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Communication"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transfert de fichiers"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Surveillance"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navigateurs web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Flux d'informations"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Bureautique"
+
+#
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmation"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gestion de projets"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Sciences"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomie"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologie"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chimie"
+
+#
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analyse de données"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Électronique"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ingénierie"
+
+#
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Sciences de la terre"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Mathématiques"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Médecine"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Physique"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sciences sociales"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Interpréteurs de commandes"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Son et musique"
+
+#
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Système"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administration"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Matériel"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Paramétrage de la langue"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gestionnaires de paquets"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sécurité"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Émulateurs de terminaux"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Langue écrite"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Télévision et radio"
+
+#
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Lecteurs"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vidéo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Développement web"
+
+#
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jeux"
+
+#
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Action"
+
+#
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventures"
+
+#
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Chute de blocs"
+
+#
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Réflexion"
+
+#
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartes"
+
+#
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Casse-tête"
+
+#
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulation"
+
+#
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Stratégie"
+
+#
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Outils"
+
+#
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Jouets"
+
+#
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Aide"
+
+#
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Écran"
+
+#
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Veille"
+
+#
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Verrouillage"
+
+#
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gestionnaires de fenêtres"
+
+#
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modules FVWM"
+
+#
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Apparence"
+
+#
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espace de travail"
+
+#
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Composants Iceape"
+
+#
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Peluches"
diff --git a/po-sections/ga.po b/po-sections/ga.po
new file mode 100644
index 0000000..235ee57
--- /dev/null
+++ b/po-sections/ga.po
@@ -0,0 +1,444 @@
+# Menu section translation
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.35\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-11 15:27+0100\n"
+"Last-Translator: Kevin Scannell <kscanne@gmail.com>\n"
+"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Feidhmchláir"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Inrochtaineacht"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Raidió Amaitéarach"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Bainisteoireacht Sonraí"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Eagarthóirí"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Oideachas"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Aithriseoirí"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Bainisteoireacht Comhad"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafaic"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Gléasanna Móibíleacha"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Líonra"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Cumarsáid"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Aistriú Comhad"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monatóireacht"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Brabhsáil an Ghréasáin"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Nuacht Ghréasáin"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Oifig"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Ríomhchlárú"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Bainisteoireacht Tionscadal"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Eolaíocht"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Réalteolaíocht"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Bitheolaíocht"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Ceimic"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Anailís ar Shonraí"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Leictreonaic"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Innealtóireacht"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geolaíocht"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matamaitic"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Leigheas"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fisic"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sóisialta"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Blaoscanna"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Fuaim"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Córas"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Riarachán"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Crua-Earraí"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Timpeallacht Teanga"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Bainisteoireacht Pacáistí"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Slándáil"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Aithriseoirí Teirminéil"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Téacs"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Teilifís agus Raidió"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Amharcáin"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Fís"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Forbairt Ghréasáin"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Cluichí"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Aicsean"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Eachtraíocht"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Bloic"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Clár"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cárta"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzail"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Insamhladh"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Straitéis"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Uirlisí"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Bréagáin"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Cabhair"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Scáileán"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Sábháil"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Glasáil"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Bainisteoirí Fuinneog"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modúil FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Déantóir Fuinneog"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Cuma"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Spás Oibre"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Comhpháirteanna Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Béiríní"
diff --git a/po-sections/gl.po b/po-sections/gl.po
new file mode 100644
index 0000000..0efbe58
--- /dev/null
+++ b/po-sections/gl.po
@@ -0,0 +1,474 @@
+# Menu section translation (Galician)
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Jacobo Tarrio <jtarrio@debian.org>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-14 14:03+0100\n"
+"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
+"Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicacións"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accesibilidade"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio afección"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Xestión de datos"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editores"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educativos"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladores"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Xestión de ficheiros"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Gráficos"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositivos móbiles"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Redes"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicacións"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transferencia de ficheiros"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorización"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navegación web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Novas na web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Oficina"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programación"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Xestión de proxectos"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciencias"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomía"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Bioloxía"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Análise de datos"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Electrónica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Enxeñería"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Xeociencias"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemáticas"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Ciencias sociais"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Intérpretes de ordes"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Son"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administración"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Ambiente de idioma"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Xestión de paquetes"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Seguridade"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladores de terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Texto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV e radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visores"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vídeo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desenvolvemento web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Xogos"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Acción"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventuras"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Bloques"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Taboleiro"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartas"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Lóxica"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulación"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estratexia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ferramentas"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Xoguetes"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Axuda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pantalla"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Salvapantallas"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Bloquear"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Xestores de fiestras"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Módulos de FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aparencia"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espazo de traballo"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Compoñentes de Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Osiños"
+
+#~ msgid "Apps"
+#~ msgstr "Aplicacións"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radio-afección"
+
+#~ msgid "Math"
+#~ msgstr "Matemáticas"
+
+#~ msgid "Technical"
+#~ msgstr "Técnico"
+
+#~ msgid "Arcade"
+#~ msgstr "Acción"
+
+#~ msgid "Sports"
+#~ msgstr "Deportes"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tipo Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Fiestra raíz"
+
+#~ msgid "XShells"
+#~ msgstr "Terminais gráficos"
+
+#~ msgid "Admin"
+#~ msgstr "Administración"
diff --git a/po-sections/gu.po b/po-sections/gu.po
new file mode 100644
index 0000000..9b0bb94
--- /dev/null
+++ b/po-sections/gu.po
@@ -0,0 +1,475 @@
+# Gujarati translation of Menu section
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+# Kartik Mistry <kartik.mistry@gmail.com>, 2006, 2007
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-10-14 20:27+0530\n"
+"Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
+"Language-Team: Gujarati <team@utkarsh.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "કારà«àª¯àª•à«àª°àª®à«‹"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "સà«àª²àª­àª¤àª¾"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "àªàª®à«‡àªšà«àª¯à«‹àª° રેડિઓ"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "માહિતી સંચાલન"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "સંપાદકો"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "શિકà«àª·àª£"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ઇમà«àª¯à«àª²à«‡àªŸàª°à«àª¸"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ફાઇલ સંચાલન"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "ગà«àª°àª¾àª«àª¿àª•à«àª¸"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "મોબાઇલ સાધનો"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "નેટવરà«àª•"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "સંદેશાવà«àª¯àªµàª¹àª¾àª°"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ફાઇલ ટà«àª°àª¾àª¨à«àª¸àª«àª°"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "નિયમન"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "વેબ બà«àª°àª¾àª‰àªàª¿àª‚ગ"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "વેબ સમાચાર"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ઓફિસ"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "પà«àª°à«‹àª—à«àª°àª¾àª®àª¿àª‚ગ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "પà«àª°à«‹àªœà«‡àª•à«àªŸ મેનેજમેનà«àªŸ"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "વિજà«àªžàª¾àª¨"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ખગોળશાસà«àª¤à«àª°"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "જીવવિજà«àªžàª¾àª¨"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "રસાયણશાસà«àª¤à«àª°"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "માહિતી પૃથà«àª¥àª•àª°àª£"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "વિજાણà«àª¶àª¾àª¸à«àª¤à«àª°"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "àªàª¨à«àªœàª¿àª¨àª¿àª°à«€àª‚ગ"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "જીઓવિજà«àªžàª¾àª¨"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "ગણિતશાસà«àª¤à«àª°"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "મેડિસિન"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "ભૌતિકશાસà«àª¤à«àª°"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "સમાજ"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "શેલà«àª¸"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ધà«àªµàª¨àª¿"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "સિસà«àªŸàª®"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "સંચાલન"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "હારà«àª¡àªµà«‡àª°"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "ભાષા વાતાવરણ"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "પેકેજ સંચાલન"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "સà«àª°àª•à«àª·àª¾"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ટરà«àª®àª¿àª¨àª² ઇમà«àª¯à«àª²à«‡àªŸàª°à«àª¸"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "લખાણ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ટીવી અને રેડિઓ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "દરà«àª¶àª•à«‹"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "વિડીઓ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "વેબ ડેવલોપમેનà«àªŸ"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "રમતો"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "કà«àª°àª¿àª¯àª¾"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "સાહસ"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "ચોકઠાંઓ"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "બોરà«àª¡"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "કારà«àª¡"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "કોયડાઓ"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "સિમà«àª¯à«àª²à«‡àª¶àª¨"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "રણનીતિ"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "સાધનો"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "રમકડાંઓ"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "મદદ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "છબી"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "સંગà«àª°àª¹àª•"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "તાળà«àª‚"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "વિનà«àª¡à«‹ સંચાલકો"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM મોડà«àª¯à«àª²à«‹"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "વિનà«àª¡à«‹ મેકર"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "દેખાવ"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "વરà«àª•àª¸à«àªªà«‡àª¸"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "આઇસàªàªª ભાગો"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ટેડી"
+
+#~ msgid "Apps"
+#~ msgstr "કારà«àª¯àª•à«àª°àª®à«‹"
+
+#~ msgid "Hamradio"
+#~ msgstr "હેમરેડિઓ"
+
+#~ msgid "Math"
+#~ msgstr "ગણિત"
+
+#~ msgid "Technical"
+#~ msgstr "તકનીકી"
+
+#~ msgid "Arcade"
+#~ msgstr "અરà«àª•àª¾àª¡à«‡"
+
+#~ msgid "Sports"
+#~ msgstr "રમતો"
+
+#~ msgid "Tetris-like"
+#~ msgstr "ટેટà«àª°àª¿àª¸-જેવાં"
+
+#~ msgid "Root-window"
+#~ msgstr "મà«àª–à«àª¯-વિનà«àª¡à«‹"
+
+#~ msgid "XShells"
+#~ msgstr "àªàª•à«àª¸àª¶à«‡àª²à«àª¸"
+
+#~ msgid "Admin"
+#~ msgstr "સંચાલક"
diff --git a/po-sections/he.po b/po-sections/he.po
new file mode 100644
index 0000000..253b9c8
--- /dev/null
+++ b/po-sections/he.po
@@ -0,0 +1,452 @@
+# translation of menu_po-sections_he.po to Hebrew
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Meital Bourvine <meitalbourvine@gmail.com>, 2007.
+# Lior Kaplan <kaplan@debian.org>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_he\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-27 11:52+0200\n"
+"Last-Translator: Lior Kaplan <kaplan@debian.org>\n"
+"Language-Team: Hebrew <debian-hebrew-common@lists.alioth.debian.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "יישומי×"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "נגישות"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "רדיו חובבני"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ניהול מידע"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "עורכי×"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "חינוך"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "×מולציה"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ניהול קבצי×"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "גרפיקה"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "×ž×›×©×™×¨×™× × ×™×™×“×™×"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "רשת"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "תקשורת"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "העברת קבצי×"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "ניטור"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "דפדפני רשת"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "חדשות רשת"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "משרד"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "תכנות"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "ניהול פרוייקטי×"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "מדע"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "×סטרונומיה"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "ביולוגיה"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "כימיה"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "ניתוח מידע"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "×לקטרוניקה"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "הנדסה"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "מדעי כדור-×”×רץ"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "מתמטיקה"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "רפו××”"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "פיזיקה"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "חברה"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "מעטפות"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "קול"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "מערכת"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ניהול"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "חומרה"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "סביבת שפה"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "ניהול חבילות"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "×בטחה"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "דמויי מסוף"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "טקסט"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "טלויזיה ורדיו"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "כלי צפייה"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ויד×ו"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "פיתוח ×תרי×"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "משחקי×"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "פעולה"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "הרפתקה"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "בלוקי×"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "לוח"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "קלפי×"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "פ×זלי×"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "סימולציה"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "×סטרטגיה"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "כלי×"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "צעצועי×"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "עזרה"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "מסך"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "שמירה"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "נעילה"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "מנהלי חלונות"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "מודולי FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "יצירת חלונות"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "מר××”"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "סביבת עבודה"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "רכיבי Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "דובוני×"
diff --git a/po-sections/hi.po b/po-sections/hi.po
new file mode 100644
index 0000000..c064663
--- /dev/null
+++ b/po-sections/hi.po
@@ -0,0 +1,485 @@
+# translation of menu_po-sections.hi.po to Hindi
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# G Karunakar <karunakar@freedomink.org>, 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections.hi\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-11-09 12:29+0530\n"
+"Last-Translator: G Karunakar <karunakar@freedomink.org>\n"
+"Language-Team: Hindi <indlinux-hindi@lists.sourceforge.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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "संपादक"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "शिकà¥à¤·à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "गà¥à¤°à¤¾à¤«à¤¿à¤•à¥à¤¸ "
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "नेट"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "शिकà¥à¤·à¤¾"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "पà¥à¤°à¥‹à¤—à¥à¤°à¤¾à¤®à¤¿à¤‚ग"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "डॉटाबेस"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "शैल"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "धà¥à¤µà¤¨à¤¿"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "तंतà¥à¤° "
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "पाठ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "पà¥à¤°à¤¦à¤°à¥à¤¶à¤•"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "खेल"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "शिकà¥à¤·à¤¾"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "तालाबंद"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "बोरà¥à¤¡"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "कारà¥à¤¡"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "पहेलियाà¤"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "रणनीति"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "औज़ार"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "खिलौने"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "मदद"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "सà¥à¤•à¥à¤°à¥€à¤¨"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "सहेजें"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "तालाबंद"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "विंडो पà¥à¤°à¤¬à¤‚धक"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "मॉडà¥à¤¯à¥‚लà¥à¤¸"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "विंडो पà¥à¤°à¤¬à¤‚धक"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "रूप"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "कारà¥à¤¯à¤•à¥à¤·à¥‡à¤¤à¥à¤°"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "मोज़िला घटक"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "टेडà¥à¤¡à¥€à¤¸"
+
+#~ msgid "Apps"
+#~ msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—"
+
+#~ msgid "Hamradio"
+#~ msgstr "हेमरेडियो"
+
+#~ msgid "Math"
+#~ msgstr "गणित"
+
+#~ msgid "Technical"
+#~ msgstr "तकनीकी"
+
+#~ msgid "Sports"
+#~ msgstr "खेलकूद"
+
+#~ msgid "Tetris-like"
+#~ msgstr "टेटà¥à¤°à¤¿à¤¸ जैसे"
+
+#~ msgid "Root-window"
+#~ msgstr "रूट विंडो"
+
+#~ msgid "XShells"
+#~ msgstr "à¤à¤•à¥à¤¸à¤¶à¥ˆà¤²"
+
+#~ msgid "Admin"
+#~ msgstr "पà¥à¤°à¤¶à¤¾à¤¸à¤•"
diff --git a/po-sections/hr.po b/po-sections/hr.po
new file mode 100644
index 0000000..bb54f4a
--- /dev/null
+++ b/po-sections/hr.po
@@ -0,0 +1,443 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-09-06 19:30+0200\n"
+"Last-Translator: Josip Rodin <joy+ditrans@linux.hr>\n"
+"Language-Team: Croatian <lokalizacija@linux.hr>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Programi"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Pristupaènost"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioamaterstvo"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Rukovanje podacima"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Ureðivaèi"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Obrazovanje"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Opona¹atelji"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Upravljanje datotekama"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobilni ureðaji"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Mre¾a"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikacije"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Prijenos datoteka"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Nadzor"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Pregledavanje weba"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Vijesti na webu"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Ured"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programiranje"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Upravljanje projektima"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Znanost"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomija"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologija"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kemija"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Obrada podataka"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "In¾enjerstvo"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Znanosti o zemlji i okoli¹u"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Dru¹tvene znanosti"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "©koljke"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Zvuk"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sustav"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administracija"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Sklopovlje"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Jezièno okru¾enje"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Upravljanje paketima"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sigurnost"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminal-emulatori"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV i radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Poglednici"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web razvoj"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Igre"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Akcija"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Avanture"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokovi"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Na ploèi"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Karte"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Zagonetke"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulacije"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategije"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Alati"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Igraèke"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Pomoæ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Zaslon"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Èuvanje"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Zakljuèavanje"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Upravljaèi prozorima"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM Moduli"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Izgled"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Radni prostor"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Dijelovi Iceapea"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Medvjediæi"
diff --git a/po-sections/hu.po b/po-sections/hu.po
new file mode 100644
index 0000000..f471ce6
--- /dev/null
+++ b/po-sections/hu.po
@@ -0,0 +1,477 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-04 14:14+0100\n"
+"Last-Translator: SZERVÃC Attila <sas@321.hu>\n"
+"Language-Team: Magyar Debian Nyelvi Csoport <debian-l10n-hungarian@lists."
+"debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Hungarian\n"
+"X-Poedit-Country: HUNGARY\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Alkalmazások"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Hozzáférés"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatőr rádió"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Adatkezelés"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Szerkesztők"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Oktatás"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulátorok"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Fájlkezelés"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobil eszközök"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Hálózat"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kommunikáció"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Fájlátvitel"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorozás"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Webböngészés"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Web hírek"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Iroda"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programozás"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projekt-kezelés"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Tudomány"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Csillagászat"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biológia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kémia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Adatelemzés"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Mérnöki eszközök"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Földrajz"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Metamatika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Orvoslás"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Társadalom"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Héjak"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Hang"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Rendszer"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Adminisztráció"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardver"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Nyelvi környezet"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Csomagkezelés"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Biztonság"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminál emulátorok"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Szövegkezelők"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV és rádió"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Nézegetők"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Mozgókép"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web fejlesztés"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Játékok"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Akció"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Kaland"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokk-játékok"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tábla"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kártya"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Fejtörők"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Szimulátorok"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Stratégia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Eszközök"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Apróságok"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Súgó"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Képernyő"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Védelem"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Zárolás"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Ablakkezelők"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM Modulok"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Megjelenés"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Munkaterület"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Mozilla összetevők"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Macik"
+
+#~ msgid "Apps"
+#~ msgstr "Alkalmazások"
+
+#~ msgid "Hamradio"
+#~ msgstr "Amatőr rádió"
+
+#~ msgid "Math"
+#~ msgstr "Matematika"
+
+#~ msgid "Technical"
+#~ msgstr "Technika"
+
+#~ msgid "Arcade"
+#~ msgstr "Akció"
+
+#~ msgid "Sports"
+#~ msgstr "Sportok"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetrisz"
+
+#~ msgid "Root-window"
+#~ msgstr "FÅ‘ablak"
+
+#~ msgid "XShells"
+#~ msgstr "X-héjak"
diff --git a/po-sections/id.po b/po-sections/id.po
new file mode 100644
index 0000000..209ba65
--- /dev/null
+++ b/po-sections/id.po
@@ -0,0 +1,476 @@
+# Menu section translation to Bahasa Indonesia
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-03-08 15:54+0700\n"
+"Last-Translator: Arief S Fitrianto <arief@gurame.fisika.ui.ac.id>\n"
+"Language-Team: Debian Indonesian Team <debian-l10n-id@gurame.fisika.ui.ac."
+"id>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikasi"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Aksesibilitas"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio Amatir"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Manajemen Data"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editor"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Pendidikan"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulator"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Manajemen Berkas"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Pengolah Gambar"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Piranti Bergerak"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Jaringan"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikasi"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transfer Berkas"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Pemantauan"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Jelajah Situs"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Berita Internet"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Program Kantoran"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Pemrograman"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Manajemen Proyek"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "IPTEK"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologi"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kimia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analisa Data"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Teknik & Rekayasa"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geosains"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Kedokteran"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fisika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Ilmu Sosial"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shell"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Suara"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrasi Sistem"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Perangkat Keras"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Pengaturan Bahasa"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Manajemen Paket"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Keamanan Sistem"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulator Terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Teks"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Radio dan TV"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Penampil Dokumen"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Pengembangan Situs"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Permainan"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Pertarungan"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Petualangan"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Susun Balok"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Di Atas Papan"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kartu"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Teka-teki"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulasi"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Taktik dan Strategi"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Peralatan"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Mainan"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Panduan"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Pengunci Layar"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Simpan Layar"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Kunci Layar"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Pengolah Window"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modul FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Bentuk Tampilan"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Ruang Kerja"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Komponen Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Boneka"
+
+#~ msgid "Apps"
+#~ msgstr "Aplikasi"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radio Amatir"
+
+#~ msgid "Math"
+#~ msgstr "Matematika"
+
+#~ msgid "Technical"
+#~ msgstr "Hal Teknis"
+
+#~ msgid "Arcade"
+#~ msgstr "Pertempuran"
+
+#~ msgid "Sports"
+#~ msgstr "Olahraga"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Aneka Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Window Utama"
+
+#~ msgid "XShells"
+#~ msgstr "Shell X Window"
+
+#~ msgid "Admin"
+#~ msgstr "Administrasi Sistem"
diff --git a/po-sections/it.po b/po-sections/it.po
new file mode 100644
index 0000000..c99ba60
--- /dev/null
+++ b/po-sections/it.po
@@ -0,0 +1,476 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Milo Casagrande <milo@ubuntu.com>, 2008
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.7-2\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-06-16 19:26+0200\n"
+"Last-Translator: Milo Casagrande <milo@ubuntu.com>\n"
+"Language-Team: Italian <tp@list.linux.it>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Applicazioni"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accessibilità"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radioamatori"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gestione dati"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editor"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Apprendimento"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatori"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gestione file"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafica"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositivi mobili"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rete"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicazione"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Trasferimento file"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitoraggio"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navigazione web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Notizie dal web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Ufficio"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmazione"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gestione progetti"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Scienza"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chimica"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analisi dati"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elettronica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ingegneria"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geoscienza"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematica"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fisica"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sociale"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shell"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Audio"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Amministrazione"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Lingua"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gestione pacchetti"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sicurezza"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulatori di terminale"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Testo"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV e radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visualizzatori"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Sviluppo web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Giochi"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Azione"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Avventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "A blocchi"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Da tavolo"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Carte"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Rompicapi"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulazione"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Strumenti"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Giocattoli"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Aiuto"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Schermo"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Salva schermo"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Blocca schermo"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gestori finestre"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Moduli FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aspetto"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Area di lavoro"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componenti di Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Orsacchiotti"
+
+#~ msgid "Apps"
+#~ msgstr "Applicazioni"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radiantismo"
+
+#~ msgid "Math"
+#~ msgstr "Matematica"
+
+#~ msgid "Technical"
+#~ msgstr "Tecnici"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Sport"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris e affini"
+
+#~ msgid "Root-window"
+#~ msgstr "Sfondo"
+
+#~ msgid "XShells"
+#~ msgstr "Terminali per X"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Amministrazione"
diff --git a/po-sections/ja.po b/po-sections/ja.po
new file mode 100644
index 0000000..daaffdd
--- /dev/null
+++ b/po-sections/ja.po
@@ -0,0 +1,447 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-04-11 23:30+0900\n"
+"Last-Translator: Hideki Yamane (Debian-JP) <henrich@debian.or.jp>\n"
+"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "アプリケーション"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "アクセシビリティ"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "アマãƒãƒ¥ã‚¢ãƒ©ã‚¸ã‚ª"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "データ管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "エディタ"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "教育"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "エミュレータ"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ファイル管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "グラフィック"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "モãƒã‚¤ãƒ«æ©Ÿå™¨"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "コミュニケーション"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ファイル転é€"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "モニタリング"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ウェブブラウジング"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ウェブニュース"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "オフィス"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "プログラミング"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "プロジェクト管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "科学"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "天文学"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "生物学"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "化学"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "データ分æž"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "電気工学"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "エンジニアリング"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "地学"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "æ•°å­¦"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "医学"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "物ç†å­¦"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "社会学"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "シェル"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "サウンド"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "システム"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "システム管ç†"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "言語環境"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "パッケージ管ç†"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "セキュリティ"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ターミナルエミュレータ"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "テキスト"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV ラジオ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ビュワー"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ビデオ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web 開発"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "ゲーム"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "アクション"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "アドベンãƒãƒ£ãƒ¼"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "ブロック"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ボードゲーム"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "カードゲーム"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "パズル"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "シミュレーション"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "戦略ゲーム"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ツール"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "ãŠã‚‚ã¡ã‚ƒ"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "ヘルプ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "ç”»é¢"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "ブランク"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "ロック"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "ウィンドウマãƒãƒ¼ã‚¸ãƒ£"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM モジュール"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "外観"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ワークスペース"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape コンãƒãƒ¼ãƒãƒ³ãƒˆ"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "テディ"
diff --git a/po-sections/ka.po b/po-sections/ka.po
new file mode 100644
index 0000000..2ceaa78
--- /dev/null
+++ b/po-sections/ka.po
@@ -0,0 +1,445 @@
+# Menu section translation to Georgian
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Aiet Kolkhi <aietkolkhi@gmail.com>
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.35\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-09-10 01:21+0400\n"
+"Last-Translator: Aiet Kolkhi <aietkolkhi@gmail.com>\n"
+"Language-Team: Georgian <aietkolkhi@gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "პრáƒáƒ’რáƒáƒ›áƒ”ბი"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "გáƒáƒ›áƒáƒ áƒ¢áƒ˜áƒ•áƒ”ბáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "სáƒáƒ›áƒáƒ§áƒ•áƒáƒ áƒ£áƒšáƒ რáƒáƒ“იáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "მáƒáƒœáƒáƒªáƒ”მთრმáƒáƒ áƒ—ვáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "რედáƒáƒ¥áƒ¢áƒáƒ áƒ”ბი"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "გáƒáƒœáƒáƒ—ლებáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ემულáƒáƒ¢áƒáƒ áƒ”ბი"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ფáƒáƒ˜áƒšáƒ—რმáƒáƒ áƒ—ვáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "გრáƒáƒ¤áƒ˜áƒ™áƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "მáƒáƒ‘ილური მáƒáƒ¬áƒ§áƒáƒ‘ილáƒáƒ‘ები"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "ქსელი"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "კáƒáƒ›áƒ£áƒœáƒ˜áƒ™áƒáƒªáƒ˜áƒ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ფáƒáƒ˜áƒšáƒ˜áƒ¡ ტრáƒáƒœáƒ¡áƒ¤áƒ”რი"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "მáƒáƒœáƒ˜áƒ¢áƒáƒ áƒ˜áƒœáƒ’ი"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ინტერნეტი"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ინტერნეტ-სიáƒáƒ®áƒšáƒ”ები"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "áƒáƒ¤áƒ˜áƒ¡áƒ˜"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "პრáƒáƒ’რáƒáƒ›áƒ˜áƒ áƒ”ბáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "პრáƒáƒ”ქტთრმáƒáƒ áƒ—ვáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "მეცნიერებáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "áƒáƒ¡áƒ¢áƒ áƒáƒœáƒáƒ›áƒ˜áƒ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "ბიáƒáƒšáƒáƒ’იáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ქიმიáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "მáƒáƒœáƒáƒªáƒ”მთრáƒáƒœáƒáƒšáƒ˜áƒ–ი"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "ელექტრáƒáƒœáƒ˜áƒ™áƒ"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ინჟინირებáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "გეáƒáƒšáƒáƒ’იური მეცნიერებáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "მáƒáƒ—ემáƒáƒ¢áƒ˜áƒ™áƒ"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "მედიცინáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "ფიზიკáƒ"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "სáƒáƒªáƒ˜áƒáƒšáƒ£áƒ áƒ˜"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "გáƒáƒ áƒ¡áƒ”ბი (Shells)"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ხმáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "სისტემáƒ"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "áƒáƒ“მინისტრირებáƒ"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "áƒáƒžáƒáƒ áƒáƒ¢áƒ£áƒ áƒ"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "ენის გáƒáƒ áƒ”მáƒ"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "პáƒáƒ™áƒ”ტთრმáƒáƒ áƒ—ვáƒ"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "უსáƒáƒ¤áƒ áƒ—ხáƒáƒ”ბáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ტერმინáƒáƒšáƒ˜áƒ¡ ემულáƒáƒ¢áƒáƒ áƒ”ბი"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ტექსტი"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ტელე დრრáƒáƒ“იáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "მნáƒáƒ®áƒ•áƒ”ლები"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ვიდეáƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "ვებ-პრáƒáƒ’რáƒáƒ›áƒ˜áƒ áƒ”ბáƒ"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "თáƒáƒ›áƒáƒ¨áƒ”ბი"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "მძáƒáƒ¤áƒ áƒ¡áƒ˜áƒ£áƒŸáƒ”ტიáƒáƒœáƒ˜"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "სáƒáƒ—áƒáƒ•áƒ’áƒáƒ“áƒáƒ¡áƒáƒ•áƒšáƒ"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "ბლáƒáƒ™áƒ”ბი"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "დáƒáƒ¤áƒ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ბáƒáƒœáƒ¥áƒ"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "თáƒáƒ•áƒ¡áƒáƒ¢áƒ”ხები"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "სიმულáƒáƒªáƒ˜áƒ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "სტრáƒáƒ¢áƒ”გიული"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ხელსáƒáƒ¬áƒ§áƒáƒ”ბი"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "სáƒáƒ—áƒáƒ›áƒáƒ¨áƒáƒ”ბი"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "დáƒáƒ®áƒ›áƒáƒ áƒ”ბáƒ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "ეკრáƒáƒœáƒ˜"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "შენáƒáƒ®áƒ•áƒ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "ჩáƒáƒ™áƒ”ტვáƒ"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "გრáƒáƒ¤áƒ˜áƒ™áƒ£áƒšáƒ˜ გáƒáƒ áƒ¡áƒ”ბი"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM მáƒáƒ“ულები"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "იერსáƒáƒ®áƒ”"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "სáƒáƒ›áƒ£áƒ¨áƒáƒ გáƒáƒ áƒ”მáƒ"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape კáƒáƒ›áƒžáƒáƒœáƒ”ნტები"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "სáƒáƒ—áƒáƒ›áƒáƒ¨áƒáƒ”ბი"
diff --git a/po-sections/kk.po b/po-sections/kk.po
new file mode 100644
index 0000000..aa55af2
--- /dev/null
+++ b/po-sections/kk.po
@@ -0,0 +1,445 @@
+# Menu section translation
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Dauren Sarsenov <daur88@inbox.ru>, 2009
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.35\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2009-03-24 14:50+0600\n"
+"Last-Translator: Dauren Sarsenov <daur88@inbox.ru>\n"
+"Language-Team: Kazakh <kk_KZ@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Бағдарламалар"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Ðрнайы мүмкіндіктер"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ӘуеÑқойлық Радио"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Деректерді БаÑқару"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Редакторлар"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Оқу-білім"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ЭмулÑторлар"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Файлдарды БаÑқару"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графика"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Қалталық Құрылғылар"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Желі"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "БайланыÑу"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Файл ТаÑымалдау"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Бақылау Құралдары"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Веб Браузерлер"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Веб Жаңалықтар"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ОфиÑ"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Бағдарламалау"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Жобаларды БаÑқару"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ғылым"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтрономиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "БиологиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ХимиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Деректерді Талдау"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Электроника"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ИнженериÑ"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Геоғылымдар"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Математика"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медицина"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Физика"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Әлеуметтік Ғылымдар"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Қоршамдар"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ДыбыÑ"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Жүйе"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ÐдминиÑтратор"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Жабдық"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Тілдік Орта"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "ДеÑтелерді БаÑқару"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "ҚауіпÑіздік"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Терминал ЭмулÑторлары"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ТекÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ТВ және Радио"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Қараушылар"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Видео"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Веб Бағдарламалау"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Ойындар"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Экшн"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Рөлдік"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Блок"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Тақталық"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Карта"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Паззл"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "СимулÑтор"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "СтратегиÑлық"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Құралдар"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Ойыншықтар"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Көмек"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Экран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Сақтау"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Бекіту"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Терезелер Менеджері"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM модульдері"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "КөрініÑ"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "WorkSpace"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape ҚұрамаÑÑ‹"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Тедди"
diff --git a/po-sections/km.po b/po-sections/km.po
new file mode 100644
index 0000000..8936437
--- /dev/null
+++ b/po-sections/km.po
@@ -0,0 +1,491 @@
+# translation of menu_po-sections_km.po to Khmer
+# translation of menu_po-sections_km.po to
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Khoem Sokhem <khoemsokhem@khmeros.info>, 2006.
+# auk piseth <piseth_dv@khmeros.info>, 2006.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_km\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-06-12 15:21-0600\n"
+"Last-Translator: auk piseth <piseth_dv@khmeros.info>\n"
+"Language-Team: Khmer <support@khmeros.info>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "កម្មវិធី​និពន្ធ​"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "ការ​អប់​រំ​"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ážœážáŸ’ážáž»â€‹ážáŸ’រាប់​ážáž¶áž˜"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "ក្រាហ្វិក​"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "សំណាញ់"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "ការ​អប់​រំ​"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "សរសáŸážšâ€‹áž€áž˜áŸ’មវិធី​"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "វិទ្យាសាស្ážáŸ’រ​"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "មូលដ្ឋាន​ទិន្ននáŸáž™â€‹"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "វិទ្យាសាស្ážáŸ’រ​"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "សែល​"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "សម្លáŸáž„​"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "ប្រពáŸáž“្ធ​"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "ážœážáŸ’ážáž»â€‹ážáŸ’រាប់​ážáž¶áž˜"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "អážáŸ’ážáž”ទ​"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "អ្នក​​មើល​"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "ល្បែង​"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "ការ​អប់​រំ​"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ការផ្សងព្រáŸáž„​"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "ចាក់សោ"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ក្ážáž¶ážšâ€‹"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "កាážâ€‹"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ល្បែង​ដោះស្រាយ​"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "ការក្លែងធ្វើ​"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "យុទ្ធសាស្ážáŸ’រ​"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ឧបករណáŸâ€‹"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "គ្រឿងលáŸáž„​"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "ជំនួយ​"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "អáŸáž€áŸ’រង់​"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "រក្សាទុក​"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "ចាក់សោ"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "អ្នក​គ្រប់គ្រង​បង្អួច​"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "ម៉ូឌុល"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "អ្នក​គ្រប់គ្រង​បង្អួច​"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "រូបរាង​"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ážáŸ†áž”ន់​ធ្វើការ"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "សមាសភាគ Mozilla "
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddies"
+
+#~ msgid "Apps"
+#~ msgstr "Apps"
+
+#~ msgid "Hamradio"
+#~ msgstr "Hamradio"
+
+#~ msgid "Math"
+#~ msgstr "គណិážâ€‹"
+
+#~ msgid "Technical"
+#~ msgstr "បច្ចáŸáž€áž‘áŸážŸâ€‹"
+
+#~ msgid "Arcade"
+#~ msgstr "ល្បែងទូ​"
+
+#~ msgid "Sports"
+#~ msgstr "កីឡា"
+
+#~ msgid "Tetris-like"
+#~ msgstr "ដូច​ Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "បង្អួច​ Root"
+
+#~ msgid "XShells"
+#~ msgstr "សែល X"
+
+#~ msgid "Admin"
+#~ msgstr "Admin"
diff --git a/po-sections/ko.po b/po-sections/ko.po
new file mode 100644
index 0000000..7c6c219
--- /dev/null
+++ b/po-sections/ko.po
@@ -0,0 +1,476 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Sunjae Park <darehanl@gmail.com>, 2006 - 2007.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-10-25 11:04-0400\n"
+"Last-Translator: Sunjae Park <darehanl@gmail.com>\n"
+"Language-Team: Korean <debian-l10n-korean@lists.debian.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "ì‘용프로그램"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "접근성"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "아마추어 ë¼ë””오"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ë°ì´í„° 관리"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "ì—디터"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "êµìœ¡"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ì—뮬레ì´í„°"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "íŒŒì¼ ê´€ë¦¬"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "그림"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "휴대장치"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "네트워í¬"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "통신"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "íŒŒì¼ ì „ì†¡"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "시스템 ê°ì‹œ"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "웹브ë¼ìš°ì €"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ì› êµ¬ë…"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "사무실"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "프로그래ë°"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "프로ì íŠ¸ 관리"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "과학"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "천문학"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "ìƒë¬¼í•™"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "화학"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "ë°ì´í„° 분ì„"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "ì „ìží•™"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "공학"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "지구과학"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "수학"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "ì˜ì•½í•™"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "물리학"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "사회학"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ì…¸"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "소리"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "시스템"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "관리"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "하드웨어"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "언어환경"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "꾸러미 관리"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "보안"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "터미ë„"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "문서"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV와 ë¼ë””오"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "뷰어 프로그램"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "비디오"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "웹 개발"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "게임"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "액션 게임"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "어드벤처 게임"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "ë¸”ë¡ ê²Œìž„"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "보드 게임"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "카드 게임"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "í¼ì¦ 게임"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "시뮬레ì´ì…˜ 게임"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "전략 게임"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ë„구"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "í¥ë¯¸ê±°ë¦¬"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "ë„움ë§"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "화면"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "보호기"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "잠그기"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "윈ë„ìš° 매니저"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM 모듈"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "윈ë„ìš° 매니저"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "겉보기"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "작업공간"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "ì•„ì´ìŠ¤ì—ì´í”„ 관련"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "테디베어"
+
+#~ msgid "Apps"
+#~ msgstr "ì‘ìš© 프로그램"
+
+#~ msgid "Hamradio"
+#~ msgstr "아마추어 무선"
+
+#~ msgid "Math"
+#~ msgstr "수학"
+
+#~ msgid "Technical"
+#~ msgstr "기술"
+
+#~ msgid "Arcade"
+#~ msgstr "ì•„ì¼€ì´ë“œ"
+
+#~ msgid "Sports"
+#~ msgstr "스í¬ì¸ "
+
+#~ msgid "Tetris-like"
+#~ msgstr "테트리스ì‹"
+
+#~ msgid "Root-window"
+#~ msgstr "루트 창"
+
+#~ msgid "XShells"
+#~ msgstr "Xterm 계열"
+
+#~ msgid "Admin"
+#~ msgstr "관리"
diff --git a/po-sections/ku.po b/po-sections/ku.po
new file mode 100644
index 0000000..82416df
--- /dev/null
+++ b/po-sections/ku.po
@@ -0,0 +1,467 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Erdal Ronahi <erdal dot ronahi at gmail dot com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-04 20:27+0200\n"
+"Last-Translator: Erdal Ronahi <erdal dot ronahi at gmail dot com>\n"
+"Language-Team: ku <ubuntu-l10n-kur@lists.ubuntu.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Kurdish\n"
+"X-Poedit-Country: Kurdistan\n"
+"X-Generator: KAider 0.1\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Sepan"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Teknolojiyên alîkar"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radyoya Amatorî"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gerînendetiya Daneyan"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Edîtor"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Perwerdehî"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emûlator"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gerînendetiya Pelan"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafîk"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Cîhazên Mobîl"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Tor"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Ragihandin"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Derbaskirina Pelan"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monîtorkirin"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Gerîna Înternetê"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Nûçeyên Înternetê"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Nivîsgeh"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Bernamekirin"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gerînendetiya Projeyan"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Zanist"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Stêrknasî"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biyolojî"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kîmya"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analîza Daneyan"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronîk"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Endezyarî"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Zanista Cîhanê"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Bîrkarî"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Tixtorî"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fîzîk"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Civakî"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Åžel (Shells)"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Deng"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Pergal"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Gerînendetî"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "HiÅŸkalav"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Derdora Zimên"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gerînendetiya Pakêtan"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Ewlehî"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emûlatora Têrmînalê"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Nivîs"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV û Radiyo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "TemaÅŸekar"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vîdeyo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Pêşdebirina Înternetê"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Listîk"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Çalakî"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Serpêhatî"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blok"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Texte"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kart"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Pazil (Puzzles)"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Sîmulasiyon"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Stratejî"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Amûr"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Lîstok"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Alîkarî"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Dîmendêr"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Tomarkirin"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Kilîtkirin"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gerînendeyên Paceyan"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modulên FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Xuyanî"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Kargeh"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Komponentên Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Hirço"
+
+#~ msgid "Apps"
+#~ msgstr "Sepan"
+
+#~ msgid "Math"
+#~ msgstr "Matematîk"
+
+#~ msgid "Technical"
+#~ msgstr "Teknîkî"
+
+#~ msgid "Sports"
+#~ msgstr "Werzîş"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Wekî Tetris"
+
+#~ msgid "Admin"
+#~ msgstr "Rêveber"
diff --git a/po-sections/lt.po b/po-sections/lt.po
new file mode 100644
index 0000000..19fcb56
--- /dev/null
+++ b/po-sections/lt.po
@@ -0,0 +1,449 @@
+# translation of menu-sections to Lithuanian
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Kęstutis Biliūnas <kebil@kaunas.init.lt>, 2004, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections_lt\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-04 21:43+0300\n"
+"Last-Translator: Kęstutis Biliūnas <kebil@kaunas.init.lt>\n"
+"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Programos"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Pritaikymas neįgaliesiems"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Mėgėjiškas radijas"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Duomenų tvarkymas"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Redaktoriai"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Mokymas"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuliatoriai"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Failų tvarkymas"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobilūs įrenginiai"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Tinklas"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Bendravimas"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Failų perdavimas"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "StebÄ—jimas"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Naršymas tinkle"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Naujienos tinkle"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Raštinės"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programavimas"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projektų tvarkymas"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "MokslinÄ—s"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomija"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologija"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chemija"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Duomenų analizė"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Techninis konstravimas"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geografija"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "VisuomeninÄ—s"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Apvalkalai"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Garsas"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "SisteminÄ—s"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administravimas"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Aparatinė įranga"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Kalbos aplinka"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Paketų tvarkymas"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Saugumas"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminalų emuliatoriai"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekstas"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Radijas ir televizija"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Žiūryklės"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Tinklalapių kūrimas"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Žaidimai"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Veiksmo"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Nuotykiniai"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokai"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Stalo"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kortų"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Galvosūkiai"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simuliavimas"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strateginiai"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Įrankiai"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "NiekuÄiai"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Pagalba"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekranas"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Ekrano saugojimas"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Užrakinimas"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Langų tvarkyklės"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM moduliai"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "IÅ¡vaizda"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Darbastalis"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape komponentai"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Žaisliukai"
diff --git a/po-sections/menu-sections.pot b/po-sections/menu-sections.pot
new file mode 100644
index 0000000..1d834d3
--- /dev/null
+++ b/po-sections/menu-sections.pot
@@ -0,0 +1,445 @@
+# Menu section translation
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.35\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr ""
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr ""
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr ""
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr ""
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr ""
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr ""
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr ""
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr ""
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr ""
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr ""
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr ""
diff --git a/po-sections/menufile2pot b/po-sections/menufile2pot
new file mode 100755
index 0000000..83aa164
--- /dev/null
+++ b/po-sections/menufile2pot
@@ -0,0 +1,83 @@
+#!/usr/bin/perl
+
+# Little script to read the /usr/lib/menu/* files, and write a
+# menu-messages.pot file for them. This file then should contain
+# all possible translations, and can be used by translators.'
+#
+#
+# Should be changed to
+# - accept the compat-2 mode
+# - extract /usr/lib/menu/* files from .deb files. Then I'll run it on master.
+
+# Changes:
+# - now checks also for longtitles (jfs, Fri Aug 31 02:39:09 CEST 2001)
+
+open(POT, ">menu-messages.pot");
+
+while (</usr/lib/menu/*>){
+ my $file=$_;
+ open(ME,$_);
+ while(<ME>){
+ my $line;
+ $line=$_;
+ chomp($line);
+ while($line =~ /\\\s*$/){
+ $line =~ s/\\\s*$//;
+ $line .= <ME>;
+ chomp($line);
+ }
+ $line =~ s/^[^:]*://;
+ $line =~ m/title\s*=\s*"(.*?[^\\])"/ ||
+ $line =~ m/title\s*=\s*([^\s]*)/;
+ $title=$1;
+ $longtitle=$1 if $line =~ m/longtitle\s*=\s*"(.*?[^\\])"/;
+ $line =~ m/section\s*=\s*"(.*?[^\\])"/ ||
+ $line =~ m/section\s*=\s*([^\s]*)/;
+ $section=$1;
+ #print "T=$title S=$section LL " . $line . "\n";
+ $items{$title}=$file;
+ $items{$longtitle}=$file if $longtitle;
+ while( $section =~ s%/?([^/]+)/?%% ){
+ $items{$1}=$file;
+ }
+ }
+ close(ME);
+}
+
+
+$date=`/bin/date +"%Y-%d-%m %H:%M+%Z"`;
+
+print POT "# Collection of titles/sections of debian menu's.
+# This file is automatically generated. Do not edit.
+# It's generated from the /usr/lib/menu/* files.
+#
+#, fuzzy
+msgid \"\"
+msgstr \"\"
+\"Project-Id-Version: MENU VERSION\\n\"
+\"POT-Creation-Date: $date\\n\"
+\"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n\"
+\"Last-Translator: FULL NAME <e-mail\@address>\\n\"
+\"MIME-Version: 1.0\\n\"
+\"Content-Type: text/plain; charset=CHARSET\\n\"
+\"Content-Transfer-Encoding: ENCODING\\n\"
+
+";
+
+for my $s (sort keys %items){
+ print POT "#: Found in " . $items{$s} . "\n";
+ print POT "msgid \"" . $s . "\"\n";
+ print POT "msgstr \"\"\n\n";
+}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/po-sections/mk.po b/po-sections/mk.po
new file mode 100644
index 0000000..be1a94d
--- /dev/null
+++ b/po-sections/mk.po
@@ -0,0 +1,446 @@
+# translation of meni-mk.po to macedonian
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Georgi Stanojevski <glisha@gmail.com>, 2006, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: meni-mk\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-06-12 23:44+0200\n"
+"Last-Translator: Georgi Stanojevski <glisha@gmail.com>\n"
+"Language-Team: macedonian <ossm-members@hedona.on.net.mk>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Програми"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "ПриÑтапноÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ÐматерÑко радио"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Манипулација Ñо податоци"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Уредувачи"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Образовни"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Емулатори"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Манипулација Ñо датотеки"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графика"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Мобилни уреди"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Мрежа"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Коминикација"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ÐŸÑ€ÐµÐ½Ð¾Ñ Ð½Ð° датотеки"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Ðадгледување"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ПрелиÑтување на интернет"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ÐовоÑти"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "КанцелариÑки"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Програмирање"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Проектен менаџмент"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ðаука"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтрономија"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Биологија"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Хемија"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ðнализа на податоци"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Електроника"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ИнжињерÑтво"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Географија"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Математика"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медицина"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Физика"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "ОпштеÑтвени"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Школки"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Звук"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "СиÑтем"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ÐдминиÑтрација"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Хардвер"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Јазична околина"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Менаџмент на пакети"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "БезбедноÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Терминал емулатори"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ТекÑÑ‚"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ТВ и радио"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Прегледувачи"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Видео"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Развој на веб апликации"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Игри"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Ðкција"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Ðвантура"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Со блокови"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Ðа табла"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Карти"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Загатки"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Симулација"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Стратегија"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ðлатки"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Играчки"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Помош"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Екран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Сочувување"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Заклучувачки"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Менаџери за прозорци"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM Модули"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Создавач на прозорци"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Изглед"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Работна околина"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Ицеапе компоненти"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Мечиња"
diff --git a/po-sections/ml.po b/po-sections/ml.po
new file mode 100644
index 0000000..4e46c42
--- /dev/null
+++ b/po-sections/ml.po
@@ -0,0 +1,445 @@
+# translation of menu_po-sections to malayalam
+# Menu section translation to Malayalam
+# Copyright (C) 2006 The Debian Project
+# Praveen Arimbrathodiyil <pravi.a@gmail.com>, 2006, 2008.
+# This file is distributed under the same license as the menu package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_ml\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-12-07 19:46+0530\n"
+"Last-Translator: Praveen Arimbrathodiyil <pravi.a@gmail.com>\n"
+"Language-Team: malayalam <smc-discuss@googlegroups.com>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "à´ªàµà´°à´¯àµ‹à´—à´™àµà´™à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "സാമീപàµà´¯à´¤à´¾"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "അമേചàµà´µà´°àµâ€ റേഡിയോ"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ഡാറàµà´± നടതàµà´¤à´¿à´ªàµà´ªàµàµ"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "à´Žà´´àµà´¤àµà´¤à´¿à´Ÿà´™àµà´™à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "വിദàµà´¯à´­àµà´¯à´¾à´¸à´‚"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "à´Žà´®àµà´²àµ‡à´±àµà´±à´±àµà´•à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ഫയലàµà´•à´³àµà´Ÿàµ† നടതàµà´¤à´¿à´ªàµà´ªàµàµ"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "à´—àµà´°à´¾à´«à´¿à´•àµà´¸àµ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "മൊബൈലàµâ€ ഉപകരണങàµà´™à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "ശൃംഖല"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "ആശയവിനിമയം"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ഫയലàµà´•à´³àµà´Ÿàµ† കൈമാറàµà´±à´‚"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "നിരീകàµà´·à´£à´‚"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "വെബിലàµâ€ പരതàµà´•"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "വെബിലെ വാരàµâ€à´¤àµà´¤à´•à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ആപàµà´ªàµ€à´¸àµ"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "à´ªàµà´°àµ‹à´—àµà´°à´¾à´®à´¿à´™àµà´™àµ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "സംരംഭതàµà´¤à´¿à´¨àµà´±àµ† നടതàµà´¤à´¿à´ªàµà´ªàµàµ"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "ശാസàµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "വാനനിരീകàµà´·à´£à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "ജീവശാസàµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "രസതനàµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "ഡാറàµà´± വിശകലനം"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "ഇലകàµà´Ÿàµà´°àµ‹à´£à´¿à´•àµà´¸àµ"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "à´Žà´žàµà´šà´¿à´¨àµ€à´¯à´±à´¿à´™àµà´™àµ"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "ഭൂതലശാസàµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "ഗണിതം"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "വൈദàµà´¯à´¶à´¾à´¸àµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "ഭൌതികശാസàµà´¤àµà´°à´‚"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "സാമൂഹികം"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ഷെലàµà´²àµà´•à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ശബàµà´¦à´‚"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "സിസàµà´±àµà´±à´‚"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ഭരണം"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "ഭരണം"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "ഭാഷാ പരിസരം"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "പൊതികളàµà´Ÿàµ† നടതàµà´¤à´¿à´ªàµà´ªàµàµ"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "à´¸àµà´°à´•àµà´·"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ടെരàµâ€à´®à´¿à´¨à´²àµâ€ à´Žà´®àµà´²àµ‡à´±àµà´±à´±àµà´•à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "പദാവലി"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ടിവിയàµà´‚ റേഡിയോയàµà´‚"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ദരàµâ€à´¶à´¿à´¨à´¿à´•à´³àµâ€"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "വീഡിയോ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "വെബàµà´¬à´¿à´¨àµà´³àµà´³ വികസനം"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "കളികളàµâ€"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "അടിപിടി"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "സാഹസികം"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "à´•à´Ÿàµà´Ÿà´•à´³àµâ€"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ബോരàµâ€à´¡àµ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ചീടàµà´Ÿàµ"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "പസിലàµà´•à´³àµâ€"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "സിമàµà´²àµ‡à´·à´¨àµâ€"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "തനàµà´¤àµà´°à´‚"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ടൂളàµà´•à´³àµâ€"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "കളിപàµà´ªà´¾à´Ÿàµà´Ÿà´™àµà´™à´³àµâ€"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "സഹായം"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "à´¸àµà´•àµà´°àµ€à´¨àµâ€"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "à´°à´•àµà´·à´¿à´¯àµà´•àµà´•à´²àµâ€"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "പൂടàµà´Ÿà´²àµâ€"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "ജാലകതàµà´¤à´¿à´¨àµà´±àµ† നടതàµà´¤à´¿à´ªàµà´ªàµà´•à´¾à´°àµâ€"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "à´Žà´«àµâ€Œà´µà´¿à´¡à´¬àµà´²à´¿à´¯àµà´Žà´‚ മൊഡàµà´¯àµ‚à´³àµà´•à´³àµâ€"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "വിനàµâ€à´¡àµ‹à´®àµ‡à´•àµà´•à´°àµâ€"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "ചമയം"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "പണിസàµà´¥à´²à´‚"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "à´à´¸àµà´à´ªàµà´ªàµ ഘടകങàµà´™à´³àµâ€"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ടെഡàµà´¡à´¿à´•à´³àµâ€"
diff --git a/po-sections/mr.po b/po-sections/mr.po
new file mode 100644
index 0000000..0db79c3
--- /dev/null
+++ b/po-sections/mr.po
@@ -0,0 +1,488 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2003-04-03 12:14+0100\n"
+"Last-Translator: Priti Patil <prithisd@gmail.com>\n"
+"Language-Team: Marathi, janabhaaratii, C-DAC, Mumbai, India <janabhaaratii "
+"[at] cdacmumbai [dot] in>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "संपादक"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "शिकà¥à¤·à¤£"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "अनà¥à¤•à¤°à¤£à¤•"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "चितà¥à¤°à¤£à¥‡"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "जाल"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "शिकà¥à¤·à¤£"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "आजà¥à¤žà¤¾à¤µà¤²à¥à¤¯à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "डेटाबेसेस"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "शेलसà¥"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "धà¥à¤µà¤¨à¤¿"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "पà¥à¤°à¤£à¤¾à¤²à¥€"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "अनà¥à¤•à¤°à¤£à¤•"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "मजकूर"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "दरà¥à¤¶à¤•"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "खेळ"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "शिकà¥à¤·à¤£"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "साहसी"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "टाळे"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "पट"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "पतà¥à¤¤à¥‡"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "कोडी"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "आभास"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "धोरण"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "टूलसà¥"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "खेळणी"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "मदत"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "सà¥à¤•à¥à¤°à¥€à¤¨"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "संगà¥à¤°à¤¹à¥€à¤¤"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "टाळे"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "दृशà¥à¤¯à¤šà¥Œà¤•à¤Ÿà¤µà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤•"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "माॅडà¥à¤¯à¥à¤²à¤¸à¥"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "दृशà¥à¤¯à¤šà¥Œà¤•à¤Ÿà¤µà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤•"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "दॄषà¥à¤¯à¤°à¥‚प"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "कारà¥à¤¯à¤œà¤¾à¤—ा"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "मोà¤à¤¿à¤²à¤¾à¤šà¥‡ भाग "
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "टेडीजà¥"
+
+#~ msgid "Apps"
+#~ msgstr "अॅपसà¥"
+
+#~ msgid "Hamradio"
+#~ msgstr "हॅमरेडिओ"
+
+#~ msgid "Math"
+#~ msgstr "गणित"
+
+#~ msgid "Technical"
+#~ msgstr "तांतà¥à¤°à¤¿à¤•"
+
+#~ msgid "Arcade"
+#~ msgstr "आरà¥à¤•à¥‡à¤¡"
+
+#~ msgid "Sports"
+#~ msgstr "कà¥à¤°à¥€à¤¡à¤¾"
+
+#~ msgid "Tetris-like"
+#~ msgstr "टेटà¥à¤°à¤¿à¤¸-सारखे"
+
+#~ msgid "Root-window"
+#~ msgstr "मूल-दृशà¥à¤¯à¤šà¥Œà¤•à¤Ÿ"
+
+#~ msgid "XShells"
+#~ msgstr "à¤à¤•à¥à¤¸à¤¶à¥‡à¤²à¤¸à¥"
+
+#~ msgid "Admin"
+#~ msgstr "वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾"
diff --git a/po-sections/nb.po b/po-sections/nb.po
new file mode 100644
index 0000000..b1d5cf6
--- /dev/null
+++ b/po-sections/nb.po
@@ -0,0 +1,480 @@
+# translation of menu-sections.po to Norwegian Bokmål
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Hans Fredrik Nordhaug <hans@nordhaug.priv.no>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-11-14 21:05+0100\n"
+"Last-Translator: Hans Fredrik Nordhaug <hans@nordhaug.priv.no>\n"
+"Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Programmer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Tilgjengelighet"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatørradio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Databehandling"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Skriveprogram"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Læring"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatorer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Filbehandling"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikk"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobile enheter"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Nettverk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kommunikasjon"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Filoverføring"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Overvåk"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Nettsurfing"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Nettnyheter"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kontor"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmering"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Prosjektstyring"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Vitenskap"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologi"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kjemi"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Dataanalyse"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronikk"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Ingeniør"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geovitenskap"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematikk"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medisin"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fysikk"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sosial"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Skall"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Lyd"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "System"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrasjon"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Maskinvare"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Språkmiljø"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakkebehandling"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Sikkerhet"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminalemulator"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV og radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Framvisere"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Nettutvikling"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spill"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Action"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Eventyr"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokker"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Brett"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kort"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puslespill"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulering"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategi"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Verktøy"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Leker"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hjelp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Skjerm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Spar"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "LÃ¥s"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Vindusbehandlere"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-moduler"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Utseende"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Arbeidsområde"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-komponenter"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddybjørner"
+
+#~ msgid "Apps"
+#~ msgstr "Program"
+
+#~ msgid "Hamradio"
+#~ msgstr "Hamradio"
+
+#~ msgid "Math"
+#~ msgstr "Matte"
+
+#~ msgid "Technical"
+#~ msgstr "Teknisk"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkade"
+
+#~ msgid "Sports"
+#~ msgstr "Sport"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-lignende"
+
+#~ msgid "Root-window"
+#~ msgstr "Rot-vindu"
+
+#~ msgid "XShells"
+#~ msgstr "XSkall"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Admin"
diff --git a/po-sections/ne.po b/po-sections/ne.po
new file mode 100644
index 0000000..f339b6c
--- /dev/null
+++ b/po-sections/ne.po
@@ -0,0 +1,446 @@
+# translation of menu_po-sections_ne.po to Nepali
+# Shyam Krishna Bal <shyamkrishna_bal@yahoo.com>, 2006.
+# Shiva Pokharel <pokharelshiva@hotmail.com>, 2006.
+# shyam krishna bal <shyamkrishna_bal@yahoo.com>, 2007.
+# Shiva Prasad Pokharel <pokharelshiv@gmail.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_ne\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-26 15:20+0545\n"
+"Last-Translator: Shiva Prasad Pokharel <pokharelshiv@gmail.com>\n"
+"Language-Team: Nepali <info@mpp.org.np>\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: KBabel 1.11.4\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "पहà¥à¤à¤šà¤¤à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "अमाटेउर रेडियो"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "डेटा वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤¨"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "समà¥à¤ªà¤¾à¤¦à¤•à¤¹à¤°à¥‚"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "शिकà¥à¤·à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "इमà¥à¤²à¥‡à¤Ÿà¤°à¤¹à¤°à¥‚"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "फाइल वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤¨"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "गà¥à¤°à¤¾à¤«à¤¿à¤•à¥à¤¸à¥"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "मोबाइल यनà¥à¤¤à¥à¤°"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "सञà¥à¤œà¤¾à¤²"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "सञà¥à¤šà¤¾à¤°"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "फाइल सà¥à¤¥à¤¾à¤¨à¤¾à¤¨à¥à¤¤à¤°à¤£"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "अनà¥à¤—मन"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "वेब बà¥à¤°à¤¾à¤‰à¤œà¤¿à¤™"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "वेब समाचार"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "कारà¥à¤¯à¤¾à¤²à¤¯"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "पà¥à¤°à¥‹à¤—à¥à¤°à¤¾à¤®à¤¿à¤™à¥"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "परियोजना वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤¨"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "खगोल शासà¥à¤¤à¥à¤°"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "जीव शासà¥à¤¤à¥à¤°"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "रसायन शासà¥à¤¤à¥à¤°"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "डेटा विशà¥à¤²à¥‡à¤·à¤£"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "इलेकà¥à¤Ÿà¥à¤°à¥‹à¤¨à¤¿à¤•à¥à¤¸"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "इञà¥à¤œà¤¿à¤¨à¤¿à¤¯à¤°à¤¿à¤™"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "जियो विजà¥à¤žà¤¾à¤¨"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "गणित"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "औषधी"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "भौतिक शासà¥à¤¤à¥à¤°"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "सामजिक"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "शेलहरू"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "धà¥à¤µà¤¨à¤¿"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "पà¥à¤°à¤£à¤¾à¤²à¥€"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "पà¥à¤°à¤¶à¤¾à¤¸à¤¨"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "हारà¥à¤¡à¤µà¥‡à¤¯à¤°"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "भाषा परिवेश"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "पà¥à¤¯à¤¾à¤•à¥‡à¤œ वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤¨"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "सà¥à¤°à¤•à¥à¤·à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "टरà¥à¤®à¤¿à¤¨à¤² इमà¥à¤²à¥‡à¤Ÿà¤°"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "पाठ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "टीभी र रेडियो"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "दृशà¥à¤¯à¤•à¤°à¥à¤¤à¤¾"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "भिडियो"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "वेब विकास"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "खेलहरू"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "कारà¥à¤¯"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "साहस"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "रोकà¥à¤¦à¤›"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "पाटी"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "कारà¥à¤¡"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "अलà¥à¤®à¤²à¥à¤¯à¤¾à¤‰à¤¨à¥"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "नकà¥à¤•à¤²"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "रणनीती"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "उपकरणहरू"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "खेलौनाहरू"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "मदà¥à¤¦à¤¤ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "परà¥à¤¦à¤¾"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "बचत गरà¥à¤¦à¥ˆ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "तालà¥à¤šà¤¾ मारà¥à¤¦à¥ˆ"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "सञà¥à¤à¥à¤¯à¤¾à¤² पà¥à¤°à¤¬à¤¨à¥à¤§à¤•"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM मोडà¥à¤¯à¥à¤²à¥à¤¸"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "सञà¥à¤à¥à¤¯à¤¾à¤² निरà¥à¤®à¤¾à¤£à¤•à¤°à¥à¤¤à¤¾"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "देखावट"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "वरà¥à¤• खाली ठाऊà¤"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "आइसà¤à¤ª अवयव"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "टेडà¥à¤¡à¤¿à¤œ"
diff --git a/po-sections/nl.po b/po-sections/nl.po
new file mode 100644
index 0000000..792df26
--- /dev/null
+++ b/po-sections/nl.po
@@ -0,0 +1,480 @@
+# Dutch translations for menu_po-sections.
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Benno Schulenberg <benno@vertaalt.nl>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_nl\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-07-09 19:53+0200\n"
+"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
+"Language-Team: Dutch <vertaling@vrijschrift.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Toepassingen"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Toegankelijkheid"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amateurradio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gegevensbeheer"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editors"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Onderwijs"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatoren"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Bestandsbeheer"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Beeldbewerking"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobiele apparaten"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Netwerk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Communicatie"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Bestandsoverdracht"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Toezicht"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Webbrowsen"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Webnieuws"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kantoor"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmeren"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projectbeheer"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Wetenschap"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomie"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologie"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Scheikunde"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Gegevensanalyse"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Techniek"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Aardwetenschap"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Wiskunde"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Geneeskunde"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Natuurkunde"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sociaal"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Geluid"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Systeem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administratie"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Taalregio"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakketbeheer"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Veiligheid"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Terminalemulatoren"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV en radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Weergevers"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Webontwikkeling"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spellen"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Actie"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Avontuur"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokjes"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Bord"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kaart"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzzels"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulatie"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategie"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Hulpprogramma's"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Speeltjes"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hulp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Scherm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Bescherming"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Vergrendeling"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Vensterbeheerders"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-modules"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Uiterlijk"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Werkblad"
+
+# Fresuently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-componenten"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Knuffels"
+
+#~ msgid "Apps"
+#~ msgstr "Toepassingen"
+
+#~ msgid "Hamradio"
+#~ msgstr "Amateurradio"
+
+#~ msgid "Math"
+#~ msgstr "Wiskunde"
+
+#~ msgid "Technical"
+#~ msgstr "Technisch"
+
+#~ msgid "Arcade"
+#~ msgstr "Speelhal"
+
+#~ msgid "Sports"
+#~ msgstr "Sport"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-achtig"
+
+#~ msgid "Root-window"
+#~ msgstr "Hoofdvenster"
+
+#~ msgid "XShells"
+#~ msgstr "X-shells"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Beheer"
diff --git a/po-sections/nn.po b/po-sections/nn.po
new file mode 100644
index 0000000..e12b214
--- /dev/null
+++ b/po-sections/nn.po
@@ -0,0 +1,495 @@
+# translation of menu-sections.po to Norwegian Nynorsk
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# HÃ¥vard Korsvoll <korsvoll@skulelinux.no>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2004-03-17 18:35+0100\n"
+"Last-Translator: HÃ¥vard Korsvoll <korsvoll@skulelinux.no>\n"
+"Language-Team: Norwegian Nynorsk <i18n-nn@lister.ping.uio.no>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Skriveprogram"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Læring"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatorar"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikk"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "Nett"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "Læring"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmering"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Vitskap"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "Databasar"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "Vitskap"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Skal"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Lyd"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "System"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "Emulatorar"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Framvisarar"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spel"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "Læring"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Eventyr"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "LÃ¥s"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Brett"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kort"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puslespel"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulering"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategi"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Verktøy"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Leikar"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hjelp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Skjerm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "Lagra"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "LÃ¥s"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "Vindaugshandterarar"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "Modular"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "Vindaugshandterarar"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Utsjånad"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Arbeidsområde"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "Mozilla-komponentar"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddybjørnar"
+
+#~ msgid "Apps"
+#~ msgstr "Program"
+
+#~ msgid "Hamradio"
+#~ msgstr "Hamradio"
+
+#~ msgid "Math"
+#~ msgstr "Matte"
+
+#~ msgid "Technical"
+#~ msgstr "Teknisk"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkade"
+
+#~ msgid "Sports"
+#~ msgstr "Sport"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-liknande"
+
+#~ msgid "Root-window"
+#~ msgstr "Rot-vindauge"
+
+#~ msgid "XShells"
+#~ msgstr "XSkal"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Admin"
diff --git a/po-sections/pa.po b/po-sections/pa.po
new file mode 100644
index 0000000..b309431
--- /dev/null
+++ b/po-sections/pa.po
@@ -0,0 +1,490 @@
+# translation of menu-sections.po to Punjabi
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# A S Alam <aalam@users.sf.net>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-06-03 07:14+0530\n"
+"Last-Translator: A S Alam <aalam@users.sf.net>\n"
+"Language-Team: Punjabi <punjabi-l10n@lists.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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "ਸੰਪਾਦਕ"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "ਸਿੱਖਿਆ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ਈਮੂਲੇਟਰ"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "ਗਰਾਫਿਕਸ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "ਨੈੱਟ"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "ਸਿੱਖਿਆ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "ਪà©à¨°à©‹à¨—ਰਾਮਿੰਗ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "ਵਿਗਿਆਨ"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "ਡਾਟਾਬੇਸ"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "ਵਿਗਿਆਨ"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ਸ਼ੈਲਾਂ"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ਸਾਊਂਡ"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "ਸਿਸਟਮ"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "ਈਮੂਲੇਟਰ"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ਪਾਠ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "ਦਰਸ਼ਕ"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "ਖੇਡਾਂ"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "ਸਿੱਖਿਆ"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ਮਨੋਰੰਜਨ"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "ਲਾਕ"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ਬੋਰਡ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ਕਾਰਡ"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ਬà©à¨à¨¾à¨°à¨¤à¨¾à¨‚"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "ਸਮਰੂਪ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "ਨੀਤੀ"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "ਸੰਦ"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "ਖਿਡੌਣੇ"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "ਮੱਦਦ"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "ਸਕਰੀਨ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "ਸੰਭਾਲੋ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "ਲਾਕ"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "ਵਿੰਡੋ-ਮੈਨੇਜਰ"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "ਮੋਡੀਊਲ"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "ਵਿੰਡੋ-ਮੈਨੇਜਰ"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "ਦਿੱਖ"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "ਵਰਕਸਪੇਸ"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "ਮੋਜ਼ੀਲਾ ਭਾਗ"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "ਟਿੱਡਿਸ"
+
+#~ msgid "Apps"
+#~ msgstr "ਕਾਰਜ"
+
+#~ msgid "Hamradio"
+#~ msgstr "ਹਮਰੇਡੀਓ"
+
+#~ msgid "Math"
+#~ msgstr "ਗਣਿਤ"
+
+#~ msgid "Technical"
+#~ msgstr "ਤਕਨੀਕੀ"
+
+#~ msgid "Arcade"
+#~ msgstr "ਅਰਕਾਡੀ"
+
+#~ msgid "Sports"
+#~ msgstr "ਖੇਡਾਂ"
+
+#~ msgid "Tetris-like"
+#~ msgstr "ਟੀਟਰਿਸ-ਵਾਂਗ"
+
+#~ msgid "Root-window"
+#~ msgstr "ਰੂਟ-ਵਿੰਡੋ"
+
+#~ msgid "XShells"
+#~ msgstr "X-ਸ਼ੈਲ"
+
+#~ msgid "Admin"
+#~ msgstr "ਪਰਸ਼ਾਸ਼ਕ"
diff --git a/po-sections/pl.po b/po-sections/pl.po
new file mode 100644
index 0000000..84a9c7d
--- /dev/null
+++ b/po-sections/pl.po
@@ -0,0 +1,451 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Polish translation:
+# Marcin Owsiany <porridge@debian.org>, 2003, 2008.
+# Emil Nowak <emil5@go2.pl>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-17 16:12+0100\n"
+"Last-Translator: Marcin Owsiany <porridge@debian.org>\n"
+"Language-Team: Polish <debian-l10n-polish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Gettext Translator 0.9\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikacje"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Dostêpno¶æ"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio amatorskie"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Zarz±dzanie danymi"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Edytory"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Edukacja"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatory"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Zarz±dzanie plikami"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Urz±dzenia przeno¶ne"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Sieæ"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikacja"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Przesy³anie plików"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorowanie"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Przegl±danie WWW"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Kana³y wiadomo¶ci"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Biuro"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programowanie"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Zarz±dzanie projektami"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Nauki ¶cis³e"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chemia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analiza danych"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "In¿ynieria"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Nauki o Ziemi"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematyka"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medycyna"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizyka"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Nauki spo³eczne"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Pow³oki"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "D¼wiêk"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Systemowe"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administracja"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Sprzêt"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Ustawienia jêzyka"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Zarz±dzanie pakietami"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Bezpieczeñstwo"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulatory terminala"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV i radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Przegl±darki"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Tworzenie stron WWW"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Gry"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Zrêczno¶ciowe"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Przygodowe"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Klocki"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Planszowe"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Karciane"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Uk³adanki"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Symulatory"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategiczne"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Narzêdzia"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Zabawki"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Pomoc"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekran"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Wygaszacze"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Blokady"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Mened¿ery okien"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Modu³y FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Wygl±d"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Obszar roboczy"
+
+# Fresuently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Komponenty Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Misie"
diff --git a/po-sections/pt.po b/po-sections/pt.po
new file mode 100644
index 0000000..db446b5
--- /dev/null
+++ b/po-sections/pt.po
@@ -0,0 +1,478 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-16 07:59+0100\n"
+"Last-Translator: Miguel Figueiredo <elmig@debianpt.org>\n"
+"Language-Team: portuguese <traduz@debianpt.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicações"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Acessibilidade"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Rádio Amador"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gestão de Dados"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editores"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educacional"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladores"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gestão de Ficheiros"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Imagem"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositivos Móveis"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rede"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicação"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transferência de Ficheiros"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorização"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navegação Web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Notícias na Web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Escritório"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programação"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gestão de Projectos"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciência"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Análise de Dados"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Electrónica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Engenharia"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Géociência"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemática"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Ciências Sociais"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Som"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administração"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Ambiente de Idiomas"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gestão de Pacotes"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Segurança"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladores de Terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Texto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV e Rádio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visualizadores"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vídeo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desenvolvimento Web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jogos"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Acção"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blocos"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tabuleiro"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartas"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Quebra Cabeças"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulação"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estratégia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ferramentas"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Brinquedos"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ajuda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ecrã"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Protecção de Ecrã"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Bloquear"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gestores de Janelas"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Módulos de FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aparência"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Espaço de Trabalho"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componentes Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Ursinhos de Peluche"
+
+#~ msgid "Apps"
+#~ msgstr "Aplicações"
+
+#~ msgid "Hamradio"
+#~ msgstr "Rádio Amador"
+
+#~ msgid "Math"
+#~ msgstr "Matemática"
+
+#~ msgid "Technical"
+#~ msgstr "Técnico"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Desporto"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Estilo Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Janela Raiz"
+
+#~ msgid "XShells"
+#~ msgstr "Shells Gráficos"
+
+# From Apps/System/Admin
+#~ msgid "Admin"
+#~ msgstr "Administração"
diff --git a/po-sections/pt_BR.po b/po-sections/pt_BR.po
new file mode 100644
index 0000000..5124766
--- /dev/null
+++ b/po-sections/pt_BR.po
@@ -0,0 +1,451 @@
+# menu section Brazilian Portuguese translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Eder L. Marques (frolic) <frolic@debian-ce.org>, 2008.
+# Sérgio Cipolla <secipolla@gmail.com>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.7-2\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2011-04-17 11:02-0300\n"
+"Last-Translator: Sérgio Cipolla <secipolla@gmail.com>\n"
+"Language-Team: Brazilian Portuguese <debian-l10n-portuguese@lists.debian."
+"org>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicativos"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Acessibilidade"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Rádio Amador"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Gerenciamento de Dados"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editores"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educação"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emuladores"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Gerenciamento de Arquivos"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Gráficos"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispositivos Móveis"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rede"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicação"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transferência de Arquivos"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitoramento"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navegação Web"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Notícias Web"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Escritório"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programação"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Gerenciamento de Projetos"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ciência"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Química"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Análise de Dados"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Eletrônica"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Engenharia"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geociência"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matemática"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicina"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Física"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Social"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Som"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administração"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Ambiente de Linguagem"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Gerenciamento de Pacotes"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Segurança"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emuladores de Terminal"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Texto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV e Rádio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visualizadores"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Vídeo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Desenvolvimento Web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jogos"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Ação"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blocos"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tabuleiro"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cartas"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Quebra-cabeças"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulação"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estratégia"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Ferramentas"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Brinquedos"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ajuda"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Tela"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Proteção"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Bloqueio"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Gerenciadores de Janelas"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Módulos do FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aparência"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Ãrea de Trabalho"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componentes do Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Bichinhos"
diff --git a/po-sections/ro.po b/po-sections/ro.po
new file mode 100644
index 0000000..dc7480f
--- /dev/null
+++ b/po-sections/ro.po
@@ -0,0 +1,448 @@
+# translation of menu-sections_ro.po to Romanian
+# translation of menu-sections.po to Romanian
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Sorin Batariuc <sorin@bonbon.net>, 2005.
+# stan ioan-eugen <stan.ieugen@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-02-14 23:37+0200\n"
+"Last-Translator: stan ioan-eugen <stan.ieugen@gmail.com>\n"
+"Language-Team: romanian <debian-l10n-romanian@lists.debian.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplicații"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Accesibilitate"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio amatori"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Administrare de date"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editoare"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Educație"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatoare"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Administrarea fișierelor"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafică"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispozitive mobile"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rețele"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Comunicare"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Transfer de fișiere"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorizare"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Navigare internet"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Știri"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Aplicații birou"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programare"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Administrare de proiecte"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Știință"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomie"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologie"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chimie"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analiză date"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Electronică"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Inginerie"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geo-științe"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematică"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicină"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizică"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Social"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Console"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Sunet"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrare"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Mediu lingvistic"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Administrare de pachete"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Securitate"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Console virtuale"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Text"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Radio și TV"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Vizualizatoare"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Dezvoltare web"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Jocuri"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Acțiune"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventură"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blocuri"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Table"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Cărți"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Perspicacitate"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulatoare"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategie"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Unelte"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Jucării"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ajutor"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ecran"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Protecție ecran"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Blocare ecran"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Administratori de ferestre"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Module FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Aspect"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Spațiu de lucru"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Componente Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Ursuleți"
diff --git a/po-sections/ru.po b/po-sections/ru.po
new file mode 100644
index 0000000..bbd4808
--- /dev/null
+++ b/po-sections/ru.po
@@ -0,0 +1,454 @@
+# translation of ru.po to Russian
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Russian L10N Team <debian-l10n-russian@lists.debian.org>, 2005.
+# Yuri Kozlov <kozlov.y@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: 2.1.37\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-01-23 21:18+0300\n"
+"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "ПриложениÑ"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Специальные возможноÑти"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ЛюбительÑкое радио"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Управление данными"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Редакторы"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Обучающие"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ЭмулÑторы"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Управление файлами"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графика"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Мобильные уÑтройÑтва"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Сеть"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Общение"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "ПереÑылка файлов"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Мониторинг"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ПроÑмотр веб"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Веб-новоÑти"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ОфиÑные"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Программирование"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Управление проектами"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ðаучные"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтрономиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "БиологиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ХимиÑ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ðнализ данных"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Электроника"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "ТехничеÑÐºÐ°Ñ Ñ€Ð°Ð·Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ°"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Геофизика"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Математика"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медицина"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Физика"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "ОбщеÑтво"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Оболочки"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Работа Ñо звуком"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "СиÑтемные"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ÐдминиÑтрирование"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Ðппаратное обеÑпечение"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Языковое окружение"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Управление пакетами"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "БезопаÑноÑÑ‚ÑŒ"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ЭмулÑторы терминалов"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Работа Ñ Ñ‚ÐµÐºÑтом"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Телевидение и радио"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Программы проÑмотра"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Видео"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Веб-разработка"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Игры"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "СтрелÑлки"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ПриключениÑ"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Блоки"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ÐаÑтольные"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Карточные"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Головоломки"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "СимулÑторы"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Стратегии"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Утилиты"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Игрушки"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Справка"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Экран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Хранители Ñкрана"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Блокировщики"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Оконные менеджеры"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Модули к FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Внешний вид"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Рабочее проÑтранÑтво"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Компоненты Iceape"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Плюшевые мишки"
diff --git a/po-sections/sk.po b/po-sections/sk.po
new file mode 100644
index 0000000..b8632c4
--- /dev/null
+++ b/po-sections/sk.po
@@ -0,0 +1,443 @@
+# Slovak translation of menu_po-sections.
+# This file is distributed under the same license as the menu_po-sections package.
+# Ivan Masár <helix84@centrum.sk>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2009-04-07 00:15+0100\n"
+"Last-Translator: Ivan Masár <helix84@centrum.sk>\n"
+"Language-Team: Slovak <sk-i18n@lists.linux.sk>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Aplikácie"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Prístupnosť"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatérske rádio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Správa údajov"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editory"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Vzdelávanie"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulátory"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Správa súborov"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafika"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobilné zariadenia"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Sieť"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikácia"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Prenos súborov"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Monitorovanie"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Prehliadanie webu"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Správy z webu"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kancelária"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programovanie"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Riadenie projektov"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Veda"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronómia"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biológia"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Chémia"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analýza dát"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronika"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Inžinierstvo"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Vedy o Zemi"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematika"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicína"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fyzika"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "SpoloÄenské vedy"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shelly"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Zvuk"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Systém"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Správa systému"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardvér"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Jazykové prostredie"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Správa balíkov"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "BezpeÄnosÅ¥"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulátory terminálu"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Spracovanie textu"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV a rádio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "PrehliadaÄe"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Vývoj webu"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Hry"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "AkÄné"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Dobrodružné"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blokové"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Stolné"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kartové"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Hlavolamy"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulátory"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategické"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Nástroje"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "HraÄky"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Pomocník"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Obrazovka"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Å etriÄe"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Zamykanie"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Správcovia okien"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Moduly FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Vzhľad"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "WorkSpace"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Komponenty Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Plyšáci"
diff --git a/po-sections/sq.po b/po-sections/sq.po
new file mode 100644
index 0000000..a97115e
--- /dev/null
+++ b/po-sections/sq.po
@@ -0,0 +1,476 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# , fuzzy
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-05-05 19:01+0200\n"
+"Last-Translator: Elian Myftiu <elian.myftiu@gmail.com>\n"
+"Language-Team: Debian L10n Albanian <debian-l10n-albanian@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Programe"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Hyrshmëri"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Radio Amatori"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Organizues të Dhënash"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editues"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Edukim"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulues"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Organizues Skedash"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafikë"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Dispozitivë Të Lëvizshëm"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Rrjet"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Komunikim"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Lëvizje Skedash"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Vëzhgues"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Shfletim Rrjeti"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Të Reja Rrjeti"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Zyrë"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programim"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projektim"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Shkencë"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologji"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kimi"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Analizë të Dhënash"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronikë"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Inxhinieri"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Gjeoshkencë"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematikë"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Mjekësi"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizikë"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sociale"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Zë"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administrim"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Hardware"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Mjedis Gjuhësh"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Organizues Paketash"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Siguri"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Emulues Terminali"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV dhe Radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Shikues"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Zhvillim Rrjeti"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Lojra"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Aksion"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Aventurë"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Blloqe"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Fushe"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Letra"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Gjëza"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulim"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategji"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Vegla"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Lodra"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ndihmë"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Roje Ekrani"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Kursim"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Kyçje"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Organizues Dritaresh"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Module FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Krijues Dritaresh"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Pamje e Jashtme"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Hapësirë Pune"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Përbërës Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Zbavitje"
+
+#~ msgid "Apps"
+#~ msgstr "Programe"
+
+#~ msgid "Hamradio"
+#~ msgstr "Hamradio"
+
+#~ msgid "Math"
+#~ msgstr "Matematikë"
+
+#~ msgid "Technical"
+#~ msgstr "Teknike"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Sporte"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Si-Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Dritarja-root"
+
+#~ msgid "XShells"
+#~ msgstr "XShells"
+
+#~ msgid "Admin"
+#~ msgstr "Administrues"
diff --git a/po-sections/sv.po b/po-sections/sv.po
new file mode 100644
index 0000000..cca66c4
--- /dev/null
+++ b/po-sections/sv.po
@@ -0,0 +1,446 @@
+# translation of sv.po to swedish
+# Menu section translation
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Martin Bagge <martin.bagge@bthstudent.se>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: sv\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-06-30 20:42+0200\n"
+"Last-Translator: Martin Bagge <martin.bagge@bthstudent.se>\n"
+"Language-Team: swedish <debian-l10n-swedish@lists.debian.org>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Applikationer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Hjälpmedel"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatörradio"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Datahantering"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Textredigering"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Utbildning"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulatorer"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Filhantering"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafik"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobilt"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Nätverk"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Kommunikation"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Filöverföring"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Övervakning"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Webbläsare"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Webbflöden (RSS mm)"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Kontorssviter"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programmering"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Projekthantering"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Forskning"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biologi"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kemi"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Dataanalys"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronik"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Teknik"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Geoteknik"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematik"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Medicin"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fysik"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Samhällsvetenskap"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Skal"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Ljud"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "System"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Administration"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "HÃ¥rdvara"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Språkmiljö"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Pakethantering"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Säkerhet"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Teminalemulatorer"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Text"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV och radio"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Visningsprogram"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Video"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Webbutveckling"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Spel"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Action"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Äventyr"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Klossar"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Brädspel"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kortspel"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Pussel"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulatorer"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strategi"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Verktyg"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Leksaker"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Hjälp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Skärm"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Spara"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "LÃ¥sning"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Fönsterhantering"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM-moduler"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Utseende"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Arbetsyta"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape-komponenter"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddy"
diff --git a/po-sections/ta.po b/po-sections/ta.po
new file mode 100644
index 0000000..a4310eb
--- /dev/null
+++ b/po-sections/ta.po
@@ -0,0 +1,448 @@
+# translation of menu_po-sections_ta.po to TAMIL
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2003.
+# drtvasudevan <agnihot3@gmail.com>, 2006.
+# Dr.T.Vasudevan <agnihot3@gmail.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections_ta\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-08 10:52+0530\n"
+"Last-Translator: Dr.T.Vasudevan <agnihot3@gmail.com>\n"
+"Language-Team: TAMIL <ubuntu-l10n-tam@lists.ubuntu.com>\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "பயனà¯à®ªà®¾à®Ÿà¯à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "அணà¯à®•à®²à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "கலைபà¯à®ªà®¿à®°à®¿à®¯à®°à¯ வானொலி"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "தரவ௠மேலாணà¯à®®à¯ˆ"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "திரà¯à®¤à¯à®¤à®¿à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "கலà¯à®µà®¿"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "போனà¯à®±à®¿à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "கோபà¯à®ªà¯ மேலாணà¯à®®à¯ˆ"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "வரைகலைகளà¯"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "அலை பேசி சாதனஙà¯à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "வலையமைபà¯à®ªà¯"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "தகவல௠தொடரà¯à®ªà¯"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "கோபà¯à®ªà¯ பரிமாறà¯à®±à®®à¯"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "கணà¯à®•à®¾à®£à®¿à®ªà¯à®ªà¯"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "வலை உலாவலà¯"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "வலை செயà¯à®¤à®¿"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "அலà¯à®µà®²à®•à®®à¯"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "நிரலாகà¯à®•à®®à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "திடà¯à®Ÿ மேலாணà¯à®®à¯ˆ"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "அறிவியலà¯"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "வானவியலà¯"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "உயிரியலà¯"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "இரசாயனமà¯"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "தகவல௠ஆயà¯à®µà¯"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "மினà¯à®©à®£à¯à®µà®¿à®¯à®²à¯"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "பொறியியலà¯"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "பà¯à®µà®¿ அறிவியலà¯"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "கணிதமà¯"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "மரà¯à®¤à¯à®¤à¯à®µà®®à¯"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "பௌதிகமà¯"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "சமூகமà¯"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "ஷெலà¯à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "ஒலி"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "கணினி அமைபà¯à®ªà¯"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "நிரà¯à®µà®¾à®•à®®à¯"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "வண௠பொரà¯à®Ÿà¯à®•à®³à¯"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "மொழி சூழலà¯"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "பொதி மேலாணà¯à®®à¯ˆ"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "பாதà¯à®•à®¾à®ªà¯à®ªà¯"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "à®®à¯à®©à¯ˆà®¯ போனà¯à®±à®¿à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "உரை"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "தொலைகாடà¯à®šà®¿ மறà¯à®±à¯à®®à¯ வானொலி"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "காடà¯à®Ÿà®¿à®•à®³à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "ஔததà¯à®¤à¯‹à®±à¯à®±à®®à¯"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "வலை வளரà¯à®šà¯à®šà®¿"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "விளையாடà¯à®Ÿà¯à®•à®³à¯"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "செயலà¯"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "தà¯à®£à®¿à®•à®°à®ªà¯ பயணமà¯"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "தொகà¯à®¤à®¿à®•à®³à¯"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "பலகை"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "அடà¯à®Ÿà¯ˆ"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "பà¯à®¤à®¿à®°à¯à®•à®³à¯"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "பாவனை"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "போர௠தநà¯à®¤à®¿à®°à®®à¯"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "கரà¯à®µà®¿à®•à®³à¯"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "விளையாடà¯à®Ÿà¯à®ªà¯ பொரà¯à®Ÿà¯à®•à®³à¯"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "உதவி"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "திரை"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "சேமிதà¯à®¤à®²à¯"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "பூடà¯à®Ÿà®²à¯"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "சாளர மேலாளரà¯à®•à®³à¯"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "ஃஎபà¯à®µà®¿à®Ÿà®ªà®¿à®³à¯à®¯à¯‚எம௠தொகà¯à®ªà¯à®ªà¯à®•à®³à¯"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "விணà¯à®Ÿà¯‹ மேகà¯à®•à®°à¯"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "தோறà¯à®±à®®à¯"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "பணிகà¯à®•à®³à®®à¯"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "à®à®¸à¯à®à®ªà¯ பொரà¯à®³à¯à®•à¯‚à®±à¯à®•à®³à¯"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "டெடà¯à®Ÿà®¿à®•à®³à¯"
+
diff --git a/po-sections/th.po b/po-sections/th.po
new file mode 100644
index 0000000..fb28edf
--- /dev/null
+++ b/po-sections/th.po
@@ -0,0 +1,473 @@
+# Thai translation of Menu sections
+# Copyright (C) 2006-2007 Software in the Public Interest, Inc.
+# This file is distributed under the same license as the menu package.
+# Theppitak Karoonboonyanan <thep@linux.thai.net>, 2006-2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-17 17:04+0700\n"
+"Last-Translator: Theppitak Karoonboonyanan <thep@linux.thai.net>\n"
+"Language-Team: Thai <thai-l10n@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "โปรà¹à¸à¸£à¸¡"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "สิ่งอำนวยความสะดวà¸"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "วิทยุสมัครเล่น"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "à¸à¸²à¸£à¸ˆà¸±à¸”à¸à¸²à¸£à¸‚้อมูล"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "เครื่องมือà¹à¸à¹‰à¹„ข"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "à¸à¸²à¸£à¸¨à¸¶à¸à¸©à¸²"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "จำลอง"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "à¸à¸²à¸£à¸ˆà¸±à¸”à¸à¸²à¸£à¹à¸Ÿà¹‰à¸¡"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "รูปภาพ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "อุปà¸à¸£à¸“์พà¸à¸žà¸²"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "เครือข่าย"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "à¸à¸²à¸£à¸ªà¸·à¹ˆà¸­à¸ªà¸²à¸£"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "à¸à¸²à¸£à¸–่ายโอนà¹à¸Ÿà¹‰à¸¡"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "ติดตามสถานะ"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "เว็บเบราว์เซอร์"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "ข่าวทางเว็บ"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "สำนัà¸à¸‡à¸²à¸™"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "เขียนโปรà¹à¸à¸£à¸¡"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "à¸à¸²à¸£à¸ˆà¸±à¸”à¸à¸²à¸£à¹‚ครงà¸à¸²à¸£"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "วิทยาศาสตร์"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ดาราศาสตร์"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "ชีววิทยา"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "เคมี"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "à¸à¸²à¸£à¸§à¸´à¹€à¸„ราะห์ข้อมูล"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "อิเล็à¸à¸—รอนิà¸à¸ªà¹Œ"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "วิศวà¸à¸£à¸£à¸¡"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "ภูมิศาสตร์"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "คณิตศาสตร์"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "à¸à¸²à¸£à¹à¸žà¸—ย์"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "ฟิสิà¸à¸ªà¹Œ"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "สังคมศาสตร์"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "เชลล์"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "เสียง"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "ระบบ"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "ดูà¹à¸¥à¸£à¸°à¸šà¸š"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "ฮาร์ดà¹à¸§à¸£à¹Œ"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "สภาพà¹à¸§à¸”ล้อมเฉพาะภาษา"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "à¸à¸²à¸£à¸ˆà¸±à¸”à¸à¸²à¸£à¹à¸žà¸à¹€à¸à¸ˆ"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "ระบบรัà¸à¸©à¸²à¸„วามปลอดภัย"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "จำลองเทอร์มินัล"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "ประมวลข้อความ"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "ทีวีà¹à¸¥à¸°à¸§à¸´à¸—ยุ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "โปรà¹à¸à¸£à¸¡à¹à¸ªà¸”ง"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "วีดิทัศน์"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "à¸à¸²à¸£à¸žà¸±à¸’นาเว็บ"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "เà¸à¸¡"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "à¹à¸­à¹‡à¸„ชั่น"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "ผจà¸à¸ à¸±à¸¢"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "บล็อค"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "à¸à¸£à¸°à¸”าน"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "ไพ่"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "ปริศนา"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "จำลอง"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "วางà¹à¸œà¸™"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "เครื่องมือ"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "ของเล่น"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "วิธีใช้"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "หน้าจอ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "รัà¸à¸©à¸²à¸«à¸™à¹‰à¸²à¸ˆà¸­"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "ล็อค"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "โปรà¹à¸à¸£à¸¡à¸ˆà¸±à¸”à¸à¸²à¸£à¸«à¸™à¹‰à¸²à¸•à¹ˆà¸²à¸‡"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "มอดูล FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "รูปโฉม"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "พื้นที่ทำงาน"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "องค์ประà¸à¸­à¸š Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "เท็ดดี้"
+
+#~ msgid "Apps"
+#~ msgstr "โปรà¹à¸à¸£à¸¡"
+
+#~ msgid "Hamradio"
+#~ msgstr "วิทยุสมัครเล่น"
+
+#~ msgid "Math"
+#~ msgstr "คณิตศาสตร์"
+
+#~ msgid "Technical"
+#~ msgstr "ทางเทคนิค"
+
+#~ msgid "Arcade"
+#~ msgstr "โต้ตอบ"
+
+#~ msgid "Sports"
+#~ msgstr "à¸à¸µà¸¬à¸²"
+
+#~ msgid "Tetris-like"
+#~ msgstr "ประเภทเททริส"
+
+#~ msgid "Root-window"
+#~ msgstr "พื้นหลัง"
+
+#~ msgid "XShells"
+#~ msgstr "เชลล์ใน X"
+
+#~ msgid "Admin"
+#~ msgstr "ดูà¹à¸¥à¸£à¸°à¸šà¸š"
diff --git a/po-sections/tl.po b/po-sections/tl.po
new file mode 100644
index 0000000..57241ce
--- /dev/null
+++ b/po-sections/tl.po
@@ -0,0 +1,487 @@
+# Menu section translation to Tagalog
+# Copyright (C) 2005 Eric Pareja
+# This file is distributed under the same license as the menu package.
+# Original file, Bill Allombert <ballombe@debian.org>, 2003.
+# Translation by Eric Pareja <xenos@upm.edu.ph>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-08-10 20:11+0800\n"
+"Last-Translator: Eric Pareja <xenos@upm.edu.ph>\n"
+"Language-Team: Tagalog <debian-tl@banwa.upm.edu.ph>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Panulat"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Edukasyon"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Mga Emulator"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grapiks"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "Net"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "Edukasyon"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Pagprograma"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Agham"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "Database"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "Agham"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Mga Shell"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Tunog"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistema"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "Mga Emulator"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Teksto"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Mga viewer"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Palaro"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "Edukasyon"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Abentura"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "Lock"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Board"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Baraha"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Palaisipan"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulasiyon"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Stratehiya"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Kasangkapan"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Mga Laruan"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Tulong"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Tabing/Telon"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "Magtipid"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "Lock"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "Tagapangasiwa ng Tanaw"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "Mga module"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "Tagapangasiwa ng Tanaw"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Hitsura"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "WorkSpace"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "Bahagi ng Mozilla"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Mga Teddy"
+
+#~ msgid "Apps"
+#~ msgstr "Aplikasyon"
+
+#~ msgid "Hamradio"
+#~ msgstr "Radyo"
+
+#~ msgid "Math"
+#~ msgstr "Matematika"
+
+#~ msgid "Technical"
+#~ msgstr "Teknikal"
+
+#~ msgid "Arcade"
+#~ msgstr "Arcade"
+
+#~ msgid "Sports"
+#~ msgstr "Palakasan"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Parang Tetris"
+
+#~ msgid "Root-window"
+#~ msgstr "Pangunahing Tanaw"
+
+#~ msgid "XShells"
+#~ msgstr "Mga XShell"
+
+#~ msgid "Admin"
+#~ msgstr "Pangangasiwa"
diff --git a/po-sections/tr.po b/po-sections/tr.po
new file mode 100644
index 0000000..255754e
--- /dev/null
+++ b/po-sections/tr.po
@@ -0,0 +1,478 @@
+# Turkish translation of menu-sections.
+# This file is distributed under the same license as the menu-sections package.
+# Recai Oktas <roktas@omu.edu.tr>, 2004.
+# Mert Dirik <mertdirik@gmail.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-06-06 16:54+0200\n"
+"Last-Translator: Mert Dirik <mertdirik@gmail.com>\n"
+"Language-Team: Turkish <debian-l10n-turkish@lists.debian.org>\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"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Poedit-Language: Turkish\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Uygulamalar"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "EriÅŸilebilirlik"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Amatör Radyo"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Veri Yönetimi"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Düzenleyiciler"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "EÄŸitim"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Öykünücüler"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Dosya Yönetimi"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Grafik"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Mobil Aygıtlar"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "AÄŸ"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Ä°letiÅŸim"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Dosya Aktarımı"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Ä°zleme"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Web Tarama"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Web Haberleri"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Ofis"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Programlama"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Proje Yönetimi"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Bilim"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Astronomi"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Biyoloji"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Kimya"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Veri Çözümleme"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Elektronik"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Mühendislik"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Yer Bilimleri"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Matematik"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Tıp"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Fizik"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Sosyal"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Kabuklar"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Ses"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Yönetim"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Donanım"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Dil Ortamı"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Paket Yönetimi"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Güvenlik"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Uçbirim Öykünücüleri"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Metin"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV ve Radyo"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Görüntüleyiciler"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Görüntü"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Web GeliÅŸtirme"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Oyunlar"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Aksiyon"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Serüven"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Bloklar"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Tahta"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kart"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Bulmacalar"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simülasyon"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Strateji"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Araçlar"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Oyuncaklar"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Yardım"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekran"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Kaydetme"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Kilitleme"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Pencere Yöneticileri"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM BileÅŸenleri"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+# Non official sections from WindowMaker
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Görünüm"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Çalışma alanı"
+
+# Frequently used unofficial sections.
+# From Apps/Net/Mozilla Components
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape BileÅŸenleri"
+
+# From Games/Toys/Teddies
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Ayıcıklar"
+
+#~ msgid "Apps"
+#~ msgstr "Uygulamalar"
+
+#~ msgid "Hamradio"
+#~ msgstr "Amatör Radyo"
+
+#~ msgid "Math"
+#~ msgstr "Matematik"
+
+#~ msgid "Technical"
+#~ msgstr "Teknik"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkad"
+
+#~ msgid "Sports"
+#~ msgstr "Sporlar"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-benzeri"
+
+#~ msgid "Root-window"
+#~ msgstr "Kök-pencere"
+
+#~ msgid "XShells"
+#~ msgstr "X kabukları"
diff --git a/po-sections/trme2po b/po-sections/trme2po
new file mode 100755
index 0000000..c1604aa
--- /dev/null
+++ b/po-sections/trme2po
@@ -0,0 +1,48 @@
+#!/usr/bin/perl
+
+#trme2po (TRanslate_MEnus TO .po format)
+
+$trans=();
+
+sub preface {
+ print '
+# Menu section translation
+# Copyright (C) 2003
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.7-2\n"
+"PO-Revision-Date: 2003-3-06 17:11 +0100\n"
+"Last-Translator: FIRST AUTHOR <EMAIL@ADDRESS>\n"
+"Language-Team: <@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+# Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html)
+';
+}
+
+sub dump_body {
+ for my $id (sort keys %trans){
+ print "msgid \"$id\"\n";
+ print "msgstr \"".$trans{$id}."\"\n";
+ print "\n";
+ }
+}
+
+sub process {
+ while (<STDIN>){
+ s/#.*//;
+ s/^\s+//;
+ next if /^$/;
+ do {print STDERR "Error: $_"; next;} unless /^\"([^\"]+)\"\s+\"([^\"]+)\"/;
+ $trans{$1}=$2;
+ }
+}
+process();
+
+preface();
+dump_body();
diff --git a/po-sections/uk.po b/po-sections/uk.po
new file mode 100644
index 0000000..aafb7b2
--- /dev/null
+++ b/po-sections/uk.po
@@ -0,0 +1,478 @@
+# translation of menu-sections.po to Ukrainian
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Eugeniy Meshcheryakov <eugen@univ.kiev.ua>, 2004.
+# Serhij Dubyk <serhijdubyk@gmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-sections_uk\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2011-03-11 12:09+0300\n"
+"Last-Translator: Serhij Dubyk <serhijdubyk@gmail.com>\n"
+"Language-Team: Ukrainian Linux Team <translation@linux.org.ua>\n"
+"Language: \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"
+"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-Poedit-Language: Ukrainian\n"
+"X-Poedit-Country: UKRAINE\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "ЗаÑтоÑунки"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Спеціальні можливоÑÑ‚Ñ–"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "ÐматорÑьке радіо"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð°Ð½Ð¸Ð¼Ð¸"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Редактори"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Ðавчальні"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "ЕмулÑтори"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ð°Ð¼Ð¸"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Графіка"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Мобільні приÑтрої"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Мережа"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "СпілкуваннÑ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Передача файлів"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Моніторинг"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "ПереглÑд веб-Ñторінок"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Ðовини з мережі"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "ОфіÑні"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "ПрограмуваннÑ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð°Ð¼Ð¸"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Ðаукові"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "ÐÑтрономіÑ"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "БіологіÑ"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "ХіміÑ"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Ðналіз даних"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Електроніка"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Технічна розробка"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Ðауки про землю"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Математика"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Медицина"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Фізика"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "СуÑпільні науки"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "КонÑолі"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Звук і музика"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "СиÑтемні"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "КеруваннÑ"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Ðпаратне забезпеченнÑ"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Мовні налаштуваннÑ"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð°ÐºÑƒÐ½ÐºÐ°Ð¼Ð¸"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Безпека"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "ЕмулÑтори терміналу"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Робота з текÑтом"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "Ð¢ÐµÐ»ÐµÐ±Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ– радіо"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Програми переглÑду"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Відео"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Веб-розробка"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Ігри"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Ðктивної дії"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Пригоди"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Блоки"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "ÐаÑтільні"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Карткові"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Головоломки"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Тренажери"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Стратегії"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Утиліти"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Іграшки"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Довідка"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Екран"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "Зберігачі екрану"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Блокувальники"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Віконні менеджери"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Модулі до FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "„Window Maker“"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Зовнішній виглÑд"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Робоча облаÑÑ‚ÑŒ"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Компоненти до Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Плюшеві ведмедики"
+
+#~ msgid "Apps"
+#~ msgstr "Програми"
+
+#~ msgid "Hamradio"
+#~ msgstr "HAM радіо"
+
+#~ msgid "Math"
+#~ msgstr "Математика"
+
+#~ msgid "Technical"
+#~ msgstr "Технічні"
+
+#~ msgid "Arcade"
+#~ msgstr "Ðркадні"
+
+#~ msgid "Sports"
+#~ msgstr "Спортивні"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Подібні до тетриÑу"
+
+#~ msgid "Root-window"
+#~ msgstr "Головне вікно"
+
+#~ msgid "XShells"
+#~ msgstr "X термінали"
diff --git a/po-sections/vi.po b/po-sections/vi.po
new file mode 100644
index 0000000..ae0d971
--- /dev/null
+++ b/po-sections/vi.po
@@ -0,0 +1,475 @@
+# Vietnamese Translation for menu-section.
+# Copyright © 2007 Free Software Foundation, Inc.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
+#
+#
+msgid ""
+""
+msgstr "Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2007-07-09 15:23+0930\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <gnomevi-list@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"
+"X-Generator: LocFactoryEditor 1.6.4a6\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "Ứng dụng"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "Truy cập"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "Rađiô nghiệp dư"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "Quản lý dữ liệu"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Biên soạn"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Giáo dục"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Mô phá»ng"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "Quản lý tập tin"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Äồ hoạ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "Thiết bị di động"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "Mạng"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "Giao thông"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "Truyá»n tập tin"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "Theo dõi"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "Duyệt Mạng"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "Tin tức Mạng"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "Văn phòng"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Lập trình"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "Quản lý dự án"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Khoa há»c"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "Thiên văn há»c"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "Sinh há»c"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "Hoá há»c"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "Phân tích dữ liệu"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "Äiện tá»­ há»c"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "Kỹ thuật kỹ sư"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "Khoa địa há»c"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "Toán há»c"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "Y khoa"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "Vật lý"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "Xã hội"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Trình bao"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Âm thanh"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Hệ thống"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "Quản trị"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "Phần cứng"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "Môi trÆ°á»ng ngôn ngữ"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "Quản lý gói"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "Bảo mật"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "Mô phá»ng thiết bị cuối"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Văn bản"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "TV và Rađiô"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Bá»™ xem"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "Ảnh động"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "Phát triển WWW"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Trò chơi"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "Hành động"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Phiêu lưu"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "Khối"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Bảng"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Äánh bài"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Câu đố"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Mô phá»ng"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Chiến lược"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Công cụ"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Äồ chÆ¡i"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Trợ giúp"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Màn hình"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "LÆ°u"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "Khóa"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "Quản lý cửa sổ"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "Mô-đun FVWM"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Tạo cửa sổ"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Diện mạo"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "Vùng làm việc"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Thành phần Iceape"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Con gấu bông"
+
+#~ msgid "Apps"
+#~ msgstr "Ứng dụng"
+
+#~ msgid "Hamradio"
+#~ msgstr "Truyá»n thành tài tá»­"
+
+#~ msgid "Math"
+#~ msgstr "Toán há»c"
+
+#~ msgid "Technical"
+#~ msgstr "Kỹ thuật"
+
+#~ msgid "Arcade"
+#~ msgstr "Nhà điện tử"
+
+#~ msgid "Sports"
+#~ msgstr "Thể thao"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Khối thả"
+
+#~ msgid "Root-window"
+#~ msgstr "Cửa sổ chủ"
+
+#~ msgid "XShells"
+#~ msgstr "Ứng dụng X"
+
+#~ msgid "Admin"
+#~ msgstr "Quản lý"
diff --git a/po-sections/wo.po b/po-sections/wo.po
new file mode 100644
index 0000000..066b063
--- /dev/null
+++ b/po-sections/wo.po
@@ -0,0 +1,489 @@
+# translation of menu_po-sections.po to Wolof
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Mouhamadou Mamoune Mbacke <mouhamadoumamoune@gmail.com>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_po-sections\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2006-09-09 17:50+0000\n"
+"Last-Translator: Mouhamadou Mamoune Mbacke <mouhamadoumamoune@gmail.com>\n"
+"Language-Team: Wolof\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"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "Editor"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "Edukaasioŋ"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "Emulaasioŋ"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "Graafik"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+#, fuzzy
+msgid "Network"
+msgstr "Resóo"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+#, fuzzy
+msgid "Communication"
+msgstr "Edukaasioŋ"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr ""
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr ""
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "Prograamaasioŋ"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "Xamxam"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+#, fuzzy
+msgid "Data Analysis"
+msgstr "Baasu done"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+#, fuzzy
+msgid "Geoscience"
+msgstr "Xamxam"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr ""
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "Kaddu"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "Sistem"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr ""
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+#, fuzzy
+msgid "Terminal Emulators"
+msgstr "Emulaasioŋ"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "Tekst"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "Wanekat"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr ""
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr ""
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "Fo"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+#, fuzzy
+msgid "Action"
+msgstr "Edukaasioŋ"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "Awantiir"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+#, fuzzy
+msgid "Blocks"
+msgstr "Tëj"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "Taabal"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "Kaart"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "Puzzles"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "Simulaasioŋ"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "Estraateji"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "Jumtukaay"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "Fowukaay"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "Ndimbal"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "Ekraŋ"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Saving"
+msgstr "Sakkanal"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+#, fuzzy
+msgid "Locking"
+msgstr "Tëj"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+#, fuzzy
+msgid "Window Managers"
+msgstr "SaytukatuPalanteer"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+#, fuzzy
+msgid "FVWM Modules"
+msgstr "Modil"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+#, fuzzy
+msgid "Window Maker"
+msgstr "SaytukatuPalanteer"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "Melow bitti"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "BarabuLiggéey"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+#, fuzzy
+msgid "Iceape Components"
+msgstr "Komposaŋu Mozilla"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddies"
+
+#~ msgid "Apps"
+#~ msgstr "Apps"
+
+#~ msgid "Hamradio"
+#~ msgstr "Hamradio"
+
+#~ msgid "Math"
+#~ msgstr "Matematik"
+
+#~ msgid "Technical"
+#~ msgstr "Teknik"
+
+#~ msgid "Arcade"
+#~ msgstr "Arkaad"
+
+#~ msgid "Sports"
+#~ msgstr "Espoor"
+
+#~ msgid "Tetris-like"
+#~ msgstr "Tetris-like"
+
+#~ msgid "Root-window"
+#~ msgstr "Palanteeru reen"
+
+#~ msgid "XShells"
+#~ msgstr "XShells"
+
+#~ msgid "Admin"
+#~ msgstr "Saytu"
diff --git a/po-sections/zh_CN.po b/po-sections/zh_CN.po
new file mode 100644
index 0000000..e816c96
--- /dev/null
+++ b/po-sections/zh_CN.po
@@ -0,0 +1,473 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) Year Free Software Foundation, Inc.
+# Yongtao Yang <yongtao.yang@telia.com>, 2004.
+# Wang Xu <gnawux@gmail.com>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.36\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-01-10 07:24+0800\n"
+"Last-Translator: Wang Xu <gnawux@gmail.com>\n"
+"Language-Team: Debian Chinese [GB] <debian-chinese-gb@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "应用程åº"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "辅助工具"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "业余无线电"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "æ•°æ®ç®¡ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "编辑器"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "教育"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "模拟器"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "文件管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "图形"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "移动设备"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "网络"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "通信"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "文件传输"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "系统监控"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "网络æµè§ˆ"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "网络新闻"
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "办公"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "编程"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "项目管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "科学"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "天文"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "生物"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "化学"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "æ•°æ®åˆ†æž"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "电å­"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "工程"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "地ç†"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "æ•°å­¦"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "医学"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "物ç†"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "社会科学"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shell"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "声音"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "系统"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "管ç†"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "硬件"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "语言环境"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "软件包管ç†"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "安全"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "终端"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "文本"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "电视与收音机"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "查看器"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "视频"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "网站开å‘"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "游æˆ"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "动作类"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "冒险类"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "æ–¹å—ç±»"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "棋盘类"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "纸牌类"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "迷宫类"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "模拟类"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "策略类"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "工具"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "玩具类"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "帮助"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "å±å¹•"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "å±ä¿"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "é”定"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "窗å£ç®¡ç†å™¨"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM 模å—"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "外观"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "工作区"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape 组件"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "Teddy 熊"
+
+#~ msgid "Apps"
+#~ msgstr "程åº"
+
+#~ msgid "Hamradio"
+#~ msgstr "业余无线电"
+
+#~ msgid "Math"
+#~ msgstr "æ•°å­¦"
+
+#~ msgid "Technical"
+#~ msgstr "技术"
+
+#~ msgid "Arcade"
+#~ msgstr "街机类"
+
+#~ msgid "Sports"
+#~ msgstr "体育类"
+
+#~ msgid "Tetris-like"
+#~ msgstr "俄罗斯方å—ç±»"
+
+#~ msgid "Root-window"
+#~ msgstr "根窗å£"
+
+#~ msgid "XShells"
+#~ msgstr "XShells"
+
+#~ msgid "Admin"
+#~ msgstr "管ç†"
diff --git a/po-sections/zh_TW.po b/po-sections/zh_TW.po
new file mode 100644
index 0000000..db03884
--- /dev/null
+++ b/po-sections/zh_TW.po
@@ -0,0 +1,445 @@
+# Menu section translation
+# Copyright (C) 2003
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Asho Yeh <asho@debian.org.tw>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-section 2.1.9-3\n"
+"POT-Creation-Date: 2007-07-04 15:27+0100\n"
+"PO-Revision-Date: 2008-02-09 20:54+0800\n"
+"Last-Translator: Tetralet <tetralet@gmail.com>\n"
+"Language-Team: Debian-user in Chinese [Big5] <debian-chinese-big5@lists."
+"debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. First level entry
+#. Policy definition: Normal applications. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Applications"
+msgstr "應用程å¼"
+
+#. Second level entry under Applications
+#. Policy definition: Tools to aid people with disabilities or
+#. for machines lacking usual input devices.
+#. Examples: gok, yasr, dasher
+msgid "Accessibility"
+msgstr "無障礙"
+
+#. Second level entry under Applications
+#. Policy definition: Anything relating to HAM radio.
+#. Examples: baken, hamsoft, twlog
+msgid "Amateur Radio"
+msgstr "業餘無線電"
+
+#. Second level entry under Applications
+#. Policy definition: Interactive database programs, collection
+#. managers, address books, bibliography tools, etc.
+#. Examples: gaby, alexandria, mdbtools
+msgid "Data Management"
+msgstr "資料庫管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Editors, other than office word processors,
+#. for text-based information.
+#. Examples: ksubtile, nano, hexedit
+msgid "Editors"
+msgstr "編輯器"
+
+#. Second level entry under Applications
+#. Policy definition: Educational and training software.
+#. Examples: gtypist, gcompris, quiz
+msgid "Education"
+msgstr "教育"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to run non-native
+#. software or more than one OS at a time.
+#. Examples: wine, dosemu, qemu
+msgid "Emulators"
+msgstr "模擬器"
+
+#. Second level entry under Applications
+#. Policy definition: Tools for file management, archiving,
+#. searching, CD/DVD burning, backup, etc.
+#. Examples: file-roller, mc, baobab
+msgid "File Management"
+msgstr "檔案管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: 2D and 3D graphics manipulation software.
+#. Examples: gimp, inkscape, imagemagick
+msgid "Graphics"
+msgstr "美工"
+
+#. Second level entry under Applications
+#. Policy definition: Software that allows you to interface
+#. with mobile devices (phones, PDAs, etc.).
+#. Examples: kandy, gnokii, gnome-pilot
+msgid "Mobile Devices"
+msgstr "移動è£ç½®"
+
+#. Second level entry under Applications
+#. Policy definition: Network related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "Network"
+msgstr "網路"
+
+#. Third level entry under Network
+#. Policy definition: Mail, USENET news, chat, instant messaging,
+#. IP telephony, video conferencing software, etc.
+#. Examples: xchat, gaim, mutt
+msgid "Communication"
+msgstr "通訊"
+
+#. Third level entry under Network
+#. Policy definition: File transfer software such as download
+#. managers, FTP clients, P2P clients, etc.
+#. Examples: amule, gftp, d4x
+msgid "File Transfer"
+msgstr "檔案傳輸"
+
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under Network
+#. Policy definition: Network monitoring software.
+#. Examples: gip, ettercap, iptstate
+#. #-#-#-#-# - (menu-section 2.1.9-3) #-#-#-#-#
+#. Third level entry under System
+#. Policy definition: System information and monitoring tools, log viewers, etc.
+#. Examples: top, hal-device-manager, gtkdiskfree
+msgid "Monitoring"
+msgstr "監控程å¼"
+
+#. Third level entry under Network
+#. Policy definition: Web browsers, tools for offline browsing, etc.
+#. Examples: elinks, epiphany-browser, webhttrack
+msgid "Web Browsing"
+msgstr "網é ç€è¦½"
+
+#. Third level entry under Network
+#. Policy definition: Web feed (RSS, Atom, etc.)
+#. and podcast aggregators.
+#. Examples: akregator, kitty, liferea
+msgid "Web News"
+msgstr "å³æ™‚網é "
+
+#. Second level entry under Applications
+#. Policy definition: Office suites, word processors, spreadsheets,
+#. CRM, ERP, financial sofware, etc.
+#. Examples: openoffice.org, tinyerp-client, gnucash
+msgid "Office"
+msgstr "辨公室"
+
+#. Second level entry under Applications
+#. Policy definition: IDEs, debuggers, etc.
+#. Examples: anjuta, gdb, eclipse
+msgid "Programming"
+msgstr "程å¼èªžè¨€"
+
+#. Second level entry under Applications
+#. Policy definition: Timetable managers, group task trackers,
+#. bug tracking software, etc.
+#. Examples: planner, bugzilla, gnotime
+msgid "Project Management"
+msgstr "專案管ç†"
+
+#. Second level entry under Applications
+#. Policy definition: Scientific and engineering-related software. This is
+#. Examples: a three-level section, do not put entries directly here.
+msgid "Science"
+msgstr "科學"
+
+#. Third level entry under Science
+#. Policy definition: Astronomy-related software.
+#. Examples: celestia, spacechart, stellarium
+msgid "Astronomy"
+msgstr "天文"
+
+#. Third level entry under Science
+#. Policy definition: Biology-related software.
+#. Examples: arb, ncbi-tools-x11, seaview
+msgid "Biology"
+msgstr "生物"
+
+#. Third level entry under Science
+#. Policy definition: Chemistry-related software.
+#. Examples: chemtool, kalzium, xdrawchem
+msgid "Chemistry"
+msgstr "化學"
+
+#. Third level entry under Science
+#. Policy definition: Software designed for processing, extracting,
+#. and presenting generic scientific data.
+#. Examples: fityk, ygraph, mn-fit
+msgid "Data Analysis"
+msgstr "資料庫分æž"
+
+#. Third level entry under Science
+#. Policy definition: Circuit design tools, simulators and
+#. assemblers for microprocessors, etc.
+#. Examples: geda, gnucap, tkgate
+msgid "Electronics"
+msgstr "é›»å­"
+
+#. Third level entry under Science
+#. Policy definition: CAD, UML tools, diagram-drawing and
+#. other engineering-related software.
+#. Examples: tcm, dia, qcad
+msgid "Engineering"
+msgstr "工程"
+
+#. Third level entry under Science
+#. Policy definition: Geoscience-related software.
+#. Examples: earth3d, qgis, therion
+msgid "Geoscience"
+msgstr "地çƒç§‘å­¸"
+
+#. Third level entry under Science
+#. Policy definition: Mathematics-related software.
+#. Examples: gcalctool, snappea, xeukleides
+msgid "Mathematics"
+msgstr "數學"
+
+#. Third level entry under Science
+#. Policy definition: Medicine-related software.
+#. Examples: mssstest, gnumed-client, xmedcon
+msgid "Medicine"
+msgstr "醫學"
+
+#. Third level entry under Science
+#. Policy definition: Physics-related software.
+#. Examples: kxterm, ifrit, paw
+msgid "Physics"
+msgstr "物ç†"
+
+#. Third level entry under Science
+#. Policy definition: Social sciences-related software.
+#. Examples: gnomesword, hanzim, bibletime
+msgid "Social"
+msgstr "社會"
+
+#. Second level entry under Applications
+#. Policy definition: Various shells to be used inside a terminal emulator.
+#. Examples: bash, ksh, zsh
+msgid "Shells"
+msgstr "Shells"
+
+#. Second level entry under Applications
+#. Policy definition: Sound players, editors, and rippers/recorders.
+#. Examples: beep-media-player, grip, audacity
+msgid "Sound"
+msgstr "音效"
+
+#. Second level entry under Applications
+#. Policy definition: System related software. This is a three-level
+#. Examples: section, do not put entries directly here.
+msgid "System"
+msgstr "系統"
+
+#. Third level entry under System
+#. Policy definition: Administrative and system configuration utilities,
+#. also tools for personal user settings.
+#. Examples: gnome-control-center, configure-debian, gksu
+msgid "Administration"
+msgstr "管ç†å·¥å…·"
+
+#. Third level entry under System
+#. Policy definition: Tools for manipulating specific hardware,
+#. especially non-standard laptop hardware.
+#. Examples: toshutils, nvclock-gtk, nvtv
+msgid "Hardware"
+msgstr "硬體"
+
+#. Third level entry under System
+#. Policy definition: This section is reserved for language-env as a special
+#. case.
+msgid "Language Environment"
+msgstr "語言環境"
+
+#. Third level entry under System
+#. Policy definition: Package managers and related tools.
+#. Examples: aptitude, deborphan, smartpm
+msgid "Package Management"
+msgstr "套件管ç†"
+
+#. Third level entry under System
+#. Policy definition: Security, cryptography and privacy related software,
+#. antiviruses, tools to track and report bugs, etc.
+#. Examples: gpgkeys, bastille, avscan
+msgid "Security"
+msgstr "安全"
+
+#. Second level entry under Applications
+#. Policy definition: Graphical terminal emulators.
+#. Examples: xterm, gnome-terminal, rxvt
+msgid "Terminal Emulators"
+msgstr "終端機模擬器"
+
+#. Second level entry under Applications
+#. Policy definition: Text oriented tools like dictionaries, OCR,
+#. translation, text analysis software, etc.
+#. Examples: kdrill, stardict, turkey
+msgid "Text"
+msgstr "文字"
+
+#. Second level entry under Applications
+#. Policy definition: TV-in, TV-out, FM radio, teletext browsers, etc.
+#. Examples: gradio, gatos, alevt
+msgid "TV and Radio"
+msgstr "電視åŠå»£æ’­"
+
+#. Second level entry under Applications
+#. Policy definition: Software for viewing images, documents
+#. and other (non-video) media.
+#. Examples: gqview, evince, gthumb
+msgid "Viewers"
+msgstr "檢視器"
+
+#. Second level entry under Applications
+#. Policy definition: Video players, editors, and rippers/recorders.
+#. Examples: istanbul, totem, kino
+msgid "Video"
+msgstr "å½±åƒ"
+
+#. Second level entry under Applications
+#. Policy definition: Software for web site editing, web
+#. programming, and site administration.
+#. Examples: bluefish, screem, gphpedit
+msgid "Web Development"
+msgstr "網é é–‹ç™¼"
+
+#. First level entry
+#. Policy definition: Games and recreation. This is a top-level
+#. Examples: section, do not put entries here.
+msgid "Games"
+msgstr "éŠæˆ²"
+
+#. Second level entry under Games
+#. Policy definition: Games that involve a lot of action
+#. and require fast reflexes.
+#. Examples: xsoldier, supertux, xmoto
+msgid "Action"
+msgstr "動作"
+
+#. Second level entry under Games
+#. Policy definition: Role playing and adventure games,
+#. interactive movies and stories, etc.
+#. Examples: beneath-a-steel-sky, egoboo, kq
+msgid "Adventure"
+msgstr "冒險"
+
+#. Second level entry under Games
+#. Policy definition: Tetris-like games involving falling blocks.
+#. Examples: crack-attack, frozen-bubble, netris
+msgid "Blocks"
+msgstr "方塊"
+
+#. Second level entry under Games
+#. Policy definition: Games played on a board.
+#. Examples: phalanx, xshogi, xboard
+msgid "Board"
+msgstr "棋盤"
+
+#. Second level entry under Games
+#. Policy definition: Games involving a deck of cards.
+#. Examples: pysol, ace-of-penguins, xpat2
+msgid "Card"
+msgstr "紙牌"
+
+#. Second level entry under Games
+#. Policy definition: Tests of ingenuity and logic.
+#. Examples: xmpuzzles, sgt-puzzles, enigma
+msgid "Puzzles"
+msgstr "拼圖"
+
+#. Second level entry under Games
+#. Policy definition: Simulations of the real world
+#. in all detail and complexity.
+#. Examples: flightgear, torcs
+msgid "Simulation"
+msgstr "戰略"
+
+#. Second level entry under Games
+#. Policy definition: Games involving long-term strategic thinking.
+#. Examples: wesnoth, widelands, netpanzer
+msgid "Strategy"
+msgstr "ç­–ç•¥"
+
+#. Second level entry under Games
+#. Policy definition: Server browsers, configurators, editors, and other
+#. game-related tools that are not games themselves.
+#. Examples: xqf, crystalspace
+msgid "Tools"
+msgstr "工具"
+
+#. Second level entry under Games
+#. Policy definition: Amusements, eye-candy, entertaining
+#. demos, screen hacks (screensavers), etc.
+#. Examples: xdesktopwaves, xphoon, xpenguins
+msgid "Toys"
+msgstr "玩具"
+
+#. First level entry
+#. Policy definition: Programs that provide user documentation. Can (and
+#. should) also contain entries for important documents.
+#. Examples: debian-reference, apt-howto, dhelp
+msgid "Help"
+msgstr "求助"
+
+#. First level entry
+#. Policy definition: Programs that affect the whole screen. This
+#. Examples: is a top-level section, do not put entries here.
+msgid "Screen"
+msgstr "螢幕"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for blanking the screen. Entries of screen hacks and
+#. configuration GUIs should go to other appropriate sections.
+#. Examples: xscreensaver, xlockmore
+msgid "Saving"
+msgstr "ä¿è­·"
+
+#. Second level entry under Screen
+#. Policy definition: Tools for locking the screen.
+#. Examples: xscreensaver, xlockmore
+msgid "Locking"
+msgstr "鎖定"
+
+#. First level entry
+#. Policy definition: X window managers.
+#. Examples: fluxbox, metacity, waimea
+msgid "Window Managers"
+msgstr "視窗管ç†ç¨‹å¼"
+
+#. First level entry
+#. Policy definition: FVWM-based window manager modules.
+#. Examples: fvwm, fvwm-gnome, fvwm95
+msgid "FVWM Modules"
+msgstr "FVWM 模組"
+
+#. First level entry
+#. Policy definition: This section is reserved for wmaker as a special
+#. case.
+msgid "Window Maker"
+msgstr "Window Maker"
+
+#. Non official sections from WindowMaker
+msgid "Appearance"
+msgstr "外觀"
+
+#. Non official sections from WindowMaker
+msgid "WorkSpace"
+msgstr "工作å€"
+
+#. Frequently used unofficial sections.
+#. From Apps/Net/Iceape Components
+msgid "Iceape Components"
+msgstr "Iceape 元件"
+
+#. From Games/Toys/Teddies
+#. as in "Teddy Bear"
+msgid "Teddies"
+msgstr "玩具熊"
diff --git a/po-su-to-root/Makefile.am b/po-su-to-root/Makefile.am
new file mode 100644
index 0000000..d5a0be7
--- /dev/null
+++ b/po-su-to-root/Makefile.am
@@ -0,0 +1,29 @@
+MOs = @MO_SUTOROOT@
+POs = @PO_SUTOROOT@
+localedir = $(datadir)/locale
+
+EXTRA_DIST = $(POs)
+
+all-local: $(MOs)
+install-data-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/su-to-root.mo; \
+ done
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+su-to-root.pot::
+ xgettext -o su-to-root.pot -LShell -k -ktransl --msgid-bugs-address=menu@packages.debian.org --copyright-holder="Debian menu team" ../scripts/su-to-root
+
+clean-local:
+ rm -f *.mo
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/su-to-root.mo; \
+ done
diff --git a/po-su-to-root/Makefile.in b/po-su-to-root/Makefile.in
new file mode 100644
index 0000000..dbb4bb0
--- /dev/null
+++ b/po-su-to-root/Makefile.in
@@ -0,0 +1,322 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = po-su-to-root
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = $(datadir)/locale
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+MOs = @MO_SUTOROOT@
+POs = @PO_SUTOROOT@
+EXTRA_DIST = $(POs)
+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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu po-su-to-root/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu po-su-to-root/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
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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 all-local
+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)
+
+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-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-local
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-local distclean distclean-generic distdir dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am uninstall-local
+
+
+all-local: $(MOs)
+install-data-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/su-to-root.mo; \
+ done
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+su-to-root.pot::
+ xgettext -o su-to-root.pot -LShell -k -ktransl --msgid-bugs-address=menu@packages.debian.org --copyright-holder="Debian menu team" ../scripts/su-to-root
+
+clean-local:
+ rm -f *.mo
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/su-to-root.mo; \
+ done
+# 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/po-su-to-root/ar.po b/po-su-to-root/ar.po
new file mode 100644
index 0000000..72126ff
--- /dev/null
+++ b/po-su-to-root/ar.po
@@ -0,0 +1,51 @@
+# translation of su_to_root.po to Arabic
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Ossama M. Khayat <okhayat@yahoo.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: su_to_root\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-13 12:47+0300\n"
+"Last-Translator: Ossama M. Khayat <okhayat@yahoo.com>\n"
+"Language-Team: Arabic <support@arabeyes.org>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"الاستخدام: %s [-X] [-p <user>] -c <command>\n"
+" -c command: الأمر المطلوب تنÙيذه (إجباري)\n"
+" -p <user>: المستخدم المنÙØ° للأمر (الاÙتراضي: root)\n"
+" -X: الأمر هو برنامج يعمل عبر X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "على وشك تنÙيذ %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "يحتاج هذا الأمر إلى الصلاحيات %s لتنÙيذه.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "جاري استخدام%s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "أدخل كلمة سر %s password عند الملقن.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "كلمة السر غير صحيحة أو أن الأمر Ùشل. تريد المحاولة مجدداً؟ (Ù†/Ù„)"
diff --git a/po-su-to-root/bg.po b/po-su-to-root/bg.po
new file mode 100644
index 0000000..7c4526b
--- /dev/null
+++ b/po-su-to-root/bg.po
@@ -0,0 +1,53 @@
+# translation of bg.po to Bulgarian
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Damyan Ivanov <dam@modsoftsys.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-07-18 12:49+0300\n"
+"Last-Translator: Damyan Ivanov <dam@modsoftsys.com>\n"
+"Language-Team: Bulgarian <dict@fsa-bg.org>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"употреба: %s [-X] [-p <потребител>] -c <команда>\n"
+" -c <команда>: команда за изпълнение (задължително)\n"
+" -p <потребител>: потребител, като който да Ñе изпълни\n"
+" командата (по подразбиране: root)\n"
+" -X: командата е програма за X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Ще Ñе изпълни %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Тази команда изиÑква привилегиите на %s за да бъде изпълнена.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Използване на %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Въведете парола за %s.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"Грешна парола или грешка при изпълнението на командата. Ðов опит? (д/Ð)"
diff --git a/po-su-to-root/cs.po b/po-su-to-root/cs.po
new file mode 100644
index 0000000..80b2b4a
--- /dev/null
+++ b/po-su-to-root/cs.po
@@ -0,0 +1,48 @@
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-10-14 17:09+0200\n"
+"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"použití: %s [-X] [-p <uživatel>] -c <příkaz>\n"
+" -c příkaz: příkaz, který se má spustit (povinné)\n"
+" -p <uživatel>: uživatel, na kterého se přepnout (výchozí: root)\n"
+" -X: příkaz je programem pro X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Chystám se spustit %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Tento příkaz vyžaduje ke spuštění práva uživatele %s.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Používám %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Zadejte heslo uživatele %s.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Chybné heslo, nebo příkaz selhal. Zkusit znovu? (y/N)"
diff --git a/po-su-to-root/de.po b/po-su-to-root/de.po
new file mode 100644
index 0000000..8b55749
--- /dev/null
+++ b/po-su-to-root/de.po
@@ -0,0 +1,50 @@
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Helge Kreutzmann <debian@helgefjell.de>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-15 05:39+0200\n"
+"Last-Translator: Helge Kreutzmann <debian@helgefjell.de>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"Verwendung: %s [-X] [-p <Benutzer>] -c <Befehl>\n"
+" -c Befehl: auszuführender Befehl als Zeichenkette (zwingend)\n"
+" -p <Benutzer>: Benutzer, auf den gewechselt werden soll (Standard: root)\n"
+" -X: Befehl ist ein X11-Programm\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Führe jetzt %s aus.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr ""
+"Dieser Befehl benötigt die Privilegien von %s, um ausgeführt zu werden.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Verwende %s ...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Geben Sie das Passwort von %s ein.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Falsches Passwort oder Befehl fehlgeschlagen. Nochmal versuchen? (j/N)"
diff --git a/po-su-to-root/es.po b/po-su-to-root/es.po
new file mode 100644
index 0000000..54db696
--- /dev/null
+++ b/po-su-to-root/es.po
@@ -0,0 +1,75 @@
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+# Changes:
+# - Initial translation
+# Javier Fernández-Sanguino , 2007
+#
+#
+# Traductores, si no conoce el formato PO, merece la pena leer la
+# documentación de gettext, especialmente las secciones dedicadas a este
+# formato, por ejemplo ejecutando:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Equipo de traducción al español, por favor lean antes de traducir
+# los siguientes documentos:
+#
+# - El proyecto de traducción de Debian al español
+# http://www.debian.org/intl/spanish/
+# especialmente las notas y normas de traducción en
+# http://www.debian.org/intl/spanish/notas
+#
+# - La guía de traducción de po's de debconf:
+# /usr/share/doc/po-debconf/README-trans
+# o http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+# Si tiene dudas o consultas sobre esta traducción consulte con el último
+# traductor (campo Last-Translator) y ponga en copia a la lista de
+# traducción de Debian al español (<debian-l10n-spanish@lists.debian.org>)
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-15 13:50+0200\n"
+"Last-Translator: Javier Fernández-Sanguino <jfs@debian.org>\n"
+"Language-Team: Debian Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"Modo de uso: %s [-X] [-p <usuario>] -c <orden>\n"
+" -c orden: orden a ejecutar como una cadena (obligatoria)\n"
+" -p <usuario>: usuario al que cambiar (por omisión: root)\n"
+" -X: la orden a ejecutar es un programa X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Apunto de ejecutar %s\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Esta orden necesita privilegios de %s para poderse ejecutar.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Utilizando %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Introduzca la contraseña de %s en el indicador.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "La contraseña es incorrecta o la orden falló. ¿Desea reintentar? (s/N)"
diff --git a/po-su-to-root/et.po b/po-su-to-root/et.po
new file mode 100644
index 0000000..47c592a
--- /dev/null
+++ b/po-su-to-root/et.po
@@ -0,0 +1,50 @@
+# Estonian translation of Debian menu.
+# Copyright (C) 2008 THE Debian COPYRIGHT HOLDER
+# This file is distributed under the same license as the Debian menu package.
+# mihkel <turakas gmail com>, 2010
+msgid ""
+msgstr ""
+"Project-Id-Version: Debian menu 2.1.43\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2010-05-19 14:54+0300\n"
+"Last-Translator: mihkel <turakas@gmail.com>\n"
+"Language-Team: et <et@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Emacs\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"kasutamine: %s [-X] [-p <kasutaja>] -c <käsk>\n"
+" -c käsk: stringina käivitatav käsk (kohustuslik)\n"
+" -p <kasutaja>: kasutaja, kelleks vahetuda (vaikimisi: root)\n"
+" -X: käsk on X11 programm\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Käivitan %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "See rakendus vajab käivitamiseks %s õigusi.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Kasutan %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Sisesta %s parool sisestusaknas.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Vale parool või käsk nurjus. Proovi uuesti? (y/N)"
diff --git a/po-su-to-root/eu.po b/po-su-to-root/eu.po
new file mode 100644
index 0000000..c0a191f
--- /dev/null
+++ b/po-su-to-root/eu.po
@@ -0,0 +1,51 @@
+# translation of eu.po to Euskara
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Piarres Beobide <pi@beobide.net>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: eu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-07-09 11:54+0200\n"
+"Last-Translator: Piarres Beobide <pi@beobide.net>\n"
+"Language-Team: Euskara <Librezale@librezale.org>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"Erabilera: %s [-X] [-p <erabiltzailea>] -c <komandoa>\n"
+" -c komandoa: exekutatzeko komandoa kate bat bezala (beharrezkoa)\n"
+" -p <erabiltzailea>: erabiltzeko erabiltzailea (lehenetsia: root)\n"
+" -X: komandoa X11 programa bat da\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s exekutatzeari buruz.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Komando honek %s baimenak behar ditu exekutatzeko.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s erabiltzen...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Idatzi %s pasahitza galderan:\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Okerreko pasahitza edo komandoak huts egin du. Berriz saiatu? (b/E)"
diff --git a/po-su-to-root/fr.po b/po-su-to-root/fr.po
new file mode 100644
index 0000000..ae3e1d8
--- /dev/null
+++ b/po-su-to-root/fr.po
@@ -0,0 +1,54 @@
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: su-to-root\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-12 21:37+0100\n"
+"Last-Translator: Steve Petruzzello <dlist@bluewin.ch>\n"
+"Language-Team: French <debiab-l10n-french@debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: French\n"
+"X-Poedit-Country: SWITZERLAND\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"usage : %s [-X] [-p <identifiant>] -c <commande>\n"
+" -c commande : commande à exécuter (obligatoire)\n"
+" -p <identifiant> : identifiant sous lequel exécuter la commande (par "
+"défaut : root)\n"
+" -X : la commande est un programme X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Prêt à exécuter %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Cette commande a besoin des privilèges de %s pour être exécutée.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Utilisation de %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Veuillez indiquer le mot de passe pour %s après le prompt.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"Le mot de passe est incorrect ou la commande a échoué. Voulez-vous "
+"recommencer ? (o/N)"
diff --git a/po-su-to-root/gl.po b/po-su-to-root/gl.po
new file mode 100644
index 0000000..d57b608
--- /dev/null
+++ b/po-su-to-root/gl.po
@@ -0,0 +1,50 @@
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Jacobo Tarrio <jtarrio@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-12 11:09+0200\n"
+"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
+"Language-Team: Galician <proxecto@trasno.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"emprego: %s [-X] [-p <usuario>] -c <orde>\n"
+" -c orde: orde a executar en forma de cadea de texto (obrigatoria)\n"
+" -p <usuario>: usuario no que se converter (por defecto, root)\n"
+" -X: a orde é un programa de X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Vaise executar %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Esta orde precisa de privilexios de %s para executala.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "A empregar %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Introduza o contrasinal de %s no indicativo.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"Introduciuse un contrasinal incorrecto ou a orde fallou. ¿Quere tentalo "
+"outra vez? (s/N)"
diff --git a/po-su-to-root/gu.po b/po-su-to-root/gu.po
new file mode 100644
index 0000000..f73d05b
--- /dev/null
+++ b/po-su-to-root/gu.po
@@ -0,0 +1,47 @@
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-05 21:25+0200\n"
+"Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
+"Language-Team: Gujarati <team@utkarsh.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"ઉપયોગ: %s [-X] [-p <વપરાશકરà«àª¤àª¾>] -c <આદેશ>\n"
+" -c આદેશ: વાકà«àª¯ તરીકે ચલાવવાનો આદેશ (જરà«àª°à«€)\n"
+" -p <વપરાશકરà«àª¤àª¾>: વપરાશકરà«àª¤àª¾ બદલો (મૂળભૂત: root)\n"
+" -X: આદેશઠX11 કારà«àª¯àª•à«àª°àª® છે\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s ચલાવવા જઇ રહà«àª¯àª¾ છીàª.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "આ આદેશને ચલાવવા માટે %s પરવાનગીઓ જોઇઠછે.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s ઉપયોગ કરે છે...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "પૂછતી વખતે %s દાખલ કરો.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "અયોગà«àª¯ પાસવરà«àª¡ અથવા આદેશ નિષà«àª«àª³. ફરીથી પà«àª°àª¯àª¤à«àª¨ કરશો? (y/N)"
diff --git a/po-su-to-root/hu.po b/po-su-to-root/hu.po
new file mode 100644
index 0000000..13cc480
--- /dev/null
+++ b/po-su-to-root/hu.po
@@ -0,0 +1,46 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: su-to-root\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-12 09:08+0100\n"
+"Last-Translator: SZERVÃC Attila <sas@321.hu>\n"
+"Language-Team: Hungarian <debian-l10n-hungarian@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural>1;\n"
+"X-Poedit-Language: Hungarian\n"
+"X-Poedit-Country: HUNGARY\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"használat: %s [-X] [-p <felhasználó>] -c <parancs>\n"
+" -c parancs: futtatandó parancs mint szöveg (kötelező)\n"
+" -p <felhasználó>: e felhasználóként (alap: root)\n"
+" -X: a parancs egy X11 program\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s futtatásáról.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "E parancs %s jogait igényli a futáshoz.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s használata...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Add meg %s jelszavát a beviteli jelnél.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Rossz jelszó vagy meghiúsult parancs. Újrapróbálod? (i/N)"
diff --git a/po-su-to-root/ja.po b/po-su-to-root/ja.po
new file mode 100644
index 0000000..00837a6
--- /dev/null
+++ b/po-su-to-root/ja.po
@@ -0,0 +1,49 @@
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2008-04-11 23:30+0900\n"
+"Last-Translator: Hideki Yamane (Debian-JP) <henrich@debian.or.jp>\n"
+"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"使ã„æ–¹: %s [-X] [-p <user>] -c <command>\n"
+" -c command: 実行ã™ã‚‹ã‚³ãƒžãƒ³ãƒ‰ã‚’文字列ã§æŒ‡å®š (å¿…é ˆ)\n"
+" -p <user>: スイッãƒã™ã‚‹ãƒ¦ãƒ¼ã‚¶ (デフォルト: root)\n"
+" -X: コマンド㌠X11 プログラムã®å ´åˆã«æŒ‡å®š\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s を実行ã—よã†ã¨ã—ã¦ã„ã¾ã™ã€‚\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯å®Ÿè¡Œã« %s 権é™ãŒå¿…è¦ã§ã™ã€‚\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s を使ã„ã¾ã™...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "プロンプト㧠%s ã®ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"パスワードãŒé–“é•ã£ã¦ã„ãŸã‹ã€ã‚³ãƒžãƒ³ãƒ‰ãŒå¤±æ•—ã—ã¾ã—ãŸã€‚ã‚‚ã†ä¸€åº¦è¡Œã„ã¾ã™ã‹? (y/N)"
diff --git a/po-su-to-root/ko.po b/po-su-to-root/ko.po
new file mode 100644
index 0000000..90a72b0
--- /dev/null
+++ b/po-su-to-root/ko.po
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-26 23:27-0500\n"
+"Last-Translator: Sunjae Park <darehanl@gmail.com>\n"
+"Language-Team: Korean <debian-l10n-korean@lists.debian.org>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"사용법: %s [-X] [-p <user>] -c <command>\n"
+" -c 명령: ì‹¤í–‰í•˜ê³ ìž í•˜ëŠ” ëª…ë ¹ì„ ë¬¸ìžì—´ë¡œ(필수)\n"
+" -p <user>: 실행할 사용ìž(기본값: root)\n"
+" -X: ì´ ëª…ë ¹ì€ X11 프로그램입니다.\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s 실행하려는 중.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "ì´ ëª…ë ¹ì€ %s ê¶Œí•œì´ ìžˆì–´ì•¼ 실행할 수 있습니다.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s 사용 중...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "프롬프트ì—ì„œ %s password를 입력하십시오.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "비밀번호가 잘못ë˜ì—ˆê±°ë‚˜ ëª…ë ¹ì´ ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤. 다시 ì‹œë„할까요?(y/N)"
diff --git a/po-su-to-root/lt.po b/po-su-to-root/lt.po
new file mode 100644
index 0000000..16a0c3c
--- /dev/null
+++ b/po-su-to-root/lt.po
@@ -0,0 +1,50 @@
+# translation of menu/po-su-to-root to Lithuanian
+# Copyright (C) 2008 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Kęstutis Biliūnas <kebil@kaunas.init.lt>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2008-05-04 22:07+0300\n"
+"Last-Translator: Kęstutis Biliūnas <kebil@kaunas.init.lt>\n"
+"Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"naudojimas: %s [-X] [-p <naudotojas>] -c <komanda>\n"
+" -c komanda: komandos eilutė vykdymui (būtina)\n"
+" -p <naudotojas>: naudotojas, kurio teisėmis turi būti\n"
+" vykdoma komanda (numatytasis:·root)\n"
+" -X: komanda yra X11 aplinkos programa\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Apie %s vykdymÄ….\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Šios komandos vykdymui reikia %s teisių.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Naudojamas %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Įveskite %s slaptažodį esant kvietiniui.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Neteisingas slaptažodis arba komanda. Ar bandyti dar kartą? (t/N)"
diff --git a/po-su-to-root/ml.po b/po-su-to-root/ml.po
new file mode 100644
index 0000000..81aa722
--- /dev/null
+++ b/po-su-to-root/ml.po
@@ -0,0 +1,49 @@
+# Malayalam translation of su-ro-root
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-17 07:18+0530\n"
+"Last-Translator: Praveen|à´ªàµà´°à´µàµ€à´£àµâ€ A|à´Ž <pravi.a@gmail.com>\n"
+"Language-Team: Swathanthra|à´¸àµà´µà´¤à´¨àµà´¤àµà´° Malayalam|മലയാളം Computing|à´•à´®àµà´ªàµà´¯àµ‚à´Ÿàµà´Ÿà´¿à´™àµà´™àµ <smc-"
+"discuss@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"usage: %s [-X] [-p <ഉപയോകàµà´¤à´¾à´µàµ>] -c <ആജàµà´ž>\n"
+" -c ആജàµà´ž: à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´ªàµà´ªà´¿à´¯àµà´•àµà´•àµ‡à´£àµà´Ÿ ആജàµà´ž ഒരൠവാകàµà´•à´¾à´¯à´¿ (നിരàµâ€à´¬à´¨àµà´§à´‚)\n"
+" -p <ഉപയോകàµà´¤à´¾à´µàµ>: മാറേണàµà´Ÿ ഉപയോകàµà´¤à´¾à´µàµ (സഹജവില: root)\n"
+" -X: ആജàµà´ž ഒരൠഎകàµà´¸àµà´‡à´²à´µà´¨àµâ€ (X11) à´ªàµà´°àµ‹à´—àµà´°à´¾à´®à´¾à´£àµ\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´ªàµà´ªà´¿à´¯àµà´•àµà´•à´¾à´¨àµŠà´°àµà´™àµà´™àµà´¨àµà´¨àµ.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "à´ˆ ആജàµà´žà´¯àµà´•àµà´•àµ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´¯àµà´•àµà´•à´¾à´¨à´¾à´¯à´¿ %s à´…à´¨àµà´®à´¤à´¿à´•à´³àµâ€ ആവശàµà´¯à´®à´¾à´£àµ.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s ഉപയോഗിചàµà´šàµ കൊണàµà´Ÿà´¿à´°à´¿à´¯àµà´•àµà´•àµà´¨àµà´¨àµ ...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "%s അടയാളവാകàµà´•àµ സൂചികയിലàµâ€ നലàµâ€à´•àµà´•.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "തെറàµà´±à´¾à´¯ അടയാളവാകàµà´•àµ‹ ആജàµà´žà´¾ പരാജയമോ സംഭവിചàµà´šàµ. വീണàµà´Ÿàµà´‚ à´¶àµà´°à´®à´¿à´¯àµà´•àµà´•à´£àµ‹? (y/N)"
diff --git a/po-su-to-root/nb.po b/po-su-to-root/nb.po
new file mode 100644
index 0000000..006518f
--- /dev/null
+++ b/po-su-to-root/nb.po
@@ -0,0 +1,51 @@
+#
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Hans Fredrik Nordhaug <hans@nordhaug.priv.no>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-07-14 00:54+0200\n"
+"Last-Translator: Hans Fredrik Nordhaug <hans@nordhaug.priv.no>\n"
+"Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"bruk: %s [-X] [-p <bruker>] -c <kommando>\n"
+" -c kommando: kommandoen som skal utføres som en tekststreng "
+"(obligatorisk)\n"
+" -p <bruker>: user to switch to (standard: root)\n"
+" -X: kommandoen er et X11 program\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "På vei til å utføre %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Denne kommandoen krever %s-rettigheter for å bli utført.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Bruker %s ...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Skriv inn %s password på kommandolinja.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Ugyldig passord eller kommandoen feilet. Prøv igjen? (j/N)"
diff --git a/po-su-to-root/pt.po b/po-su-to-root/pt.po
new file mode 100644
index 0000000..ef0a998
--- /dev/null
+++ b/po-su-to-root/pt.po
@@ -0,0 +1,50 @@
+# Portuguese translation of su-to-root messages
+# Copyright (C) 2007 Miguel Figueiredo
+# This file is distributed under the same license as the menu package.
+# Ricardo Silva <ardoric@gmail.com>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-13 12:01+0100\n"
+"Last-Translator: Ricardo Silva <ardoric@gmail.com>\n"
+"Language-Team: Portuguese <traduz@debianpt.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"uso: %s [-X] [-p <utilizador>] -c <comando>\n"
+" -c comando: comando a ser executado (obrigatório)\n"
+" -p <utilizador>: utilizador para o qual mudar (root por omissão)\n"
+" -X: comando é um programa X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Está prestes a executar %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Este comando precisa dos privilégios %s para ser executado.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Usando %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Introduza a palavra-chave de %s quando lhe for pedida.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"Palavra-chave incorrecta ou falha ao excutar o comando. Tentar novamente? (y/"
+"N)"
diff --git a/po-su-to-root/pt_BR.po b/po-su-to-root/pt_BR.po
new file mode 100644
index 0000000..5809403
--- /dev/null
+++ b/po-su-to-root/pt_BR.po
@@ -0,0 +1,51 @@
+# su-to-root Brazilian Portuguese translation
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Sérgio Cipolla <secipolla@gmail.com>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.45\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2011-04-17 11:14-0300\n"
+"Last-Translator: Sérgio Cipolla <secipolla@gmail.com>\n"
+"Language-Team: \n"
+"Language: \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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"uso: %s [-X] [-p <usuário>] -c <comando>\n"
+" -c comando: comando a ser executado como uma cadeia (obrigatório)\n"
+" -p <usuário>: usuário para o qual mudar (padrão: root)\n"
+" -X: o comando é um programa X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Prestes a executar %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Este comando necessita privilégios de %s para ser executado.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Usando %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Digite a senha de %s.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Senha incorreta ou falha no comando. Tentar de novo? (s/N)"
diff --git a/po-su-to-root/ro.po b/po-su-to-root/ro.po
new file mode 100644
index 0000000..0f9cb1a
--- /dev/null
+++ b/po-su-to-root/ro.po
@@ -0,0 +1,49 @@
+# Copyright (C) 2008 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# stan ioan-eugen <stan.ieugen@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2008-02-14 23:39+0200\n"
+"Last-Translator: stan ioan-eugen <stan.ieugen@gmail.com>\n"
+"Language-Team: romanian <debian-l10n-romanian@lists.debian.org>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"utilizare: %s [-X] [-p <user>] -c <command>\n"
+" -c comandă: comandă de executat, dată ca șir de caractere (obligatoriu)\n"
+" -p <utilizator>: utilizatorul la care se face schimbarea (implicit: root)\n"
+" -X: „comandă†este a aplicație X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Se pregătește rularea %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Această comandă necestită privilegii %s pentru a fi executată.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Se utilizează %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Introduceți parola %s la prompter.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Parolă incorectă sau comanda a eșuat. Mai încercați o dată? (d/N)"
diff --git a/po-su-to-root/ru.po b/po-su-to-root/ru.po
new file mode 100644
index 0000000..c724a6a
--- /dev/null
+++ b/po-su-to-root/ru.po
@@ -0,0 +1,54 @@
+# translation of ru.po to Russian
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Yuri Kozlov <kozlov.y@gmail.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-07-01 09:34+0400\n"
+"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"ИÑпользование: %s [-X] [-p <пользователь>] -c <команда>\n"
+" -c команда: Ñтрока Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹ Ð´Ð»Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ (обÑзательно)\n"
+" -p <пользователь>: пользователь, Ñ Ð¿Ñ€Ð°Ð²Ð°Ð¼Ð¸ которого\n"
+" нужно выполнÑÑ‚ÑŒ (по умолчанию root)\n"
+" -X: команда выполнÑетÑÑ Ð² графичеÑком окружении X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "О выполнении %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Ð”Ð»Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñтой команды требуютÑÑ Ð¿Ñ€Ð°Ð²Ð° %s.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "ИÑпользуетÑÑ %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Введите пароль %s в приглашении.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Ðеправильный пароль или команда. Попробовать ещё раз? (д/Ð)"
diff --git a/po-su-to-root/su-to-root.pot b/po-su-to-root/su-to-root.pot
new file mode 100644
index 0000000..86caebb
--- /dev/null
+++ b/po-su-to-root/su-to-root.pot
@@ -0,0 +1,45 @@
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr ""
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr ""
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr ""
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr ""
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
diff --git a/po-su-to-root/sv.po b/po-su-to-root/sv.po
new file mode 100644
index 0000000..3ab56e2
--- /dev/null
+++ b/po-su-to-root/sv.po
@@ -0,0 +1,49 @@
+# Swedish translation for menu su-to-root
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Daniel Nylander <po@danielnylander.se>, 2007
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34 su-to-root\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-12 15:13+0100\n"
+"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
+"Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"användning: %s [-X] [-p <användare>] -c <kommando>\n"
+" -c kommando: kommando att köra som en sträng (obligatorisk)\n"
+" -p <användare>: användare att växla till (standard: root)\n"
+" -X: kommandot är ett X11-program\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "På väg att köra %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Det här kommandot behöver %s-privilegier för att köras.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Användning %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Ange lösenordet för %s vid prompten.\\n"
+
+# j eller y?
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Felaktigt lösenord eller kommandot misslyckades. Försök igen? (j/N)"
diff --git a/po-su-to-root/ta.po b/po-su-to-root/ta.po
new file mode 100644
index 0000000..3bbe828
--- /dev/null
+++ b/po-su-to-root/ta.po
@@ -0,0 +1,52 @@
+# translation of su-to-root.po to TAMIL
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2007.
+# Dr.T.Vasudevan <agnihot3@gmail.com>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: su-to-root\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-12 21:19+0530\n"
+"Last-Translator: Dr.T.Vasudevan <agnihot3@gmail.com>\n"
+"Language-Team: TAMIL <ubuntu-l10n-tam@lists.ubuntu.com>\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"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"பயனà¯à®ªà®¾à®Ÿà¯: %s [-X] [-p <user>] -c <command>\n"
+" -c command: ஒர௠சரமாக இயகà¯à®• வேணà¯à®Ÿà®¿à®¯ கடà¯à®Ÿà®³à¯ˆ (அவசியமà¯)\n"
+" -p <user>: எநà¯à®¤ பயனரà¯à®•à¯à®•à¯ மாற வேணà¯à®Ÿà¯à®®à¯‹ அவர௠(à®®à¯à®©à¯à®©à®¿à®°à¯à®ªà¯à®ªà¯: ரூடà¯)\n"
+" -X: கடà¯à®Ÿà®³à¯ˆ ஒர௠X11 நிரலà¯\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "%s ஠இயகà¯à®• உளà¯à®³à®¤à¯. \\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "இநà¯à®¤ கடà¯à®Ÿà®³à¯ˆà®•à¯à®•à¯ %s இன௠உரிமைகள௠நிறைவேறà¯à®±à®ªà¯à®ªà®Ÿ வேணà¯à®Ÿà¯à®®à¯. \\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "%s ஠பயனà¯à®ªà®Ÿà¯à®¤à¯à®¤à¯à®•à®¿à®±à®¤à¯ ...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "தூணà¯à®Ÿà®¿à®¯à®¿à®²à¯ %s கடவà¯à®šà¯à®šà¯Šà®²à¯à®²à¯ˆ உளà¯à®³à®¿à®Ÿà®µà¯à®®à¯. \\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr ""
+"தவறான கடவà¯à®šà¯ சொல௠அலà¯à®²à®¤à¯ கடà¯à®Ÿà®³à¯ˆ தோலà¯à®µà®¿à®¯à¯à®±à¯à®±à®¤à¯. மீணà¯à®Ÿà¯à®®à¯ à®®à¯à®¯à®±à¯à®šà®¿à®•à¯à®•à®²à®¾à®®à®¾? (ஆமà¯/இலà¯à®²à¯ˆ) "
diff --git a/po-su-to-root/th.po b/po-su-to-root/th.po
new file mode 100644
index 0000000..60735ee
--- /dev/null
+++ b/po-su-to-root/th.po
@@ -0,0 +1,48 @@
+# Thai translation of menu_su-to-root
+# Copyright (C) 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Theppitak Karoonboonyanan <thep@linux.thai.net>, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-07-17 15:54+0700\n"
+"Last-Translator: Theppitak Karoonboonyanan <thep@linux.thai.net>\n"
+"Language-Team: Thai <thai-l10n@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"วิธีใช้: %s [-X] [-p <ผู้ใช้>] -c <คำสั่ง>\n"
+" -c <คำสั่ง>: คำสั่งที่จะเรียภà¸à¸³à¸«à¸™à¸”ในรูปสตริง (จำเป็นต้องมี)\n"
+" -p <ผู้ใช้>: ผู้ใช้เป้าหมายที่ต้องà¸à¸²à¸£à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¹„ปเป็น (ค่าปริยาย: root)\n"
+" -X: คำสั่งเป็นโปรà¹à¸à¸£à¸¡ X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸ˆà¸°à¹€à¸£à¸µà¸¢à¸à¸„ำสั่ง %s\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "คำสั่งนี้ต้องà¸à¸²à¸£à¸ªà¸´à¸—ธิ์ของ %s เพื่อจะเรียà¸à¹ƒà¸Šà¹‰\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "จะใช้ %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "à¸à¸£à¸¸à¸“าป้อนรหัสผ่านของ %s ที่พรอมพต์\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "รหัสผ่านไม่ถูà¸à¸•à¹‰à¸­à¸‡ หรือคำสั่งทำงานไม่สำเร็จ จะลองใหม่หรือไม่? (y/N)"
diff --git a/po-su-to-root/uk.po b/po-su-to-root/uk.po
new file mode 100644
index 0000000..dbd1ac1
--- /dev/null
+++ b/po-su-to-root/uk.po
@@ -0,0 +1,57 @@
+# translation of uk.po to Ukrainian
+#
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Serhij Dubyk <serhijdubyk@gmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2011-03-11 12:10+0300\n"
+"Last-Translator: Serhij Dubyk <serhijdubyk@gmail.com>\n"
+"Language-Team: Ukrainian Linux Team <translation@linux.org.ua>\n"
+"Language: \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=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-Poedit-Language: Ukrainian\n"
+"X-Poedit-Country: UKRAINE\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"ВикориÑтаннÑ: %s [-X] [-p <кориÑтувач>] -c <команда>\n"
+" -c команда: Ñ€Ñдок з командою Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ (обов’Ñзково)\n"
+" -p <кориÑтувач>: кориÑтувач, з правами Ñкого\n"
+" потрібно виконувати (за умовчаннÑм root)\n"
+" -X: команда виконуєтьÑÑ Ñƒ графічному оточенні X11 \\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Буде виконано %s. \\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Ð”Ð»Ñ Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ñ†Ñ–Ñ”Ñ— команди потрібно мати права %s. \\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "ВикориÑтовуєтьÑÑ %s…\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Введіть пароль %s у запрошенні.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Ðеправильний пароль чи команда. Спробувати ще раз? (y/N)"
diff --git a/po-su-to-root/vi.po b/po-su-to-root/vi.po
new file mode 100644
index 0000000..19847df
--- /dev/null
+++ b/po-su-to-root/vi.po
@@ -0,0 +1,52 @@
+# Vietnamese translation for menu (su-to-root).
+# Copyright © 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2007 (mã nguồn)
+# Clytie Siddall <clytie@riverland.net.au>, 2007 (bản dịch)
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.34\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-06-05 21:25+0200\n"
+"PO-Revision-Date: 2007-06-14 16:39+0930\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\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.6.3b1\n"
+
+#: ../scripts/su-to-root:31
+msgid ""
+"usage: %s [-X] [-p <user>] -c <command>\n"
+" -c command: command to execute as a string (mandatory)\n"
+" -p <user>: user to switch to (default: root)\n"
+" -X: command is a X11 program\\n"
+msgstr ""
+"cách sá»­ dụng: %s [-X] [-p <ngÆ°á»i_dùng>] -c <lệnh>\n"
+" -c lệnh\t\tlệnh cần thực hiện dạng chuỗi (bắt buộc phải dùng)\n"
+" -p <ngÆ°á»i_dùng>\n"
+"\tngÆ°á»i dùng đến đó cần chuyển đổi (mặc định: root) -X\t\t\tlệnh là chÆ°Æ¡ng "
+"trình kiểu X11\\n"
+
+#: ../scripts/su-to-root:62
+msgid "About to execute %s.\\n"
+msgstr "Sắp thực hiện %s.\\n"
+
+#: ../scripts/su-to-root:63
+msgid "This command needs %s privileges to be executed.\\n"
+msgstr "Äể thá»±c hiện được, lệnh này cần thiết quyá»n %s.\\n"
+
+#: ../scripts/su-to-root:72
+msgid "Using %s...\\n"
+msgstr "Äang dùng %s...\\n"
+
+#: ../scripts/su-to-root:73
+msgid "Enter %s password at prompt.\\n"
+msgstr "Hãy nhập mật khẩu %s vào dấu nhắc.\\n"
+
+#: ../scripts/su-to-root:76
+msgid "Incorrect password or command failed. Try again? (y/N)"
+msgstr "Mật khẩu sai hay lệnh bị lỗi. Thử lại không? (c/K)"
diff --git a/po/Makefile.am b/po/Makefile.am
new file mode 100644
index 0000000..c4a06e9
--- /dev/null
+++ b/po/Makefile.am
@@ -0,0 +1,29 @@
+MOs = @MO_PROGRAMS@
+POs = @PO_PROGRAMS@
+localedir = $(datadir)/locale
+
+EXTRA_DIST = $(POs)
+
+all-local: $(MOs)
+install-data-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/menu.mo; \
+ done
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+menu.pot::
+ xgettext -o menu.pot -C -k_ -c ../install-menu/*.[ch]* ../update-menus/*.[ch]* --msgid-bugs-address=menu@packages.debian.org --copyright-holder="Debian menu team"
+
+clean-local:
+ rm -f *.mo
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/menu.mo; \
+ done
diff --git a/po/Makefile.in b/po/Makefile.in
new file mode 100644
index 0000000..1c68cc8
--- /dev/null
+++ b/po/Makefile.in
@@ -0,0 +1,322 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = po
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = $(datadir)/locale
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+MOs = @MO_PROGRAMS@
+POs = @PO_PROGRAMS@
+EXTRA_DIST = $(POs)
+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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu po/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu po/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
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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 all-local
+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)
+
+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-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-local
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-local distclean distclean-generic distdir dvi dvi-am \
+ html html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am uninstall-local
+
+
+all-local: $(MOs)
+install-data-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL) -d $$dir && \
+ $(INSTALL_DATA) $$mo $$dir/menu.mo; \
+ done
+
+%.mo : %.po
+ msgfmt -o $@ $^
+
+menu.pot::
+ xgettext -o menu.pot -C -k_ -c ../install-menu/*.[ch]* ../update-menus/*.[ch]* --msgid-bugs-address=menu@packages.debian.org --copyright-holder="Debian menu team"
+
+clean-local:
+ rm -f *.mo
+uninstall-local:$(MOs)
+ for mo in $(MOs); do \
+ lang=`basename $$mo .mo`; \
+ dir=$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ rm -f $$dir/menu.mo; \
+ done
+# 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/po/ast.po b/po/ast.po
new file mode 100644
index 0000000..80f3166
--- /dev/null
+++ b/po/ast.po
@@ -0,0 +1,414 @@
+# menu translation to Spanish
+# Copyright (C) 2004-2007 Software in the Public Interest
+# This file is distributed under the same license as the menu package.
+#
+# Changes:
+# - Initial translation
+# Javier Fernandez-Sanguino Peña <jfs@debian.org>, 2004-2007
+#
+#
+# Traductores, si no conoce el formato PO, merece la pena leer la
+# documentación de gettext, especialmente las secciones dedicadas a este
+# formato, por ejemplo ejecutando:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Equipo de traducción al español, por favor, lean antes de traducir
+# los siguientes documentos:
+#
+# - El proyecto de traducción de Debian al español
+# http://www.debian.org/intl/spanish/coordinacion
+# especialmente las notas de traducción en
+# http://www.debian.org/intl/spanish/notas
+#
+# - La guía de traducción de po's de debconf:
+# /usr/share/doc/po-debconf/README-trans
+# o http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.19\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2009-01-12 08:05+0100\n"
+"Last-Translator: Marcos Alvarez Costales <marcos.alvarez.costales@gmail."
+"com>\n"
+"Language-Team: Debian Asturian <softast-xeneral@lists.sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: Asturian\n"
+"X-Poedit-Country: SPAIN\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Dióse un argumentu de tamañu cero a la función d'imprentación."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: comprobando'l direutoriu %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: criando'l direutoriu %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Nun pudo criase'l direutoriu (%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Nun pudo camudase al direutoriu (%1): %2."
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: yá esiste'l direutoriu %1\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [soportáu]: nome=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "La entrada de menú nun inclúi'l campu obligatoriu \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valor desconocíu pal campu %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" namái pue ser \"sensitive\" o \"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Avisu: Identificador desconocíu `%1' na llinia %2 del ficheru %"
+"3. Omitiendo.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: menu-method %2 tien de definir %1"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Nun pudo abrise'l ficheru %1 (tamién se tentó %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Nun pudo abrise'l ficheru %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Tien de poder escribise nel ficheru amosáu arriba (o el direutoriu tien\n"
+"d'esistir) pa poder criar el/los ficheru/os de configuración d'usuario pal\n"
+"xestor de ventanes.\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Avisu: Nun s'alcontró la cadena %1 nel ficheru de plantía %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <métodu de menú>\n"
+" Llee les entraes de menú de la entrada estándar en formatu \n"
+" \"update-menus --stdout\" y xenera ficheros de menú usando'l \n"
+" métodu de menú conseñáu.\n"
+" Opciones dables pa install-menu: \n"
+" -h --help : esti mensax\n"
+" --remove : desanicia'l menú n'arróu de xeneralu.\n"
+" -v --verbose : ser más verbosu\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ¡Nun s'especificó dengún guión de métodu de menú!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Nun pudo abrise'l guión %1 pa llectura\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Avisu: El guión %1 nun proporciona removemenu, nun se desaniciará'l menú\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Executando: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: albortando\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Nun concasa'l númberu d'argumentos a la función %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Función desconocía: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "La función \"%1\" úsase de forma indireuta pero nun ta definía"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificador desconocíu: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Fallu na conversión de codificación: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Fallu desconocíu."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Fallu desconocíu, mensax=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Nun pudo abrise'l ficheru \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Nun pudo unviase datos a traviés de \"%1\" (abrióse la tubería pa llectura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: falta la marca obligatoria: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(dablemente) entrada estándar"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "Nel ficheru \"%1\", en (o na defición que fina en) la llinia %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "En dalgún llugar del ficheru d'entrada:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Fallu de ficheru non esperáu."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Fallu de llinia inesperáu."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Esperábase un identificador."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Esperaba: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Caráuter inesperáu: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Esperábase un booleanu (bien braeru o falsu).\n"
+"Alcontróse: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Mou de compatibilidá desconocíu: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace y $with tendríen de tener la "
+"mesma llonxitú."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"ficheru %1 llinia %2:\n"
+"Descartando la entrada que requier un paquete omitíu %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lleendo regles de torna de %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lleendo la llista de paquetes instalaos..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "La execución de %1 nun xeneró denguna salida o devolvió un fallu.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Omitiendo'l ficheru polos errores producíos...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lleendo los ficheros d'entraes de menú en %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Fallu al lleer %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Alcontráronse %1 entraes de menú (un total de %2). "
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Executando'l métodu: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Nun pudo executase'l guión %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "El guión %1 devolvió un estáu de fallu %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "El guión %1 recibió la señal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Executando'l métodu: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Nun pudo criase la tubería."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Executando métodos de menú en %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Otros procesos de \"update-menus\" tán bloquiando %1, zarrando."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Nun pudo bloquiae %1: %2 - Albortando."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Nun pudo escribise nel ficheru de bloquéu %1 - Albortando."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Nun pudo desaniciase'l ficheru de bloquéu %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus ta executándose por un usuariu."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Esperando a que fine dpkg (diendo a segundu planu).\n"
+"(comprobando %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "La salida postrera (si la hubiere) amosaráse en %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg nun ta bloquiando l'área d'estáu de dpkg, bien."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Mou d'usu: update-menus [opciones]\n"
+"Recueye la información de paquetes de la base de datos de menú y xenera\n"
+"menús pa tolos programes qu'inclúin métodos de menú, davezu\n"
+"xestores de ventanes.\n"
+" -d Xenerar mensaxes de depuración.\n"
+" -v Ser verbosu ya conseñar lo que ta pasando.\n"
+" -h --help Esti mensax.\n"
+" --menufilesdir=<direutoriu> Amestar <direutoriu> a la llista de "
+"direutorios\n"
+" de menú a guetar.\n"
+" --menumethod=<método> Executar namái el métodu de menú <métodu>.\n"
+" --nodefaultdirs Deshabilita la utilización de los "
+"direutorios \n"
+" de menú estándar.\n"
+" --nodpkgcheck Nun compruebe si los paquetes tán instalaos.\n"
+" --remove Desanicia los menús xeneraos n'arróu de "
+"crialos.\n"
+" --stdout Volcar la llista de menús nun formatu que "
+"pueda\n"
+" ser unviáu a install-menu.\n"
+" --version Amosar la información de versión y colar.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condición d'instalación desconocía \"%1\" (anguaño namái se reconoz \"package"
+"\")."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Mostrar la información de versión y salir.\n"
diff --git a/po/cs.po b/po/cs.po
new file mode 100644
index 0000000..adb68b1
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,372 @@
+# Debian menu system
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.30\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-14 15:21+0200\n"
+"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Funkci print byl zadán argument nulové velikosti."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: kontroluji adresář %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: vytvářím adresář %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Nepodařilo se vytvořit adresář(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Nepodařilo se změnit adresář(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: adresář %1 již existuje\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: jméno=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Položce menu chybí povinné pole „%1“.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Neznámá hodnota pole %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: „hotkeycase“ může být pouze „sensitive“ nebo „insensitive“\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Varování: Neznámý identifikátor „%1“ na řádku %2 v souboru %3. "
+"Ignoruji.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 musí být definována v menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Nemohu otevřít soubor %1 (zkusil jsem i %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Nemohu otevřít soubor %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Abych mohl vytvoÅ™it uživatelské konfiguraÄní soubory pro správce oken,\n"
+"musí být zmíněné soubory zapisovatelné (a/nebo musí existovat adresář).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Varování: řetězec %1 se neobjevil v šabloně %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <metoda-menu>\n"
+" NaÄte položky menu ze stdin ve formátu \"update-menus --stdout\"\n"
+" a vygeneruje soubory menu pomocí zadané metody-menu.\n"
+" Volby install-menu:\n"
+" -h --help : tato nápověda\n"
+" --remove : místo vytvoření menu smaže.\n"
+" -v --verbose : bude upovídanější\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nebyl zadán skript menu-method !"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Nemohu otevřít skript %1 pro Ätení.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Varování: skript %1 neposkytuje removemenu, menu nebylo odstraněno\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Spouštím: „%1“\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: přerušuji\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Neodpovídá poÄet argumentů funkce %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Neznámá funkce: „%1“"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Nepřímo použitá, ale nedefinovaná funkce: „%1“"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Neznámý identifikátor: „%1“"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Chyba při převodu kódování: „%1“"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Neznámá chyba."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Neznámá chyba, zpráva=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Nelze otevřít soubor „%1“."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Nemohu protlaÄit data pÅ™es „%1“ (roura otevÅ™ena pro Ätení)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: chybí vyžadovaná znaÄka: „%2“"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(pravděpodobně) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "V souboru „%1“ na řádku %2 (nebo v definici, která zde konÄí):\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Někde ve vstupním souboru:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "NeoÄekávaný konec souboru."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "NeoÄekávaný konec řádku."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "OÄekáván identifikátor."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "OÄekáván: „%1“"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "NeoÄekávaný znak: „%1“"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"OÄekávána pravdivostní hodnota (pravda nebo nepravda).\n"
+"Nalezeno: „%1“"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Neznámý režim: „%1“"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace a $with musí mít stejnou "
+"délku."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"soubor %1 řádek %2:\n"
+"Zahazuji položku vyžadující chybějící balík %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Čtu překladová pravidla v %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Čtu seznam nainstalovaných balíků..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Spuštění %1 nevytvořilo žádný výstup, ani nevrátilo chybu.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Přeskakuji soubor kvůli chybám...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "ÄŒtu soubory menu-entry v %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Chyba Ätení %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Nalezených položek: %1 (celkem %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Spouštím metodu: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skript %1 nemohl být spuštěn."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skript %1 skonÄil v chybovém stavu %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skript %1 obdržel signál %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Spouštím metodu: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Nemohu vytvořit rouru."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Spouštím menu-methods v %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Jiné procesy update-menus již mají zamknutý %1, konÄím."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Nemohu zamknout %1: %2 - Přerušuji."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Nemohu zapisovat do zámku %1 - Přerušuji."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Nemohu odstranit zámek %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus je spuštěn uživatelem."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"ÄŒekám na dokonÄení dpkg (vÄ›tvím na pozadí).\n"
+"(kontroluji %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Další (pokud nějaký) výstup se objeví v %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg nezamyká stavovou oblast dpkg, dobře."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Použití: update-menus [volby] \n"
+"Z databáze menu posbírá data o balících a vytvoří menu pro všechny\n"
+"programy, které poskytují menu-methods, což jsou obvykle správcové oken.\n"
+" -d Vypíše ladicí hlášky.\n"
+" -v Bude sdílnější ohledně probíhajících akcí.\n"
+" -h, --help Tato nápověda.\n"
+" --menufilesdir=<adr> Přidá <adr> do seznamu adresářů pro prohledávání.\n"
+" --menumethod=<metoda> Spustí pouze metodu <metoda>.\n"
+" --nodefaultdirs Zakáže použití všech standardních adresářů.\n"
+" --nodpkgcheck Nekontroluje, zda jsou balíky nainstalovány.\n"
+" --remove Místo vytvoření menu smaže.\n"
+" --stdout Vypíše seznam menu ve formátu vhodném pro použití\n"
+" v programu install-menu.\n"
+" --version Vypíše informace o verzi a skonÄí.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Neznámá instalaÄní podmínka „%1“ (nyní je podporována pouze „package“)."
diff --git a/po/da.po b/po/da.po
new file mode 100644
index 0000000..9d30972
--- /dev/null
+++ b/po/da.po
@@ -0,0 +1,377 @@
+# Danish translation of menu.
+# Copyright (C) 2011 menu og nedenstående oversættere.
+# This file is distributed under the same license as the menu package.
+# Morten Brix Pedersen <morten@wtf.dk>, 2005.
+# Joe Hansen (joedalton2@yahoo.dk), 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.44\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2011-01-10 17:30+01:00\n"
+"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
+"Language-Team: Danish <debian-l10n-danish@lists.debian.org>\n"
+"Language: da\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argument med nul-størrelse angivet til print-funktion."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: tjekker mappen %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: opretter mappen %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Kunne ikke oprette mappe(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Kunne ikke ændre mappe(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: mappen %1 findes allerede\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: name=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menupunkt mangler det obligatoriske felt \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Ukendt værdi i feltet %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" kan kun være \"sensitive\" eller \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Advarsel: Ukendt identifier '%1' på linje %2 i filen %3. "
+"Ignorerer.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 skal være defineret i menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Kan ikke åbne fil %1 (prøvede også %2)\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Kan ikke åbne fil %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"For at kunne oprette bruger opsætningsfilerne for "
+"vindueshåndteringsprogrammer, skal den ovenstående fil være skrivbar (og "
+"mappen skal eksistere).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Advarsel: Strengen %1 blev ikke fundet i eksempelfil %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-metode>\n"
+" Læs menupunkter fra standard-ind i formatet \"update-menus --stdout\"\n"
+" og generer menufiler med den angivne menu-metode.\n"
+" Tilvalg til install-menu:\n"
+" -h --help : denne besked\n"
+" --remove : fjern menuen i stede nfor at oprette den.\n"
+" -v --verbose : skriv mere om hvad der sker\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: intet menu-metode skript angivet!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Kan ikke åbne skript %1 til læsning.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Advarsel: Skript %1 tilbyder ikke removemenu, menu er ikke slettet\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Kører: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: afbryder\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Antallet af argumenter til funktion %1 passer ikke."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Ukendt funktion: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Indirekte brugt, men ikke defineret funktion: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Ukendt identificering: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Fejl i tegn-konverteringen: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Ukendt fejl."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Ukendt fejl, besked=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Ikke i stand til at åbne filen \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Kunne ikke lede data videre gennem \"%1\" ('pipe' åbnet for læsning)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: manglende krævet mærke: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(sandsynligvis) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "I fil \"%1\", på (eller i definitionen der ender på) linje %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Et sted i inddata-filen:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Uventet afslutning på fil."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Uventet afslutning på linje."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identificering forventet."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Forventet: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Uventet bogstav: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolsk værdi (enten sand eller falsk) forventet.\n"
+"Fandt: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Ukendt compat mode: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace og $with skal have samme "
+"længde."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fil %1 linje %2:\n"
+"Fjerner punkt der kræver manglende pakke %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Læser oversættelsesregler i %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Læser liste af installerede pakker..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Eksekvering af %1 generede ingen uddata, eller returnerede en fejl.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Skipper filen på grund af fejl...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Læser menupunkts filer i %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Fejl ved læsning af %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menupunkter fundet (%2 totalt)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Kører metode: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skript %1 kunne ikke eksekveres."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skript %1 returnerede fejlstatus %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skript %1 modtog signal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Kører metode: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Kan ikke oprette datakanal (pipe)."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Kører menu-metoder i %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andre update-menus processer låser allerede &1, afslutter."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Kan ikke låse %1: %2 - Afbryder."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kan ikke skrive til lås-filen %1 - Afbryder."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kan ikke fjerne låsfilen %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus er kørt af bruger."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Venter på at dpkg afslutter (gemmer sig i baggrunden).\n"
+"(tjekker %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Yderligere uddata (hvis nogen) vil kunne ses i %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg låser ikke dpkg statusområde, godt."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Brug: update-menus [tilvalg] \n"
+"Hent pakkedata fra menu databasen og opret menuer for alle programmer \n"
+"der har menu-metoder, normalt vindueshåndteringsprogrammer.\n"
+" -d Vis fejlsøgningsbeskeder\n"
+" -v Vis i detaljer, hvad der sker.\n"
+" -h, --help Denne besked.\n"
+" --menufilesdir=<mappe> Tilføj <mappe> til listen over menumapper, der skal "
+"gennemsøges.\n"
+" --menumethod=<metode> Kør kun menumetoden <metode>.\n"
+" --nodefaultdirs Deaktiverer brugen af alle standard-menumapperne.\n"
+" --nodpkgcheck Tjek ikke om pakker er installeret.\n"
+" --remove Fjern i steden for oprettede menuer.\n"
+" --stdout Viser menulisten i et format, der kan ledes videre\n"
+" til install-menu.\n"
+" --version Vis versionsinformation og afslut.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Ukendt installationstilstand \"%1\" (endnu understøttes kun \"package\")."
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 0000000..216eea9
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,379 @@
+# Debian menu system
+# This file is distributed under the same license as the menu package.
+# Copyright (C) 2004 Debian menu team.
+# Tobias Toedter <t.toedter@gmx.net>, 2004.
+# Sven Joachim <svenjoac@gmx.de>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.37\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-11-01 20:46+0100\n"
+"Last-Translator: Sven Joachim <svenjoac@gmx.de>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Der print-Funktion wurde ein Argument der Länge Null übergeben."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: Überprüfe Verzeichnis %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: Erstelle Verzeichnis %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Konnte Verzeichnis %1 nicht erstellen: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Konnte nicht in Verzeichnis %1 wechseln: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: Verzeichnis %1 existiert bereits\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [unterstützt]: name=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Dem Menüeintrag fehlt das Pflichtfeld »%1«.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Unbekannter Wert für Feld %1=»%2«.\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: »hotkeycase« kann nur »sensitive« oder »insensitive« sein\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Warnung: Unbekannter Bezeichner »%1« in Zeile %2 der Datei %3 "
+"wird ignoriert.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 muss in der Menü-Methode %2 definiert werden."
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Kann Datei %1 nicht öffnen (%2 wurde ebenfalls versucht).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Kann Datei %1 nicht öffnen.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Um die Benutzer-Konfigurationsdatei(en) für den Fenstermanager erstellen zu\n"
+"können, muss die oben aufgeführte Datei schreibbar sein (und/oder das\n"
+"Verzeichnis muss existieren).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Warnung: Die Zeichenkette %1 kam in der Vorlagendatei %2 nicht vor\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <Menü-Methode>\n"
+" Menüeinträge von stdin im »update-menus --stdout«-Format lesen\n"
+" und Menüdateien mittels der angegebenen Menü-Methode erstellen.\n"
+" Optionen für install-menu:\n"
+" -h --help : Dieser Text\n"
+" --remove : Das Menü entfernen statt es zu erstellen.\n"
+" -v --verbose : Ausführliche Ausgaben\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: Kein Skript für die Menü-Methode angegeben!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Kann das Skript %1 nicht zum Lesen öffnen.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Warnung: Skript %1 stellt »removemenu« nicht bereit, Menü nicht entfernt\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Führe »%1« aus:\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: Abbruch\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Die Anzahl der Argumente für Funktion %1 stimmt nicht überein."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Unbekannte Funktion: »%1«"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Indirekt benutzte, aber nicht definierte Funktion: »%1«"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Unbekannter Bezeichner: »%1«"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Fehler bei der Umwandlung der Kodierung: »%1«"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Unbekannter Fehler."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Unbekannter Fehler, Text=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Konnte Datei »%1« nicht öffnen."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Konnte Daten nicht durch »%1« weiterleiten (die Pipe ist zum Lesen geöffnet)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: Erforderliche Marke fehlt: »%2«"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(wahrscheinlich) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "In der Datei »%1«, Zeile %2 (oder der Definition, die dort endet):\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Irgendwo in der Eingabedatei:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Unerwartetes Dateiende."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Unerwartetes Zeilenende."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Bezeichner erwartet."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Erwartet: »%1«"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Unerwartetes Zeichen: »%1«"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolescher Wert (entweder »true« oder »false«) erwartet.\n"
+"Gefunden: »%1«"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Unbekannter compat-Modus: »%1«"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace und $with müssen gleichlang "
+"sein."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"Datei %1 Zeile %2:\n"
+"Verwerfe Eintrag, der fehlendes Paket %3 erfordert."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lese Ãœbersetzungsregeln in %1 ein."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lese Liste der installierten Pakete ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr ""
+"Die Ausführung von %1 erzeugte keine Ausgabe oder gab einen Fehler zurück.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Ãœberspringe Datei aufgrund von Fehlern ...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lese Dateien für Menüeinträge in %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Fehler beim Lesen von %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 Menüeinträge gefunden (insgesamt %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Ausführen der Methode: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skript %1 konnte nicht ausgeführt werden."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skript %1 gab den Fehlerstatus %2 zurück."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skript %1 erhielt das Signal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Ausführen der Methode: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Kann Pipe nicht erstellen."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Führe Menü-Methoden in %1 aus."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andere update-menus-Prozesse sperren %1 bereits, beendet."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Kann %1 nicht sperren: %2 - Abbruch."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kann die Sperrdatei %1 nicht schreiben - Abbruch."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kann die Sperrdatei %1 nicht löschen."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus wird vom Benutzer ausgeführt."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Warte auf die Beendigung von dpkg (verzweige in den Hintergrund).\n"
+"(Überprüfe %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Weitere Ausgaben (falls überhaupt) werden in %1 erscheinen."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg sperrt nicht den dpkg-Statusbereich, gut."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Aufruf: update-menus [Optionen] \n"
+"Sammeln der Paketdaten aus der Menüdatenbank und Erstellen von Menüs für\n"
+"alle Programme, die Menü-Methoden zur Verfügung stellen, normalerweise\n"
+"Fenstermanager.\n"
+" -d Ausgabe von Debugmeldungen.\n"
+" -v Ausführlicher Bericht, was gerade passiert.\n"
+" -h, --help Dieser Text.\n"
+" --menufilesdir=<Verz> <Verz> zur Liste der zu durchsuchenden\n"
+" Menüverzeichnisse hinzufügen.\n"
+" --menumethod=<Methode> Nur die Menü-Methode <Methode> ausführen.\n"
+" --remove Menüs entfernen statt erstellen.\n"
+" --nodefaultdirs Keines der Standard-Menüverzeichnisse verwenden.\n"
+" --nodpkgcheck Nicht überprüfen, ob Pakete installiert sind.\n"
+" --stdout Ausgabe der Menüliste in einem Format, das für die\n"
+" Weiterleitung an install-menu geeignet ist.\n"
+" --version Versionsinformationen ausgeben und beenden.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Unbekannte Installationsbedingung »%1« (zurzeit wird nur »package« "
+"unterstützt)."
diff --git a/po/el.po b/po/el.po
new file mode 100644
index 0000000..acb2421
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,382 @@
+# translation of menu_el.po to Greek
+# translation of menu.po to Greek
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR Debian menu team.
+# Greek Translation Team <debian-l10n-greek@lists.debian.org>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_el\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2005-02-19 16:15EEST\n"
+"Last-Translator: Greek Translation Team <debian-l10n-greek@lists.debian."
+"org>\n"
+"Language-Team: Greek <debian-l10n-greek@lists.debian.org>\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"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "ΠαÏάμετÏος Î¼Î·Î´ÎµÎ½Î¹ÎºÎ¿Ï Î¼ÎµÎ³Î­Î¸Î¿Ï…Ï‚ στη συνάÏτηση print."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: έλεγχος καταλόγου %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: δημιουÏγία καταλόγου %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "ΑδÏνατη η δημιουÏγία του καταλόγου(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "ΑδÏνατη η αλλαγή του καταλόγου(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: ο κατάλογος %1 υπάÏχει ήδη\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: name=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Λείπει το υποχÏεωτικό πεδίο \"%1\" από την καταχώÏιση μενοÏ.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Άγνωστη τιμή για το πεδίο %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" μποÏεί να είναι μόνο \"sensitive\" ή "
+"\"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: ΠÏοειδοποίηση: Άγνωστο αναγνωÏιστικό`%1' στη γÏαμμή %2 στο "
+"αÏχείο %3. Θα αγνοηθεί.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: Ï€Ïέπει να οÏιστεί το %1 στο menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "ΑδÏνατο το άνοιγμα του αÏχείου %1 (δοκιμάστηκε επίσης το %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "ΑδÏνατο το άνοιγμα του αÏχείου %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Για να είναι δυνατή η δημιουÏγία των αÏχείων Ïυθμίσεων των χÏηστών για\n"
+"τον διαχειÏιστή παÏαθÏÏων, το παÏαπάνω αÏχείο θα Ï€Ïέπει να είναι εγγÏάψιμο\n"
+"(και/ή ο κατάλογος θα Ï€Ïέπει να υπάÏχει).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "ΠÏοειδοποίηση: η συμβολοσειÏά %1 δεν υπάÏχει στο Ï€Ïότυπο αÏχείο %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" Ανάγνωση των καταχωÏίσεων Î¼ÎµÎ½Î¿Ï Î±Ï€ÏŒ τη stdin στη μοÏφή που παÏάγει η\n"
+" \"update-menus --stdout\" και παÏαγωγή των αÏχείων Î¼ÎµÎ½Î¿Ï Ï‡Ïησιμοποιώντας\n"
+" την οÏισμένη menu-method.\n"
+" Επιλογές για το install-menu:\n"
+" -h --help : αυτό το μήνυμα\n"
+" -v --verbose : αναλυτική έξοδος\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: δεν οÏίστηκε σενάÏιο menu-method!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "ΑδÏνατο το άνοιγμα του σεναÏίου %1 για ανάγνωση.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Εκτελείται: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: εγκατάλειψη\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Λάθος αÏιθμός παÏαμέτÏων για τη συνάÏτηση %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Άγνωστη συνάÏτηση: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Έμμεσα χÏησιμοποιοÏμενη, αλλά όχι δηλωμένη συνάÏτηση: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Άγνωστο αναγνωÏιστικό: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Σφάλμα μετατÏοπής κωδικοποιήσης: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Άγνωστο σφάλμα."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Άγνωστο σφάλμα, μήνυμα=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "ΑδÏνατο το άνοιγμα του αÏχείου \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "ΑδÏνατη η σωλήνωση μέσω του \"%1\" (ανοίξε σωλήνωση για ανάγνωση)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: λείπει απαιτοÏμενη ετικέτα: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(μάλλον) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "Στο αÏχείο \"%1\", στη γÏαμμή (ή στον οÏισμό που καταλήγει εκεί) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Κάπου στο αÏχείο εισόδου:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Μή αναμενόμενο τέλος αÏχείου."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Μή αναμενόμενο τέλος γÏαμμής."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Αναμενόμενο αναγνωÏιστικό."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Αναμενόταν: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Μή αναμενόμενος χαÏακτήÏας: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Αναμενόταν Boolean (είτε true ή false).\n"
+"Î’Ïέθηκε: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Άγνωστη κατάσταση compat: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): το $replace και το $with Ï€Ïέπει να "
+"είναι ισομήκη."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Ανάγνωση κανόνων μετάφÏασης στο %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Ανάγνωση λίστας εγκατεστημένων πακέτων..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Η εκτέλεση του %1 δεν παÏήγαγε έξοδο ή επέστÏεψε σφάλμα.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "ΠαÏαλείπεται το αÏχείο λόγω σφαλμάτων...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Ανάγνωση των αÏχείων menu-entry στο %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Σφάλμα κατά την ανάγνωση του %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Î’Ïέθηκαν %1 καταχωÏίσεις Î¼ÎµÎ½Î¿Ï (σÏνολο %2)."
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "Εκτέλεση μεθόδου: %1"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "ΑδÏνατη η εκτέλεση του σεναÏίου %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Το σενάÏιο %1 επέστÏεψε κωδικό σφάλματος %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Το σενάÏιο %1 δέχτηκε σήμα %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Εκτέλεση μεθόδου: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "ΑδÏνατο το άνοιγμα σωλήνωσης."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Εκτέλεση των menu-methods στο %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Άλλες διεÏγασίες update-menus έχουν ήδη κλειδώσει το %1, τεÏματισμός."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "ΑδÏνατο το κλείδωμα του %1: %2 - Εγκατάλειψη."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "ΑδÏνατη η εγγÏαφή στο αÏχείο κλειδώματος %1 - Εγκατάλειψη."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "ΑδÏνατη η διαγÏαφή του αÏχείου κλειδώματος %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Το Update-menus εκτελείται από χÏήστη."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Αναμονή για ολοκλήÏωση του dpkg (διχάλωση στο υπόβαθÏο).\n"
+"(έλεγχος του %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Επιπλέον έξοδος (αν υπάÏχει) θα εμφανιστεί στο %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "ΩÏαία, το dpkg δεν έχει κλειδώση το αÏχείο status του dpkg."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"ΧÏήση: update-menus [επιλογές] \n"
+"ΣυγκέντÏωση πληÏοφοÏιών πακέτων από τη βάση δεδομένων του menu και\n"
+"δημιουÏγία καταχωÏίσεων Î¼ÎµÎ½Î¿Ï Î³Î¹Î± όλα τα Ï€ÏογÏάμματα που παÏέχουν\n"
+"menu-methods, συνήθως τους διαχειÏιστές παÏαθÏÏων.\n"
+" -d Εμφάνιση μηνυμάτων αποσφαλμάτωσης.\n"
+" -v Αναλυτική έξοδος.\n"
+" -h, --help Αυτό το μήνυμα.\n"
+" --menufilesdir=<dir> ΠÏοσθήκη <dir> στις λίστες των καταλόγων Î¼ÎµÎ½Î¿Ï Î³Î¹Î±\n"
+" ανάγνωση.\n"
+" --menumethod=<method> Εκτέλεση μόνο της μεθόδου <method>.\n"
+" --nodefaultdirs Îα μη χÏησιμοποιηθοÏν όλοι οι Ï€Ïότυποι κατάλογοι "
+"μενοÏ.\n"
+" --stdout Έξοδος της λίστας Î¼ÎµÎ½Î¿Ï ÏƒÎµ μοÏφή κατάλληλη για\n"
+" σωλήνωση στο install-menu.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Άγνωστη συνθήκη εγκατάστασης \"%1\" (Ï€Ïος το παÏόν, μόνο το \"package\" "
+"υποστηÏίζεται)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version ΠÏοβολή πληÏοφοÏιών εξόδου και έξοδος.\n"
diff --git a/po/eo.po b/po/eo.po
new file mode 100644
index 0000000..756618b
--- /dev/null
+++ b/po/eo.po
@@ -0,0 +1,378 @@
+# Debian Menu Utilities, esperanto.
+# Copyright (C) 2005 Debian menu team
+# This file is distributed under the same license as the menu package.
+# MJ Ray <mjr@debian.org>, 2005
+# Felipe Castro <fefcas@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.39\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2008-06-29 19:10-0300\n"
+"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
+"Language-Team: Esperanto <debian-l10n-esperanto@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Nulgranda argumento al printfunkcio."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: kontrolas dosierujon %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: kreas dosierujon %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Ne eblis krei la dosierujon(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Ne eblis ÅanÄi la dosierujon(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: la dosierujo %1 jam ekzistas\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nomo=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "La menu-rikordo malhavas la postulatan kampon \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Nekonata valoro por kampo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" nur povas esti \"sensitive\" aÅ­ \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Averto: Nekonata identigilo `%1' ĉe linio %2 en dosiero %3. "
+"Ignorata.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: Oni devas difini '%1'-on en menu-metodo %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Ne eblas malfermi la dosieron %1 (ni krome provis %2-on).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Ne eblas malfermi la dosieron %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Por rajti krei agordo-dosiero(j)n de fenestro-regilo por la uzanto, la\n"
+"supra dosiero bezonas esti skribebla (kaj/aÅ­ la dosierujo bezonas ekzisti).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Averto: la ĉeno %1 ne aperis en la stilfolio %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-metodo>\n"
+" Legi menu-rikordojn el stdin laÅ­ la formo de \"update-menus --stdout\"\n"
+" kaj krei menu-dosierojn kun la donita menu-metodo.\n"
+" Opcioj:\n"
+" -h --help : montras ĉi tiun mesaÄon\n"
+" --remove : forigas la menuon anstataÅ­ krei Äin.\n"
+" -v --verbose : fariÄas \"babilema\"\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: neniu menu-metoda skripto estis indikita!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Ne eblas malfermi la skripton %1 por legi.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Averto: la skripto %1 ne disponigas 'removemenu'-on: la menuo ne estis "
+"forigita\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Lanĉanta: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: ĉesiganta\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "La nombro da argumentoj por la funkcio %1 malkongruas."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Nekonata funkcio: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Malrekte uzita, tamen nedifinita funkcio: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Nekonata identigilo: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Enkodiga konvert-eraro: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Nekonata eraro."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Nekonata eraro, mesaÄo=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Ne eblas malfermi la dosieron \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Malsukceso dum duktigo de datumaro tra \"%1\" (la dukto malfermiÄis por "
+"legi)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: mankanta bezonita etikedo: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(verÅajne) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "En la dosiero \"%1\", ĉe (aÅ­ en la difino finiÄanta ĉe) linio %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Ie, en enig-dosiero:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Neatendita dosierfino."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Neatendita lini-fino"
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identigilo estis atendita"
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Atendita: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Neatendita signo: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Buleo (aÅ­ vero aÅ­ malvero) estis atendita.\n"
+"Trovita: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Nekonata kongruanta reÄimo: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($ĉeno, $antataŭigu, $per): $anstataŭigu kaj $per devas havi "
+"saman grandecon."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"dosiero %1 linio %2:\n"
+"Ni forlasas rikordon kiu postulas la mankantan pakon %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Ni legas interÅanÄregulojn en %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Ni legas la liston de instalitaj pakoj..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "La plenumo de %1 eligis nenion aÅ­ redonis eraron.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Ni preterpasas dosieron pro eraroj...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Ni legas menu-rikordajn dosierojn el %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Eraro dum legado de %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menu-rikordoj estis trovitaj (%2 entute)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Lanĉ-metodo: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Ne eblis lanĉi la skripton %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "La skripto %1 redonis eraran staton %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "La skripto %1 ricevis signalon %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Ni lanĉas la metodon: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Ne eblas krei dukton."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Ni lanĉas menu-metodojn en %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Aliaj 'update-menus'-procezoj estas jam Ålosintaj %1, ni eliras."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Ne eblas Ålosi %1: %2 - Ĉesiganta."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Ne eblas skribi al la Ålosdosiero %1 - Ĉesiganta."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Ne eblas malkrei la Ålosdosieron %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "'Update-menus' estas lanĉata de uzanto."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Ni atendas ke dpkg finiÄu (ni forkas fonen).\n"
+"(ni kontrolas %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Plia eligo (se iu) aperos en %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg ne Ålosis sian stat-areon, bone."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Uzmaniero: update-menus [opcioj] \n"
+" Kolekti pak-datumaron de la menu-datumbazo kaj krei menuojn por\n"
+" ĉiuj programoj kiu disponigas menu-metodojn, plejofte fenestro-regiloj.\n"
+" -d Eligas erarserĉajn mesaÄojn.\n"
+" -v FariÄas \"babilema\".\n"
+" -h, --help Montras tiun ĉi mesaÄon.\n"
+" --menufilesdir=<dir> Aldonas <dir>-on al la listoj de menu-dosierujoj\n"
+" serĉotaj.\n"
+" --menumethod=<metodo> Lanĉas nur la menu-metodon <metodo>.\n"
+" --nodefaultdirs Malebligas la uzon de ĉiuj ordinaraj menu-"
+"dosierujoj.\n"
+" --nodpkgcheck Ne kontrolas ĉu la pakoj estas instalitaj.\n"
+" --remove Forigas kreitajn menuojn anstataÅ­e.\n"
+" --stdout Eligas menu-liston laÅ­ konvena formo por dukti al\n"
+" install-menu.\n"
+" --version Eligas informon pri la versio kaj finiÄas.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr "Nekonata instalstato \"%1\" (nune, nur \"package\" estas subtenata)."
diff --git a/po/es.po b/po/es.po
new file mode 100644
index 0000000..56be939
--- /dev/null
+++ b/po/es.po
@@ -0,0 +1,411 @@
+# menu translation to Spanish
+# Copyright (C) 2004-2007 Software in the Public Interest
+# This file is distributed under the same license as the menu package.
+#
+# Changes:
+# - Initial translation
+# Javier Fernandez-Sanguino Peña <jfs@debian.org>, 2004-2007
+#
+#
+# Traductores, si no conoce el formato PO, merece la pena leer la
+# documentación de gettext, especialmente las secciones dedicadas a este
+# formato, por ejemplo ejecutando:
+# info -n '(gettext)PO Files'
+# info -n '(gettext)Header Entry'
+#
+# Equipo de traducción al español, por favor, lean antes de traducir
+# los siguientes documentos:
+#
+# - El proyecto de traducción de Debian al español
+# http://www.debian.org/intl/spanish/coordinacion
+# especialmente las notas de traducción en
+# http://www.debian.org/intl/spanish/notas
+#
+# - La guía de traducción de po's de debconf:
+# /usr/share/doc/po-debconf/README-trans
+# o http://www.debian.org/intl/l10n/po-debconf/README-trans
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.19\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-12 00:10+0200\n"
+"Last-Translator: Javier Fernandez-Sanguino Peña <jfs@debian.org>\n"
+"Language-Team: Debian Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Se dió un argumento de tamaño cero a la función de impresión."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: comprobando el directorio %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: creando el directorio %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "No se pudo crear el directorio (%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "No se pudo cambiar al directorio (%1): %2."
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: ya existe el directorio %1\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [soportado]: nombre=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "La entrada de menú no incluye el campo obligatorio «%1».\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valor desconocido para el campo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: «hotkeycase» sólo puede ser «sensitive» o «insensitive»\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Aviso: Identificador desconocido «%1» en la línea %2 del "
+"fichero %3. Omitiendo.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: menu-method %2 debe definir %1"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "No se pudo abrir el fichero %1 (también se intentó %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "No se pudo abrir el fichero %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Debe poderse escribir en el fichero mostrado arriba (o el directorio debe\n"
+"existir) para poder crear el/los archivo/s de configuración de usuario para\n"
+"el gestor de ventanas.\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Aviso: no se encontró la cadena %1 en el fichero de plantilla %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <método de menú>\n"
+" Lee las entradas de menú de la entrada estánder en formato \n"
+" «update-menus --stdout» y genera ficheros de menú utilizando el \n"
+" método de menú indicado.\n"
+" Opciones posibles para install-menu: \n"
+" -h --help : este mensaje\n"
+" --remove : elimina el menú en lugar de generarlo.\n"
+" -v --verbose : ser más verboso\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ¡no se ha especificado ningún guión de método de menú!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "No se pudo abrir el guión %1 para lectura\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Aviso: el guión %1 no proporciona «removemenu», no se borrará el menú\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Ejecutando: «%1»\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: abortando\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "No coincide el número de argumentos a la función %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Función desconocida: «%1»"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "La función «%1» se usa de forma indirecta pero no está definida"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificador desconocido: «%1»"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Error en la conversión de codificación: «%1»"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Error desconocido."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Error desconocido, mensaje=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "No se pudo abrir el fichero «%1»."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"No se pudo enviar datos a través de «%1» (se abrió la tubería para lectura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: falta la marca obligatoria: «%2»"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(probablemente) entrada estándar"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"En el fichero «%1», en (o en la defición que termina en) la línea %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "En algún lugar del fichero de entrada:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Error de fichero no esperado."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Error de línea inesperado."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Se esperaba un identificador."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Esperaba: «%1»"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Carácter inesperado: «%1»"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Se esperaba un booleano (bien verdadero o falso).\n"
+"Se encontró: «%1»"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Módo de compatibilidad desconocido: «%1»"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace y $with deben tener la misma "
+"longitud."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fichero %1 línea %2:\n"
+"Descartando la entrada que requiere un paquete omitido %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Leyendo reglas de traducción de %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Leyendo la lista de paquetes instalados..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "La ejecución de %1 no generó ninguna salida o devolvío un error.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Omitiendo el fichero por los errores producidos...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Leyendo los fichero de entradas de menún en %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Error al leer %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Se encontraron %1 entradas de menú (un total de %2). "
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Ejecutando el método: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "No se pudo ejecutar el guión %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "El guión %1 devolvío un estado de error %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "El guión %1 recibió la señal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Ejecutando el método: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "No se pudo crear la tubería."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Ejecutando métodos de menú en %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Otros procesos de «update-menus» están bloqueando %1, abortando."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "No se pudo bloquear %1: %2 - Abortando."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "No se pudo escribir en el fichero de bloqueo %1 - Abortando."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "No se pudo borrar el fichero de bloqueo %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus está siendo ejecutado por un usuario."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Esperando a que termine dpkg (yendo a segundo plano).\n"
+"(comprobando %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "La salida posterior (si la hubiera) se mostrará en %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg no está bloquando el área de estado de dpkg, bien."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Modo de uso: update-menus [opciones]\n"
+"Recoje la información de paquetes de la base de datos de menú y genera\n"
+"menús para todos los programas que incluyen métodos de menú, habitualmente\n"
+"gestores de ventanas.\n"
+" -d Generar mensajes de depuración.\n"
+" -v Ser verboso e indicar lo que está pasando.\n"
+" -h --help Este mensaje.\n"
+" --menufilesdir=<directorio> Añadir <directorio> a la lista de directorios\n"
+" de menú a buscar.\n"
+" --menumethod=<método> Ejecutar sólo el método de menú <método>.\n"
+" --nodefaultdirs Deshabilita la utilización de los "
+"directorios \n"
+" de menú estándar.\n"
+" --nodpkgcheck No compruebe si los paquetes están "
+"instalados.\n"
+" --remove Elimina los menús generados en lugar de "
+"crearlos.\n"
+" --stdout Volcar la lista de menús en un formato que "
+"pueda\n"
+" ser enviado a install-menu.\n"
+" --version Mostrar la información de versión y salir.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condición de instalación desconocida «%1» (actualmente sólo se reconoce "
+"«package»)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Mostrar la información de versión y salir.\n"
diff --git a/po/et.po b/po/et.po
new file mode 100644
index 0000000..39e2eef
--- /dev/null
+++ b/po/et.po
@@ -0,0 +1,377 @@
+# Estonian translation of Debian menu.
+# Copyright (C) 2008 THE Debian COPYRIGHT HOLDER
+# This file is distributed under the same license as the Debian menu package.
+# mihkel <turakas gmail com>, 2010
+msgid ""
+msgstr ""
+"Project-Id-Version: Debian menu 2.1.43\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2010-05-19 14:59+0300\n"
+"Last-Translator: mihkel <turakas@gmail.com>\n"
+"Language-Team: et <et@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: \n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Emacs\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Null-suurusega argument print funktsiooniks."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: kontrollin kataloogi %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: loon kataloogi %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Kataloogi (%1) pole võimalik luua: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Kataloogi (%1) muutmine nurjus: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: kataloog %1 on juba olemas\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nimi=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menüü kirjel puudub kohustuslik väli \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Tundmatu väärtus väljal %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" võib olla ainult \"sensitive\" või \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Hoiatus: Tundmatu identifikaator `%1' real %2 failis %3. "
+"Ignoreerin.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 peab olema defineeritud menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Faili %1 avamine nurjus (proovisin ka %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Faili %1 avamine nurjus.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Kasutaja aknahalduri seadisteustefaili(de) loomiseks peab eelpool mainitud "
+"fail olema kirjutatav (ja/või kataloog peab olemas olema).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Hoiatus: string %1 ei esinenud mallifailis %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" Loe menüü kirjed sdtin-st sisse \"update-menus --stdout\" vormingus\n"
+" ja genereeri menüü failid kasutades määratud menu-method-it.\n"
+" install-menu valikud:\n"
+" -h --help : see teade\n"
+" --remove : eemalda menüü genereerimise asemel.\n"
+" -v --verbose : ole jutukas\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: menu-method skripti pole määratud!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Skripti %1 avamine lugemiseks nurjus.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Hoiatus: skript %1 ei anna removemenu-t, menüüd ei kustutatud\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Töös: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: katkestan\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Funktsiooni %1 argumentide arv ei klapi."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Tundmatu funktsioon: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Kaudselt kasutatud, kuid mitte defineeritud funktsioon: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Tundmatu idendifikaator: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Kodeeringu teisenduse viga: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Tundmatu viga."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Tundmatu viga, teade=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Faili \"%1\" avamine nurjus."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Andmete torustamine läbi \"%1\" nurjus (toru avatud lugemiseks)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: puudub vajalik silt: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(ilmselt) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "Failis \"%1\", real (või definitsioonil, mis lõppeb) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Kusagil sisendifailis:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Faili ootamatu lõpp."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Rea ootamatu lõpp."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Oodati identifikaatorit."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Oodati: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Ootamatu sümbol: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Oodati tõeväärtust (kas tõene või väär).\n"
+"Leiti: %1"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Tundmatu ühilduvuse režiim: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace ja $with peavad olema sama "
+"pikad."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fail %1 rida %2:\n"
+"Hülgan kirjed, mis vajavad puuduvat pakki %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Loen translitereerimise reegleid %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Loen paigaldatud pakkide nimekirja..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "%1 käivitamie ei genereerinud väljundit või tagastas vea.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Jätan faili vahele vigade tõttu...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Loen menüükirjete faili %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Viga lugemisel %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Leiti %1 menüü kirjeid (%2 kokku)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Töötamise meetod: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skripti %1 käivitamine nurjus."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skript %1 tagastas vea oleku %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skript %1 võttis vastu signaali %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Töötamise meetod: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Toru loomine nurjus."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Töös menu-methods %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Teised update-menu protsessid juba blokeerivad %1, loobun."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "%1 lukustamine nurjus: %2 - Katkestan."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Lukustusfaili %1 kirjutamine nurjus - Katkestan."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Lukustusfaili %1 eemaldamine nurjus."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus käivitati kasutaja poolt."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Dpkg ootamine on lõppenud (lükkasin taustale).\n"
+"(kontrollin %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Edasine väljund (kui üldse) ilmub %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg ei lukusta dpkg oleku ala, tore."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Kasutamine: update-menus [valikud] \n"
+"Kogu pakkide andmed menüü andmebaasist ja genereeri menüüd kõikidele\n"
+"programmidele pakkudes menu-method-eid, tavaliselt aknahaldureid.\n"
+" -d Kuva silumise teateid.\n"
+" -v Ole juhtunu suhtes rohkem jutukam.\n"
+" -h, --help See teade.\n"
+" --menufilesdir=<dir> Lisa <dir> otsitavate menüü kataloogide nimekirja.\n"
+" --menumethod=<method> Käivita ainult menüü meetod <method>.\n"
+" --nodefaultdirs Keela standardsete menüükataloogide kasutamine.\n"
+" --nodpkgcheck Ära kontrolli pakkide paigaldatust.\n"
+" --remove Eemalda hoopis genereeritud menüüd.\n"
+" --stdout Väljasta menüü nimekiri vormingus, mis sobib "
+"torustamiseks\n"
+" läbi install-menu.\n"
+" --version Kuva versiooni informatsioon ja välju.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Tundmatu paigaldamise konditsioon \"%1 (hetkel ainult \"package\" on "
+"toetatud)\"."
diff --git a/po/eu.po b/po/eu.po
new file mode 100644
index 0000000..fe6597f
--- /dev/null
+++ b/po/eu.po
@@ -0,0 +1,403 @@
+# translation of menu to Euskara
+# Debian menu system
+# Copyright (C) 2006 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Bill Allombert <ballombe@debian.org>, 2006.
+# Piarres Beobide <pi@beobide.net>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.37\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-07-09 11:34+0200\n"
+"Last-Translator: Piarres Beobide <pi@beobide.net>\n"
+"Language-Team: Euskara <Librezale@librezale.org>\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"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Zero-tamainako argumentua inprimatze funtziorako."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: %1 direktorioa arakatzen\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: %1 direktorioa sortzen:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Ezin da direktorioa(%1) sortu: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Ezin da direktorioa(%1) aldatu: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: Dagoeneko badago %1 direktorioa\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [onartua]: izena=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menu sarrerak ez du beharrezko \"%1\" eremua.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Balio ezezaguna %1 eremuarentzat=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" bakarrik \"sensitive\" edo \"insensitive\" izan "
+"daiteke\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Abisua: `%1' identifikatzaile ezezaguna %3 fitxategiaren %2 "
+"lerroan. Alde batetara uzten.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 ezarririk egon behar da %2 menu metodoan"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Ezin da %1 fitxategia ireki (%2 ere probatu da).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Ezin da %1 fitxategia ireki.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Leiho kudeatzailearentzat erabiltzailearen konfigurazio fitxategiak sortu "
+"ahal izateko,\n"
+"ondorengo fitxategietan idaztea posible izan behar da (eta/edo direktorioa "
+"egon behar da).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Oharra: ez da %1 katea topatu %2 txantiloi fitxategian\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"Install-menu [-vh] <menu-metodoa>\n"
+" Irakurri menu sarrerak sarrera estandarretik \"update-menus --stdout\" "
+"formatuan\n"
+" eta ezarritako menu-metodoa erabiliaz sortu menu fitxategiak.\n"
+" install-menu aukerak:\n"
+" -h --help : mezu hau\n"
+" --remove : menua ezabatu sortu beharrean.\n"
+" -v --verbose : xehetasunak bistarazi\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ez dago menu-metodorik ezarririk!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Ezin da %1 skript-a irakurri.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Oharra: %1 skriptak ez du removemenu, menua ez da ezabatuko\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Exekutatzen: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: uzten\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "%s1 funtzioaren argumentu kopurua ez dator bat."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Funtzio ezezaguna: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Zeharka erabilia, baina ez dago funtzioan ezarririk: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identifikatzaile ezezaguna: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Kodeketa eraldaketa errorea: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Errore ezezaguna."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Ezezaguna errorea, mezua=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Ezin da \"%1\" fitxategia ireki."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Huts datuak \"%1\" bidez kanalizatzerakoan (tutua irakurketarako irekirik)"
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: beharrezko marka falta da: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(ziurrenik) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "\"%1\" fitxategian, %2 lerroan (edo hor amaitzen de definizioan:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Sarrera fitxategiko nonbait:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Esperogabekoa fitxategi amaiera."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Esperogabekoa lerro amaiera."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identifikatzailea espero zen."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Espero zena: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Esperogabeko karakterea: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolearra /egia edo faltsua) espero zen.\n"
+"Topatutakoa: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Bateragarritasun modu ezezaguna: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace eta $with luzera berdinekoak "
+"izan behar dira."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"%1 fitxategia %2 lerroa:\n"
+"Falta den %3 paketea behar duen sarrera alde batatara uzten."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Itzulpen arauka %1-etik irakurtzen."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Instalatutako pakete zerrenda irakurtzen..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "%1-en exekuzioak ez du irteerarik sortu ez errorerik itzuli.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Erroreak direla eta fitxategia alde batetara uzten...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "%1-eko menu sarrera fitxategiak irakurtzen."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Errorea %1 irakurtzerakoan.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menu sarrera aurkitu dira (%2 guztira)"
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Metodoa exekutatzen: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "%1 Script-a ezin da exekutatu."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "%1 Script-ak %2 errorea egoera itzuli du."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "%1Script-ak %2 seinalea jaso du."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Metodoa exekutatzen: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Ezin da kanalizazioa sortu."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "%1-eko menu-metodoak exekutatzen."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Beste eguneraketa prozesu batzuk %1 blokeatzen dute, uzten."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Ezin da %1 blokeatu: %2 - Uzten."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Ezin da %1 blokeo fitxategian idatzi - Uzten."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Ezin da %1 blokeo fitxategia kendu."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Erabiltzaileak update-menus abiarazi du."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"dpkg-ek amaitzearen zain (atzeko planora pasa da).\n"
+"(%1 arakatzen)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Hurrengo irteera (balego) %1-en agertuko da."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg ez dago egoera eremua blokeatzen, ondo."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+#| msgid ""
+#| "Usage: update-menus [options] \n"
+#| "Gather packages data from the menu database and generate menus for\n"
+#| "all programs providing menu-methods, usually window-managers.\n"
+#| " -d Output debugging messages.\n"
+#| " -v Be verbose about what is going on.\n"
+#| " -h, --help This message.\n"
+#| " --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+#| "search.\n"
+#| " --menumethod=<method> Run only the menu method <method>.\n"
+#| " --nodefaultdirs Disable the use of all the standard menu "
+#| "directories.\n"
+#| " --remove Remove generated menus instead.\n"
+#| " --stdout Output menu list in format suitable for piping "
+#| "to\n"
+#| " install-menu.\n"
+#| " --version Output version information and exit.\n"
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Erabilera: update-menus [aukerak] \n"
+"Menu datubasetik pakete datuak eskuratu eta menu-metodoak erabiltzen \n"
+"dituzten programa guztientzat menuiak sortzen ditu, normalean leiho "
+"kudeatzaileak dira.\n"
+" -d Arazpen mezuak bistarazi.\n"
+" -v Gertatzen denaren xehetasunak eman.\n"
+" -h, --help Mezu hau.\n"
+" --menufilesdir=<dir> <dir> gehitu bilaketarako menu direktorio "
+"zerrendara.\n"
+" --menumethod=<method> <metodo> menu metodoa bakarrik exekutatu.\n"
+" --nodefaultdirs Lehenetsiriko menu direktorio estandarren erabilera "
+"ezgaitu.\n"
+" --nodpkgcheck Ez egiaztatu paketeak insalaturik dauden.\n"
+" --remove Menuak ezabatu sortu beharrean.\n"
+" --stdout Install-menura bidali daitekeen formatu batera "
+"atera menu \n"
+" zerrenda.\n"
+" --version Bertsio argibideak bistarazi eta irten.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"\"%1\" instalazio egoera ezezaguna (oraingoz \"package\" bakarrik onartzen "
+"da)."
diff --git a/po/fi.po b/po/fi.po
new file mode 100644
index 0000000..4851657
--- /dev/null
+++ b/po/fi.po
@@ -0,0 +1,384 @@
+# Finnish translation of menu
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Tommi Vainikainen, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-12 23:58+0300\n"
+"Last-Translator: Tommi Vainikainen <thv+debian@iki.fi>\n"
+"Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Nollapituinen argumentti tulostusfunktiolle."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: tarkistetaan hakemisto %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: luodaan hakemisto %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Hakemistoa(%1) ei voitu luoda: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Hakemistoa(%1) ei voitu vaihtaa: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: hakemisto %1 on jo olemassa\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nimi=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Valikkomerkinnästä puuttuu pakollinen kenttä \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Tuntematon arvo kentälle %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" voi olla vain \"sensitive\" tai \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Varoitus: Tuntematon tunniste \"%1\" rivillä %2 tiedostossa %"
+"3. Ohitetaan.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 täytyy olla määritelty valikkotavassa %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Tiedostoa %1 ei voitu avata (myös tiedostoa %2 yritettiin).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Tiedostoa %1 ei voitu avata.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Jotta käyttäjien asetustiedosto(t) ikkunointiohjelmille voidaan luoda,\n"
+"mainitun tiedoston täytyy olla kirjoitettavissa (ja/tai hakemiston "
+"olemassa).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Varoitus: merkkijonoa %1 ei löydy mallitiedostosta %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <valikkotapa>\n"
+" Lue valikkomerkinnät vakiosyötteestä \"update-menus --stdout\"-muodossa\n"
+" ja luo valikkotiedostot määriteltyä valikkotapaa käyttäen.\n"
+" install-menun valitsimet:\n"
+" -h --help : tämä viesti\n"
+" --remove : poista valikko luomisen sijaan\n"
+" -v --verbose : yksityiskohtaisempi tuloste\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: valikkotapa-komentotiedostoa ei määritelty !"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Komentotiedostoa %1 ei saada luettua.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Varoitus: komentotiedosto %1 ei tarjoa poistovaihtoehtoa, valikkoa ei "
+"poisteta\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Suoritetaan: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: keskeytetään\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Funktiolle %1 annettujen argumenttien määrä ei täsmää."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Tuntematon funktio: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Epäsuorasti käytetty, mutta määrittelemätön funktio: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Tuntematon tunniste: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Merkistökoodauksen muunnosvirhe: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Tuntematon virhe."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Tuntematon virhe, viesti=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Tiedostoa \"%1\" ei voitu avata."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Tiedon putkittaminen ohjelman \"%1\" läpi epäonnistui (putki avattu "
+"luettavaksi)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: vaadittu tagi puuttuu: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(luultavasti) vakiosyöte"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"Tiedostossa \"%1\" rivillä (tai määrittelyssä, joka loppuu riviin) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Jossain syötetiedostossa:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Odottamaton tiedoston loppu."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Odottamaton rivin loppu."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Odotettiin tunnistetta."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Odotettiin: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Odottamaton merkki: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Odotettiin totuusarvoa (joko tosi tai epätosi).\n"
+"Löytyi: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Tuntematon yhtsopivuustapa: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($merkkijono, $korvattava, $korvaava): $korvattavan ja $korvaavan "
+"täytyy olla yhtä pitkiä."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"tiedosto %1 rivi %2:\n"
+"Hylätään syöte, joka vaatii puuttuvan paketin %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Luetaan muunnossääntöjä tiedostosta %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Luetaan asennettujen pakettien luetteloa..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr ""
+"Ohjelman %1 suoritus ei tuottanut tulostetta tai keskeytyi virheeseen.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Ohitetaan tiedosto virheiden vuoksi...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Luetaan valikkomerkintätiedostoja hakemistossa %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Virhe luettaessa tiedostoa %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Löytyi %1 valikkomerkintää (yhteensä %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Suoritustapa: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Komentotiedostoa %1 ei voitu suorittaa."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Komentotiedosto %1 palautti virhekoodin %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Komentotiedosto %1 sai signaalin %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Suoritustapa: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Putkea ei voi luoda."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Suoritetaan valikkotavat hakemistosta %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+"Toiset update-menus-prosessit ovat jo lukinneet tiedoston %1, lopetetaan."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Ei voitu lukita %1: %2 - Keskeytetään."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Ei voitu kirjoittaa lukkotiedostoa %1 - Keskeytetään."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Lukkotiedostoa %1 ei voitu poistaa."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Valikkopäivitystä ajaa käyttäjä."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Odotetaan dpkg:n päättymistä (haaraudutaan taustalle).\n"
+"(tarkistetaan %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Myöhempi tuloste (jos sellaista on) tulee näkyviin tiedostoon %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg ei lukitse dpkg-tilannealaa, hyvä."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Käyttö: update-menus [valitsimet] \n"
+"Kerää pakettitiedot valikkotietokannasta ja luo valikot kaikille\n"
+"valikkotavan tarjoaville ohjelmille eli yleensä ikkunointiohjelmille.\n"
+" -d Tulosta vianetsintäviestit.\n"
+" -v Tulosta tekemiset yksityiskohtaisesti.\n"
+" -h, --help Tämä viesti.\n"
+" --menufilesdir=<hak> Lisää <hak> etsittävien valikkohakemistojen "
+"luetteloon.\n"
+" --menumethod=<tapa> Suorita vain valikkotapa <tapa>.\n"
+" --nodefaultdirs Kaikki standardit valikkohakemistot poistetaan "
+"käytöstä.\n"
+" --nodpkgcheck Älä tarkasta onko paketit asennettu.\n"
+" --remove Poista luodut valikot.\n"
+" --stdout Tulosta valikkoluettelo install-menulle "
+"putkittamiseen\n"
+" soveltuvassa muodossa.\n"
+" --version Tulosta versiotiedot ja poistu.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Tuntematon asennusehto \"%1\" (tällä hetkellä vain \"package\" on tuettu)."
diff --git a/po/fr.po b/po/fr.po
new file mode 100644
index 0000000..1a6fb5a
--- /dev/null
+++ b/po/fr.po
@@ -0,0 +1,385 @@
+# Debian menu system
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2006-10-09 10:36+0200\n"
+"Last-Translator: Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "La fonction « print » a reçu un argument de longueur nulle."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu : recherche du répertoire %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu : création du répertoire %1\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Impossible de créer le répertoire « %1 » : %2."
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Impossible de changer de répertoire en faveur de « %1 » : %2."
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu : le répertoire %1 existe déjà\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu : [supported] : nom=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Il manque le champ obligatoire « %1 » dans l'entrée de menu.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valeur inconnue pour le champ %1=« %2 ».\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu : « hotkeycase » ne peut être que « sensitive » ou "
+"« insensitive »\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu : Attention : identificateur inconnu « %1 » à la ligne %2 du "
+"fichier %3. Ignoré.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu : %1 doit être défini dans la méthode de menu %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Impossible d'ouvrir le fichier %1 (de même que %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Impossible d'ouvrir le fichier %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Afin de pouvoir créer le(s) fichier(s) de configuration utilisateur pour\n"
+"le gestionnaire de fenêtres, le fichier ci-dessus doit pouvoir être\n"
+"écrit (et le répertoire doit exister).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Attention : la chaîne %1 n'existe pas dans le fichier de canevas %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <méthode de menu>\n"
+" Lecture des entrées de menu depuis l'entrée standard selon le format\n"
+" « update-menus --stdout » et création des fichiers de menu en\n"
+" utilisant la méthode de menu indiquée.\n"
+" Les options d'install-menu sont :\n"
+" -h --help   : ce texte\n"
+" --remove  : supprimer le menu plutôt que de le créer\n"
+" -v --verbose  : mode bavard\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu : aucun script de méthode n'a été indiqué !"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Impossible d'ouvrir le script %1 en lecture.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Attention : le script %1 ne fournit pas « removemenu », le menu n'a pas été "
+"supprimé\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "En cours : « %1 »\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "Install-menu : %1 : abandon\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Le nombre d'arguments de la fonction %1 est incorrect."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Fonction inconnue : « %1 »"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "La fonction « %1 », appelée indirectement, n'est pas définie"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificateur inconnu : « %1 »"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Erreur de conversion d'encodage : « %1 »"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Erreur inconnue."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Erreur inconnue, message=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Impossible d'ouvrir le fichier « %1 »."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Échec lors du tubage à travers « %1 » (tube ouvert en lecture)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1 : l'indicateur obligatoire « %2 » est absent."
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(probablement) l'entrée standard"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"Dans le fichier « %1 » à (ou dans la définition qui se termine à) la ligne %"
+"2 :\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Quelque part dans le fichier d'entrée :\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Fin de fichier inattendue."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Fin de ligne inattendue."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Un identificateur est requis."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Attendu : « %1 »"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Caractère inattendu : « %1 »"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Valeur booléenne (soit « true », soit « false ») attendue.\n"
+"« %1 » a été trouvé"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Mode de compatibilité (« compat ») inconnu : « %1 »"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string,$replace,$with) : $replace et $with doivent avoir la "
+"même taille."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fichier %1, ligne %2 :\n"
+"Suppression de l'entrée pour laquelle le paquet manquant %3 est nécessaire."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lecture des règles de conversion dans %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lecture de la liste des paquets installés..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr ""
+"L'exécution de %1 n'a créé aucune donnée en sortie ou a retourné une "
+"erreur.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Traitement du fichier abandonné en raison d'erreurs...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lecture des fichiers d'entrées de menu dans %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Erreur lors de la lecture de %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 entrées de menu ont été trouvées (%2 au total)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Lancement de la méthode : %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Le script %1 n'a pas pu être exécuté."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Le script %1 a retourné une erreur d'état %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Le script %1 a reçu un signal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Lancement de la méthode : %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Impossible de créer le tube."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Lancement de « menu-methods » dans %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "D'autres processus « update-menus » verrouillent %1, abandon."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Impossible de verrouiller %1 : %2 - Abandon."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Impossible d'écrire le fichier de verrou %1 - Abandon."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Impossible de supprimer le verrou %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menu a été lancé par un utilisateur non privilégié."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Attente de la fin de dpkg (passage en arrière plan).\n"
+"(vérification de %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Des information complémentaires (s'il y en a) se trouveront dans %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg ne verrouille pas la zone d'état de dpkg, c'est correct."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Utilisation : update-menus [options]\n"
+"Rassembler les informations sur les paquets dans la base de données\n"
+"de menu et créer les menus pour tout les programmes fournissant un\n"
+"script de menu (menu-method), habituellement les gestionnaires de fenêtres\n"
+" -d afficher les messages de déboguage.\n"
+" -v mode bavard sur les actions en cours.\n"
+" -h, --help ce message.\n"
+" --menufilesdir=<rép> ajouter <rép> à la liste des répertoires où\n"
+" rechercher des menus.\n"
+" --menumethod=<méthode> ne lancer que la méthode de menu <méthode>.\n"
+" --nodefaultdirs ne pas tenir compte des répertoires de menus\n"
+" standards.\n"
+" --nodpkgcheck ne pas vérifier si les paquets sont installés.\n"
+" --remove supprimer les menus créés.\n"
+" --stdout afficher la liste des menus dans un format\n"
+" compatible avec un tubage vers install-menu.\n"
+" --version afficher les informations de version et quitter.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condition d'installation inconnue « %1 » (actuellement, seul « package » est "
+"géré)."
diff --git a/po/gl.po b/po/gl.po
new file mode 100644
index 0000000..99b7a25
--- /dev/null
+++ b/po/gl.po
@@ -0,0 +1,381 @@
+# Galician translation of menu
+# Copyright (C) 2005 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Jacobo Tarrío <jtarrio@debian.org>, 2005, 2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-13 12:43+0100\n"
+"Last-Translator: Jacobo Tarrío <jtarrio@debian.org>\n"
+"Language-Team: Galician <proxecto@trasno.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Pasouse un argumento de tamaño 0 á función de impresión."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: a comprobar o directorio %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: a crear o directorio %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Non se puido crear o directorio(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Non se puido cambiar de directorio(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: o directorio %1 xa existe\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nome=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "A entrada de menú non ten o campo obrigatorio \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valor descoñecido para o campo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" só pode valer \"sensitive\" ou \"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Aviso: Identificador \"%1\" descoñecido na liña %2 do ficheiro "
+"%3. Ignórase.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 debe estar definido no método de menú %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Non se pode abrir o ficheiro %1 (tamén se probou con %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Non se pode abrir o ficheiro %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Para poder crear o(s) ficheiro(s) de configuración de usuario do xestor de\n"
+"fiestras, o ficheiro de enriba ten que se poder escribir (e o directorio\n"
+"ten que existir).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Aviso: a cadea %1 non aparece no ficheiro de patróns %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <método>\n"
+" Le as entradas do menú da entrada estándar no formato de \"update-menus\n"
+" --stdout\" e xera ficheiros de menú empregando o método indicado.\n"
+" Opcións de install-menu:\n"
+" -h --help : esta mensaxe\n"
+" --remove : eliminar o menú no canto de o xerar.\n"
+" -v --verbose : ser moi descritivo\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: non se indicou un guión de método do menú"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Non se pode abrir o guión %1 para lectura.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Aviso: o script %1 non fornece removemenu, non se eliminou o menú\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "A executar: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: abórtase\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "O número de argumentos da función %1 non encaixa."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Función descoñecida: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Función empregada indirectamente, pero sen definir: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificador descoñecido: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Erro na conversión da codificación: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Erro descoñecido."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Erro descoñecido, mensaxe=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Non se puido abrir o ficheiro \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Non se puido pasar os datos por \"%1\" (abriuse para lectura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: falla a etiqueta requirida: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(probablemente) entrada estándar"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "No ficheiro \"%1\", na (ou na definición que remata na) liña %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Nalgunha parte do ficheiro de entrada:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Non se esperaba a fin do ficheiro."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Non se esperaba a fin da liña."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Esperábase un identificador."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Esperábase: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Non se esperaba un carácter: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Esperábase un booleano (verdadeiro ou falso).\n"
+"Atopouse: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Modo de compatibilidade descoñecido: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($cadea, $remprazo, $con): $remprazo e $con deben ser da mesma "
+"lonxitude."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"ficheiro %1 liña %2:\n"
+"A descargar a entrada que precisa do paquete que falla %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "A ler as regras de tradución de %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "A ler a lista de paquetes instalados..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "A execución de %1 non produciu saída ou devolveu un erro.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "A omitir o ficheiro por mor dos erros...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "A ler os ficheiros de entradas do menú de %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Erro ao ler %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Atopáronse %1 entradas de menú (%2 en total)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "A executar o método: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Non se puido executar o guión %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "O guión %1 devolveu o estado de erro %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "O guión %1 recibiu o sinal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "A executar o método: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Non se puido crear a canle."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "A executar menu-methods en %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Hai outros procesos de update-menus a bloquear %1, sáese."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Non se pode bloquear %1: %2 - Abórtase."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Non se pode escribir no ficheiro de bloqueo %1 - Abórtase."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Non se pode borrar o ficheiro de bloqueo %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "O usuario executa update-menus."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"A agardar a que dpkg remate (convértese en tarefa de segundo plano).\n"
+"(compróbase %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Se hai máis saída ha aparecer en %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg non bloquea a área de estado de dpkg; iso é bo."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Emprego: update-menus [opcións] \n"
+"Recolle datos dos paquetes da base de datos dos menús e xera menús para "
+"todos\n"
+"os programas que fornecen métodos de menú, normalmente os xestores de "
+"fiestras.\n"
+" -d Produce mensaxes de depuración.\n"
+" -v Dá moita información sobre o que ocorre.\n"
+" -h, --help Esta mensaxe.\n"
+" --menufilesdir=<dir> Engade <dir> aos directorios de menús nos que "
+"buscar.\n"
+" --menumethod=<método> Executa só o método <método>.\n"
+" --nodefaultdirs Non emprega os directorios estándar de menús.\n"
+" --nodpkgcheck Non comproba se os paquetes están instalados.\n"
+" --remove Elimina os menús xerados.\n"
+" --stdout Produce a lista de menús nun formato axeitado para\n"
+" pasar a install-menu.\n"
+" --version Amosa información sobre a versión e sae.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condición de instalación \"%1\" descoñecida (só hai \"package\" polo "
+"momento)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Produce información sobre a versión e sae.\n"
diff --git a/po/it.po b/po/it.po
new file mode 100644
index 0000000..2c2a9ff
--- /dev/null
+++ b/po/it.po
@@ -0,0 +1,385 @@
+# Menu translation
+# Copyright (C) 2003, 2004
+# This file is distributed under the same license as the menu package.
+# Bill Allombert <ballombe@debian.org>, 2003.
+# Stefano Canepa <sc@linux.it>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.9-3\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2004-07-03 23:16+0200\n"
+"Last-Translator: Stefano Canepa <sc@linux.it>\n"
+"Language-Team: Italian <tp@list.linux.it>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr ""
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: controllo directory %1 in corso\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: creazione directory %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Impossibile creare la directory (%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Impossibile entrare nella directory (%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: la directory %1 esiste già\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supportato]: nome=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "La voce di menu manca del campo obbligatorio \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valore sconosciuto per il campo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" può solo essere \"sensitive\" o \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Attenzione: Identificativo sconosciuto `%1' alla riga %2 nel "
+"file %3. Sarà ignorato.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 deve essere definito nel metodo %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Impossibile aprire il file %1 (provato anche %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Impossibile aprire il file %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Per poter creare un file o dei file di configurazione utente per il window "
+"manager\n"
+"il file sopra deve essere scriovibile (e/o la directory deve esistere).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Attenzione: la stringa %1 non è presente nel template %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" Legge voci di menu da stdin in formato \"update-menus --stdout\"\n"
+" e genera file di menu usando il metodo specificato.\n"
+" Opzioni per install-menu:\n"
+" -h --help : Questo messaggio\n"
+" -v --verbose : Prolisso\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nessuno script menu-method specificato!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Impossibile aprire %1 in lettura.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "In esecuzione: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: Interruzione in corso.\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Il numero di argomenti della funzione %1 non corrisponde."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Funzione sconosciuta: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Funzione usata indirittamente ma non definita: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Indentificatore sconosciuto: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Errore di codifica: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Errore sconosciuto."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Errore sconosciuto, messaggio=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Impossibile aprire il file \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Impossibile passare i dati attraverso la pipe \"%1\" (pipe aperta in "
+"lettura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: manca del tag necessario: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(probabilmente) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"Nel file \"%1\", alla (o nella definizione che finisce alla) linea %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Da qualche parte nel file di input:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Fine del file non attesa."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Fine riga non atteso."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Si attendeva un identificativo."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Attendevo: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Carattere non atteso: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Booleano (o vero o falso) atteso.\n"
+"Trovato: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Modo compatto sconosciuto: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace e $with devono avere la "
+"stessa lunghezza."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lettura delle regole di traduzione in %1 in corso."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lettura dei pacchetti installati in corso"
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr ""
+"L'esecuzione di %1 non ha generato output oppure ha restituito un errore.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Si sta saltando il file a causa di errori\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lettura dei file menu-entru in %1 in corso."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Errore leggendo %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 voce menu trovate (%2 totale)."
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "Metodo %1 in esecuzione"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Impossibile eseguire lo script %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Lo script %1 ha restituito l'errore %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Lo script %1 ha ricevuto l'errore %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Metodo %1 in esecuzione"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Impossibile creare la pipe."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Esecuzione di menu-methods in %1 in corso."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Altri processi update-menu hanno già bloccato %1, il processo uscirà."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Impossibile bloccare %1: %2 - Interruzione in corso."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Impossibile scrivere il file di blocco %1 - Interruzione in corso."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Impossibile rimuovere il file di blocco %1"
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus è eseguito da un utente."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"In attesa che dpkg finisca (fork in background).\n"
+"(controllo %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Maggiore output (se disponibile) apparirà in %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg non sta bloccando l'are di stato di dpkg, buono."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Uso: update-menus [opzioni] \n"
+"Preleva informazioni dal database del menu e genere il menu per\n"
+"tutti i programmi che forniscono metodi per menu, normalmente window "
+"manager.\n"
+" -d Stampa messagi di debug.\n"
+" -v È prolisso riguardo a quello che sta avvenendo.\n"
+" -h, --help Questo messaggio.\n"
+" --menufilesdir=<dir> Aggiunge <dir> alla lista delle directory dei menu "
+"in cui cercare.\n"
+" --menumethod=<method> Legge solo il metodo menu <metodo>.\n"
+" --nodefaultdirs Disabilita l'uso di tutti i le directory dei menu "
+"standard.\n"
+" --stdout Stampa la lista dei menu in un formato ottimale per "
+"il pipe a install-menu.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condizione di installazione sconosciuta \"%1\" (attualmente solo \"package\" "
+"è supportata)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Stampa informazioni sulla versione e esce.\n"
diff --git a/po/ja.po b/po/ja.po
new file mode 100644
index 0000000..d63ad25
--- /dev/null
+++ b/po/ja.po
@@ -0,0 +1,416 @@
+# Japanese translation of menu
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+# GOTO Masanori <gotom@debian.org>, 2004
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2004-09-27 19:59+0900\n"
+"Last-Translator: GOTO Masanori <gotom@debian.org>\n"
+"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=EUC-JP\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "´Ø¿ôɽ¼¨»þ¤ËŤµ¥¼¥í¤Î°ú¿ô¤¬Í¿¤¨¤é¤ì¤Þ¤·¤¿"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: ¥Ç¥£¥ì¥¯¥È¥ê %1 ¤ò¸¡ººÃæ¤Ç¤¹\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: ¥Ç¥£¥ì¥¯¥È¥ê %1 ¤òºîÀ®Ãæ:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê (%1) ¤¬ºîÀ®¤Ç¤­¤Þ¤»¤ó: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "¥Ç¥£¥ì¥¯¥È¥ê (%1) ¤òÊѹ¹¤Ç¤­¤Þ¤»¤ó: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: ¥Ç¥£¥ì¥¯¥È¥ê %1 ¤Ï´û¤Ë¸ºß¤·¤Æ¤¤¤Þ¤¹\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: name=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¤Ïɬ¿Ü¥Õ¥£¡¼¥ë¥É \"%1\" ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "¹àÌÜ %1=\"%2\" ¤¬Ì¤ÃΤÎÃÍ.\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" ¤Ï \"sensitive\" ¤Þ¤¿¤Ï \"insensitive\" ¤Î¤ß»ØÄê"
+"¤Ç¤­¤Þ¤¹\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: ·Ù¹ð: ̤ÃΤμ±ÊÌ»Ò `%1' ¤¬¥Õ¥¡¥¤¥ë %3 ¤Î %2 ¹Ô¤Ë¤¢¤ê¤Þ¤¹. ̵»ë"
+"¤·¤Þ¤¹.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 ¤Ï menu-method %2 Ãæ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "¥Õ¥¡¥¤¥ë %1 ¤¬³«¤±¤Þ¤»¤ó (%2 ¤â»î¸³ºÑ¤ß).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "¥Õ¥¡¥¤¥ë %1 ¤¬³«¤±¤Þ¤»¤ó.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"¥¦¥¤¥ó¥É¥¦¥Þ¥Í¡¼¥¸¥ãÍѤΥ桼¥¶ÀßÄê¥Õ¥¡¥¤¥ë¤òºîÀ®²Äǽ¤È¤¹¤ë¤¿¤á¤Ë, ¾åµ­¥Õ¥¡¥¤"
+"¥ë¤Ï\n"
+"½ñ¹þ¤ß²Äǽ¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹ (¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤¬Â¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ"
+"¤»¤ó).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "·Ù¹ð: ʸ»úÎó %1 ¤Ï¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë %2 Ãæ¤Ç¸«¤¤½Ð¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" ɸ½àÆþÎϤ«¤é \"update-menus --stdout\" ¥Õ¥©¡¼¥Þ¥Ã¥È¤Î¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¤ò\n"
+" Æɤ߼è¤ê, ¤½¤·¤Æ»ØÄê menu-method ¤Ç¥á¥Ë¥å¡¼¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë.\n"
+" install-menu ¤Î¥ª¥×¥·¥ç¥ó:\n"
+" -h --help : ¤³¤Î¥á¥Ã¥»¡¼¥¸¤òɽ¼¨\n"
+" -v --verbose : ¾éĹɽ¼¨\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: menu-method ¥¹¥¯¥ê¥×¥È¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Æɹþ¤ß»þ¤Ë¥¹¥¯¥ê¥×¥È %1 ¤¬³«¤±¤Þ¤»¤ó.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "¼Â¹ÔÃæ: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: ̾̂\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "´Ø¿ô %1 ¤ËÂФ¹¤ë°ú¿ô¤Î¸Ä¿ô¤¬°ìÃפ·¤Þ¤»¤ó."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "̤ÃΤδؿô: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "´ÖÀÜ»ÈÍѤµ¤ì¤Æ¤¤¤ë¤¬, ̤ÄêµÁ¤Î´Ø¿ô: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "̤ÃΤμ±ÊÌ»Ò: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "¥¨¥ó¥³¡¼¥Ç¥£¥ó¥°ÊÑ´¹¥¨¥é¡¼: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "̤ÃΤΥ¨¥é¡¼."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "̤ÃΤΥ¨¥é¡¼, ¥á¥Ã¥»¡¼¥¸=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "¥Õ¥¡¥¤¥ë \"%1\" ¤¬³«¤±¤Þ¤»¤ó."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"\"%1\" ¤òÄ̤¸¤Æ¤Î¥Ç¡¼¥¿¤Î¥Ñ¥¤¥×¤Ë¼ºÇÔ¤·¤Þ¤·¤¿ (Æɹþ¤ßÍѤ˥ѥ¤¥×¤ò³«¤­¤Þ¤·¤¿)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: ɬ¿Ü¥¿¥°¤¬¸«Åö¤¿¤é¤Ê¤¤: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(¤ª¤½¤é¤¯) ɸ½àÆþÎÏ"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "¥Õ¥¡¥¤¥ë \"%1\" ¤Î %2 ¹Ô (¤Þ¤¿¤Ï¤½¤ì°ÊÁ°¤ÎÄêµÁ¹ÔÆâ):\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î¤É¤³¤«:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "ͽ´ü¤»¤Ì¥Õ¥¡¥¤¥ë¤Î½ªÃ¼ (¥¨¥ó¥É¥ª¥Ö¥Õ¥¡¥¤¥ë)."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "ͽ´ü¤»¤Ì¹ÔËö (¥¨¥ó¥É¥ª¥Ö¥é¥¤¥ó)."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "¼±Ê̻Ҥ¬´üÂÔ¤µ¤ì¤Æ¤¤¤Þ¤¹."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "ͽ´ü: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "ͽ´ü¤»¤Ìʸ»ú: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"¥Ö¡¼¥ê¥¢¥ó (¿¿¤Þ¤¿¤Ïµ¶¤Î¤É¤Á¤é¤«) ¤òÍ×µá.\n"
+"ȯ¸«: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "̤ÃΤΠcompat ¥â¡¼¥É: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace ¤È $with ¤ÏƱ¤¸Ä¹¤µ¤Ç\n"
+"¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "%1 Ãæ¤ÎËÝÌõ¥ë¡¼¥ë¤òÆɹþ¤ßÃæ."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "¥¤¥ó¥¹¥È¡¼¥ëºÑ¥Ñ¥Ã¥±¡¼¥¸¥ê¥¹¥È¤òÆɹþ¤ßÃæ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "%1 ¤Î¼Â¹Ô¤Ë¤è¤Ã¤Æ²¿¤â½ÐÎϤ¬À¸À®¤µ¤ì¤Ê¤¤¤«¥¨¥é¡¼¤¬ÊÖ¤µ¤ì¤Þ¤·¤¿.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "¥¨¥é¡¼¤Ë¤è¤Ã¤Æ¥Õ¥¡¥¤¥ë¤ò¥¹¥­¥Ã¥×¤·¤Þ¤¹...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "%1 Ãæ¤Î¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¥Õ¥¡¥¤¥ë¤òÆɹþ¤ßÃæ."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "%1 Æɹþ¤ßÃæ¤Ë¥¨¥é¡¼.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 ¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¤òȯ¸« (%2 ¥È¡¼¥¿¥ë)."
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "¼Â¹ÔÃæ¥á¥½¥Ã¥É: %1"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "¥¹¥¯¥ê¥×¥È %1 ¤Ï¼Â¹Ô¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "¥¹¥¯¥ê¥×¥È %1 ¤Ï¥¨¥é¡¼¥¹¥Æ¡¼¥¿¥¹ %2 ¤òÊÖ¤·¤Þ¤·¤¿."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "¥¹¥¯¥ê¥×¥È %1 ¤Ï¥·¥°¥Ê¥ë %2 ¤ò¼õ¤±¼è¤ê¤Þ¤·¤¿."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "¼Â¹ÔÃæ¥á¥½¥Ã¥É: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "¥Ñ¥¤¥×¤¬ºîÀ®¤Ç¤­¤Þ¤»¤ó."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "%1 Ãæ¤Î menu-methos ¤ò¼Â¹ÔÃæ."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "¾¤Î update-menus ¥×¥í¥»¥¹¤¬´û¤Ë %1 ¤ò¥í¥Ã¥¯Ãæ, ½ªÎ»¤·¤Þ¤¹."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "¥í¥Ã¥¯ÉÔǽ %1: %2 - ÃæÃÇ."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "¥í¥Ã¥¯¥Õ¥¡¥¤¥ë %1 ¤Ë½ñ¹þ¤á¤Þ¤»¤ó¤Ç¤·¤¿ - ÃæÃÇ."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "¥í¥Ã¥¯¥Õ¥¡¥¤¥ë %1 ¤òºï½ü¤Ç¤­¤Þ¤»¤ó."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "update-menus ¤Ï¥æ¡¼¥¶¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤Þ¤·¤¿."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"dpkg ¤Î½ªÎ»¤òÂԤäƤ¤¤Þ¤¹ (¥Ð¥Ã¥¯¥°¥é¥ó¥É¤Ë¥Õ¥©¡¼¥¯Ãæ).\n"
+"(¥Á¥§¥Ã¥¯Ãæ %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "°Ê¹ß¤Î½ÐÎÏ¤Ï (¤â¤·¤¢¤ë¤Ê¤é) %1 ¤Ë½Ð¤µ¤ì¤Þ¤¹."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "dpkg ¤Ï dpkg ¥¹¥Æ¡¼¥¿¥¹¥¨¥ê¥¢¤ò¥í¥Ã¥¯¤·¤Æ¤¤¤Þ¤»¤ó, good."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"»ÈÍÑÊýË¡: update-menus [¥ª¥×¥·¥ç¥ó] \n"
+"¥á¥Ë¥å¡¼¥Ç¡¼¥¿¥Ù¡¼¥¹¤«¤é¥Ñ¥Ã¥±¡¼¥¸¥Ç¡¼¥¿¤ò¼ý½¸¤·¡¢¥á¥Ë¥å¡¼¥á¥½¥Ã¥É¤òÈ÷¤¨¤ë\n"
+"Ä̾復¥£¥ó¥É¥¦¥Þ¥Í¡¼¥¸¥ã¤Ê¤É¤Ø¤Î¥×¥í¥°¥é¥àÍѤȤ·¤Æ¥á¥Ë¥å¡¼¤òÀ¸À®¤¹¤ë.\n"
+" -d ¥Ç¥Ð¥Ã¥°¥á¥Ã¥»¡¼¥¸¤ò½ÐÎÏ.\n"
+" -v ²¿¤ò¼Â¹ÔÃ椫¾éĹɽ¼¨¤¹¤ë.\n"
+" -h, --help ¤³¤Î¥á¥Ã¥»¡¼¥¸.\n"
+" --menufilesdir=<dir> ¸¡º÷ÍÑ¥á¥Ë¥å¡¼¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤Ë <dir> ¤òÄɲÃ.\n"
+" --menumethod=<method> ¥á¥Ë¥å¡¼¥á¥½¥Ã¥É <method> ¤Î¤ß¼Â¹Ô.\n"
+" --nodefaultdirs Á´¤Æ¤Îɸ½à¥á¥Ë¥å¡¼¥Ç¥£¥ì¥¯¥È¥ê¤Î»ÈÍѤò¤ä¤á¤ë.\n"
+" --stdout install-menu ¤Ë¥Ñ¥¤¥×¤ÇÅϤ¹»þ¤ËŬ¤·¤¿¥Õ¥©¡¼¥Þ¥Ã¥È"
+"¤Ç\n"
+" ¥á¥Ë¥å¡¼¥ê¥¹¥È¤ò½ÐÎÏ.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"̤ÃΤΥ¤¥ó¥¹¥È¡¼¥ë¾ò·ï \"%1\" (¸½ºß¤Î¤È¤³¤í \"package\" ¤À¤±¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ"
+"¤¤¤ë)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤ò½ÐÎϤ·¤Æ½ªÎ»¤¹¤ë.\n"
+
+#~ msgid ""
+#~ "install-menu: At least one of genmenu, startmenu, endmenu\n"
+#~ "is undefined. All of these have to be defined \n"
+#~ "(although they may be equal to \"\").\n"
+#~ msgstr ""
+#~ "install-menu: ¾¯¤Ê¤¯¤È¤â genmenu, startmenu, endmenu ¤Î¤¦¤Á¤Î1¤Ä¤¬Ì¤ÄêµÁ¤Ç"
+#~ "¤¹.\n"
+#~ "(\"\" ¤ÈƱ¤¸¤Ë¤Ê¤ë¤«¤âÃΤì¤Þ¤»¤ó¤¬) ¤³¤ì¤é¤ÎÁ´¤Æ¤¬\n"
+#~ "ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó.\n"
+
+#~ msgid "Using compatibility with %1.\n"
+#~ msgstr "%1 ¤È¤Î¸ß´¹À­¤òÍѤ¤¤Þ¤¹.\n"
+
+#~ msgid ""
+#~ "Missing (or empty) tag: %1\n"
+#~ "This tag needs to be defined for the menu entry to make sense.\n"
+#~ "Note that update-menus rearranges the order of the tags found\n"
+#~ "in the menu-entry files, so that the part above isn't literal."
+#~ msgstr ""
+#~ "¹ÔÊýÉÔÌÀ (¤Þ¤¿¤Ï¶õ) ¤Î¥¿¥°: %1\n"
+#~ "¤³¤Î¥¿¥°¤Ï¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¤¬°ÕÌ£¤ò¤Ê¤¹¤¿¤á¤ËÄêµÁ¤µ¤ì¤Æ¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»"
+#~ "¤ó.\n"
+#~ "»²¹Í¤Þ¤Ç¤Ë, update-menus ¤Ï menu-entry ¥Õ¥¡¥¤¥ëÃæ¤Ç¸«¤Ä¤«¤Ã¤¿¥¿¥°¤Î½çÈÖ"
+#~ "¤ò\n"
+#~ "ºÆÀ°Î󤹤ë¤Î¤Ç, ¤½¤Î¤¿¤á¾åµ­¤Ï¸í»ú¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó."
+
+#~ msgid "Cannot open file %1."
+#~ msgstr "¥Õ¥¡¥¤¥ë %1 ¤¬³«¤±¤Þ¤»¤ó."
+
+#~ msgid "Reading menu-entry file %1."
+#~ msgstr "¥á¥Ë¥å¡¼¥¨¥ó¥È¥ê¥Õ¥¡¥¤¥ë %1 ¤òÆɹþ¤ßÃæ."
+
+#~ msgid "Directory is expected after --menufilesdir option.\n"
+#~ msgstr "--menufilesdir ¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥Ç¥£¥ì¥¯¥È¥ê¤¬É¬Í×.\n"
+
+#~ msgid "Filename is expected after --menumethod option.\n"
+#~ msgstr "--menumethod ¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥Õ¥¡¥¤¥ë̾¤¬É¬Í×.\n"
diff --git a/po/menu.pot b/po/menu.pot
new file mode 100644
index 0000000..3f88aa0
--- /dev/null
+++ b/po/menu.pot
@@ -0,0 +1,338 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr ""
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr ""
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr ""
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr ""
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr ""
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr ""
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr ""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr ""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr ""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr ""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr ""
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr ""
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr ""
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr ""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr ""
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr ""
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr ""
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr ""
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr ""
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr ""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr ""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr ""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr ""
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr ""
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
diff --git a/po/nb.po b/po/nb.po
new file mode 100644
index 0000000..47440a6
--- /dev/null
+++ b/po/nb.po
@@ -0,0 +1,379 @@
+# translation of menu.po to Norwegian Bokmål
+# This file is distributed under the same license as the menu package.
+# Copyright (C) 2004 Debian menu team.
+# Hans Fredrik Nordhaug <hans@nordhaug.priv.no>, 2005-2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_nb\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-11-12 18:31+0100\n"
+"Last-Translator: Hans Fredrik Nordhaug <hans@nordhaug.priv.no>\n"
+"Language-Team: Norwegian Bokmål <i18n-nb@lister.ping.uio.no>\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"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argument for utskriftsfunksjonen har nullstørrelse"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: sjekker katalog %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: lager katalog %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Klarte ikke åpne katalog(«%1»): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Klarte ikke åpne katalog(«%1»): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: katalogen %1 fins allerede\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: navn=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menyoppføring mangler obligatorisk felt «%1».\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Ukjent verdi for felt %1=«%2».\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: «hotkeycase» kan bare være «sensitive» eller «insensitive»\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Advarsel: Ukjent kjennetegn «%1» på linje %2 i fil %3. "
+"Ignorerer.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 må være definert i menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Klarer ikke åpne fil %1 (prøvde også %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Klarer ikke åpne fil %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"For å kunne lage brukeren sine oppsettsfiler for vindusbehandler,\n"
+"må filene ovenfor være skrivbare (og/eller katalogen må eksistere).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Advarsel: strengen %1 fins ikke i malfil %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menymetode>\n"
+" Les menyelement fra stdin i formatet til «update-menus --stdout»\n"
+" og oppretter menyfiler ved bruk av den oppgitte menymetoden.\n"
+" Valg for install-menu:\n"
+" -h --help : denne meldinga\n"
+" --remove : fjern menyen istedenfor å opprette den.\n"
+" -v --verbose : skriv ut fyldig informasjon\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ingen skript for menymetode er oppgitt!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Klarer ikke åpne script %1 for lesing.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Advarsel: Skriptet %s tilbyr ikke removemenu, menyen ble ikke slettet\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Kjører: «%1»\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: avbryter\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Antall argumenter til funksjon %1 er ikke rett."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Ukjent funksjon: «%1»"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Indirekte brukt, men ikke definert funksjon: «%1»"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Ukjent kjennemerke: «%1»"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Feil ved kodeomforming: «%1»"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Ukjent feil."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Ukjent feil, melding=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Klarte ikke åpne fil «%1»."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Klarte ikke lede data gjennom «%1» (rør åpnet for lesing)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: mangler påkrevd merke: «%2»"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(trolig) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "I fil «%1», ved (eller i definisjonen som slutter ved) linje %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Et sted i inndatafil:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Uventet slutt på fil."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Uventet slutt på linje."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identifikasjonsmerke forventet."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Forventet: «%1»"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Uventet tegn: «%1»"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolsk (enten sann eller usann) forventet.\n"
+"Fant: «%1»"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Ukjent kompatibilitetsmodus: «%1»"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($streng, $erstatte, $med): $erstatte og $med må ha same\n"
+"lengde."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fil %1 linje %2:\n"
+"Ser bort fra oppføringen som krever den manglende pakken %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Leser oversettingsregler i %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Leser inn liste over installerte pakker ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Kjøring av %1 genererte ingen utdata eller returnerte en feil.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Hopper over fil på grunn av feil ...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Leser menyelementfiler i %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Feil ved innlesing av %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menyelement funnet (%2 totalt)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Kjører metode: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skript %1 kunne ikke kjøres."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skript %1 returnerte feilstatus %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skript %1 mottok signal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Kjører metode %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Klarer ikke lage rør."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Kjører menymetoder i %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andre update-menus prosesser låser allerede %1, avslutter."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Klarer ikke låse %1: %2 - Avbryter."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kan ikke skrive til låsefil %1 - Avbryter."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kan ikke fjerne låsefil %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus blir kjørt av bruker."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Venter på at dpkg skal bli ferdig (spalter ut (fork) til bakgrunn).\n"
+"(sjekker %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Mer utdata (om det er mer) kommer fram i %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg låser ikke dpkg sitt statusområde, bra."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Bruk: update-menus [val] \n"
+"Henter pakkedata fra menydatabasen og oppretter menyer for\n"
+"alle program som tilbyr menymetoder, vanligvis vindusbehandlere.\n"
+" -d Skriv ut feilsøkingsmeldinger.\n"
+" -v Utfyllende meldinger om det som skjer.\n"
+" -h, --help Denne meldingen.\n"
+" --menufilesdir=<kat> Legg <kat> til lista over menykataloger\n"
+" som det skal søkes i.\n"
+" --menumethod <metode> Kjør bare menymetode <metode>.\n"
+" --nodefaultdirs Slår av bruk av alle standard menykataloger.\n"
+" --nodpkgcheck Ikke sjekk om pakkene er installert.\n"
+" --remove Fjern opprettede menyer istedenfor.\n"
+" --stdout Skriv ut menylista i et format som passer \n"
+" til å sende vidare til install-menu.\n"
+" --version Skriv ut versjonsinformasjon og avslutt.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Ukjent installeringstilstand «%1» (for tiden er bare «package» støttet)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Skriv ut versjonsinformasjon og avslutter.\n"
diff --git a/po/nl.po b/po/nl.po
new file mode 100644
index 0000000..9d5e835
--- /dev/null
+++ b/po/nl.po
@@ -0,0 +1,378 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-14 21:49+0200\n"
+"Last-Translator: Tim Dijkstra <tim@famdijkstra.org>\n"
+"Language-Team: Debian l10n Dutch <debian-l10n-dutch@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-15\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Afdrukfunctie heeft een argument van grootte nul."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: controleren van map %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: aanmaken van map %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Kon map(%1) niet maken: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Kon map(%1) niet veranderen: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: de map %1 bestaat al\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: naam=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "De menu-ingang mist een verplicht veld \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Onbekende waarde voor veld %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" kan alleen \"sensitive\" of \"insensitive\" "
+"zijn\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Waarschuwing: Onbekende identifier '%1' op regel %2 in bestand "
+"%3. Wordt genegeerd.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 moet gedefinieerd zijn in menumethode %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Kan het bestand %1 niet openen (ook %2 is geprobeerd).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Kan het bestand %1 niet openen.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Om de configuratiebestanden van de gebruiker voor de vensterbeheerder te "
+"kunnen maken,\n"
+"moet het bovenstaande bestand schrijfbaar zijn (en/of de map moet bestaan).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Waarschuwing: de string %1 komt niet voor in het sjabloonbestand %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menumethode>\n"
+" Lees menu-ingangen van stdin in \"update-menus --stdout\" indeling\n"
+" en maak menubestanden gebruikmakend van de opgegeven menumethode.\n"
+" Opties voor install-menu:\n"
+" -h --help : dit bericht\n"
+" --remove : verwijder het menu in plaats van het aan te maken.\n"
+" -v --verbose : wees uitvoerig\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: geen menumethode-script opgegeven!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Kan het script %1 niet lezen.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Waarschuwing: script %1 levert geen removemenu, menu niet verwijderd\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Uitvoeren van \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: bezig met afbreken\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Het aantal argumenten voor de functie %1 klopt niet."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Onbekende functie: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "De functie \"%1\" wordt indirect gebruikt, maar is niet gedefinieerd"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Onbekende identifier: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Conversiefout bij het coderen: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Onbekende fout."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Onbekende fout, bericht=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Kan het bestand \"%1\" niet openen"
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Het lukte niet om data door \"%1\" te voeren (pijp geopend om te lezen)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: er ontbreekt een verplicht label: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(waarschijnlijk) de standaardinvoer"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"In het bestand \"%1\", op (of in de definitie die eindigt op) regel %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Ergens in het invoerbestand:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Onverwacht einde van het bestand."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Onverwacht einde van de regel."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identifier verwacht."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Verwacht: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Onverwacht teken: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Booleaan (\"true\" of \"false\") verwacht.\n"
+"Gevonden: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Onbekende compatibiliteitsmodus \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $vervang, $door): $vervang en $door moeten dezelfde "
+"lengte hebben."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"bestand %1 regel %2:\n"
+"Ingang die het missende pakket %3 nodig heeft wordt verworpen."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lezen van de vertaalregels in %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lezen van de lijst met geïnstalleerde pakketten ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Uitvoer van %1 produceerde geen uitvoer of gaf een fout terug.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Bestand wordt overgeslagen vanwege opgetreden fouten...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Inlezen van de menu-ingangbestanden in %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Fout bij het lezen van %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menu-ingangen gevonden (totaal %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Uitvoeren van methode: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Het script %1 kon niet worden uitgevoerd."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Script %1 retourneerde foutstatus %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Script %1 ontving signaal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Uitvoeren van methode: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Kan geen pijp aanmaken."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Uitvoeren van menumethoden in %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andere update-menu processen hebben %1 al in gebruik. Afgebroken."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Kan %1 niet vergrendelen: %2 - Afgebroken."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kan niet schrijven in het vergrendelbestand %1 - Afgebroken."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kan het vergrendelbestand %1 niet verwijderen."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus wordt uitgevoerd door de gebruiker."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Wachten tot dpkg klaar is (vork naar de achtergrond).\n"
+"(controleren van %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Eventuele verdere uitvoer zal verschijnen in %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg heeft de dpkg-status omgeving niet vastgelegd, mooi."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Gebruik: update-menus [options] \n"
+"Verzamel pakketinformatie uit de menugegevensbank en genereer menus voor "
+"alle\n"
+"progamma's die menu-mehods leveren (meestal vensterbeheerders).\n"
+" -d Geef fout-opsporingsberichten weer.\n"
+" -v Geef uigebreider weer wat er allemaal gebeurt.\n"
+" -h, --help Dit bericht.\n"
+" --menufilesdir=<map> Voeg <map> toe aan de lijst met menumappen om te "
+"doorzoeken.\n"
+" --menumethod=<methode> Voer alleen de menumethode <methode> uit.\n"
+" --nodefaultdirs Schakel het gebruik van alle standaard menumappen "
+"uit.\n"
+" --nodpkgcheck Controleer niet of pakketten geïnstalleerd zijn.\n"
+" --remove Verwijder het menu in plaats van het aan te maken.\n"
+" --stdout Voer de menulijst uit in een formaat dat geschikt "
+"is om via een pijp aan installl-menu te leveren.\n"
+" --version Geef versie-informatie en stop.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Onbekende installatieconditie \"%1\" (momenteel wordt alleen \"package\" "
+"ondersteund)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version Laat versie-informatie zien en stop.\n"
diff --git a/po/nn.po b/po/nn.po
new file mode 100644
index 0000000..2111e83
--- /dev/null
+++ b/po/nn.po
@@ -0,0 +1,376 @@
+# translation of menu.po to Norwegian Nynorsk
+# This file is distributed under the same license as the menu package.
+# Copyright (C) 2004 Debian menu team.
+# HÃ¥vard Korsvoll <korsvoll@skulelinux.no>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu_nn\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2004-10-03 22:38+0200\n"
+"Last-Translator: HÃ¥vard Korsvoll <korsvoll@skulelinux.no>\n"
+"Language-Team: Norwegian nynorsk <i18n-nn@lister.ping.uio.no>\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"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argument for utskriftsfunksjonen har nullstorleik"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: sjekkar katalog %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: lagar katalog %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Klarte ikkje opna katalog(«%1»): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Klarte ikkje opna katalog(«%1»): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: katalogen %1 finst allereie\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: namn=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menyoppføring manglar obligatorisk felt «%1».\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Ukjent verdi for felt %1=«%2».\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: «hotkeycase» kan berre vera «sensitive» eller «insensitive»\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Åtvaring: Ukjent kjenneteikn «%1» på linje %2 i fil %3. "
+"Ignorerer.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 må vera definert i menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Klarer ikkje opna fil %1 (prøvde også %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Klarer ikkje opna fil %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"For å kunne laga brukaren sine oppsettsfiler for vindaugshandteraren,\n"
+"må filene ovanfor vera skrivbare (og/eller katalogen må eksistere).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Ã…tvaring: strengen %1 finst ikkje i malfil %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menymetode>\n"
+" Les menyelement frå stdin i formatet til «update-menus --stdout»\n"
+" og opprettar menyfiler ved bruk av den oppgjevne menymetoden.\n"
+" Val for install-menu:\n"
+" -h --help : denne meldinga\n"
+" -v --verbose : skriv ut fyldig informasjon\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ingen script for menymetode er oppgjeve!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Klarer ikkje opna script %1 for lesing.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Køyrer: «%1»\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: avbryt\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Tal på argument til funksjon %1 er ikkje rett."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Ukjent funksjon: «%1»"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Indirekte brukt, men ikkje definert funksjon: «%1»"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Ukjent kjennemerke: «%1»"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Feil ved kodeomforming: «%1»"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Ukjend feil."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Ukjend feil, melding=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Klarte ikkje opna fil «%1»."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Klarte ikkje leia data gjennom «%1» (røyr opna for lesing)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: manglar påkrevd merke: «%2»"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(truleg) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "I fil «%1», ved (eller i definisjonen som sluttar ved) linje %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Ein stad in inndatafil:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Uventa slutt på fil."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Uventa slutt på linje."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identifikasjonsmerke forventa."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Forventa: «%1»"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Uventa teikn: «%1»"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolsk (anten sann eller usann) forventa.\n"
+"Fann: «%1»"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Ukjend kompatilitetsmodus: «%1»"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($streng, $erstatte, $med): $erstatte og $med må ha same\n"
+"lengd."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Les omsetjingsreglar i %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Les in liste over installerte pakkar ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Køyring av %1 genererte ingen utdata eller returnerte ein feil.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Hoppar over fil på grunn av feil ...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Les menyelementfiler i %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Feil ved innlesing av %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menyelement funne (%2 totalt)."
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "Køyrer metode %1"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Script %1 kunne ikkje køyrast."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Script %1 returnerte feilstatus %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Script %1 mottok signal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Køyrer metode %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Klarer ikkje laga røyr."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Køyrer menymetodar i %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andre update-menus prosessar låser allereie %1, avsluttar."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Klarer ikkje låsa %1: %2 - Avbryt."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kan ikkje skriva til låsefil %1 - Avbryt."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kan ikkje fjerna låsefil %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus vert køyrt av brukar."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Ventar på at dpkg skal bli ferdig (spaltar ut (fork) til bakgrunn).\n"
+"(sjekkar %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Meir utdata (om det er meir) kjem fram i %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg låser ikkje dpkg sitt statusområde, bra."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Bruk: update-menus [val] \n"
+"Hentar pakkedata frå menydatabasen og opprettar menyar for\n"
+"alle program som tilbyr menymetodar, vanlegvis vindaugshandterarar.\n"
+" -d Skriv ut feilsøkingsmeldingar.\n"
+" -v Utfyllande meldingar om det som skjer.\n"
+" -h, --help Denne meldinga.\n"
+" --menufilesdir=<kat> Legg <kat> til lista over menykatalogar\n"
+" som skal søkjast i. --menumethod <metode> Køyr "
+"berre menymetode <metode>.\n"
+" --nodefaultdirs Slår av bruk av alle standard menykatalogar. --"
+"stdout Skriv ut menylista i eit format som passar \n"
+" til å sende vidare til install-menu.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Ukjent installeringstilstand «%1» (for tida er berre «package» støtta)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr ""
+#~ " --version Skriv ut versjonsinformasjon og avsluttar.\n"
diff --git a/po/pl.po b/po/pl.po
new file mode 100644
index 0000000..99ebbff
--- /dev/null
+++ b/po/pl.po
@@ -0,0 +1,371 @@
+# translation of menu.pl.po to Polish
+# Copyright (C) 2007
+# This file is distributed under the same license as the menu package.
+#
+# Wojciech Zareba <wojtekz@comp.waw.pl>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu.pl\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-09 13:21+0200\n"
+"Last-Translator: Wojciech Zareba <wojtekz@comp.waw.pl>\n"
+"Language-Team: Polish <debian-l10n-polish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Podano argument o zerowym rozmiarze do funkcji print."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: sprawdzanie katalogu %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: tworzenie katalogu %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Nie uda³o siê utworzyæ katalogu(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Nie uda³o siê zmieniæ katalogu(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: katalog %1 ju¿ istnieje\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nazwa=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Brak wymaganego pola \"%1\" we wpisie menu.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Nieznana warto¶æ dla pola %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid "install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" mo¿e byæ ustawione tylko na \"sensitive\" lub "
+"\"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Ostrze¿enie: Nieznany identyfikator `%1' w linii %2 w pliku %3. "
+"Zignorowano.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 musi byæ zdefiniowane w metodzie menu %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Nie uda³o siê otworzyæ pliku %1 (ani %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Nie uda³o siê otworzyæ pliku %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Aby utworzyæ pliki konfiguracyjne u¿ytkownika dla menad¿era okien\n"
+"potrzebne s± uprawnienia do zapisyania wy¿ej wymienionych plików\n"
+"(i/lub musi istnieæ katalog).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Ostrze¿enie: napis %1 nie wyst±pi³ w pliku szablonu %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <metoda-menu>\n"
+" Czyta wpisy menu ze standardowego wej¶cia w formacie\n"
+" \"update-menus --stdout\" i generuje pliki menu u¿ywaj±c okre¶lonej metody.\n"
+" Opcje install-menu:\n"
+" -h --help : ten komunikat\n"
+" --remove : usuwa menu zamiast tworzyæ\n"
+" -v --verbose : tryb gadatliwy\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nie okre¶lono skryptu metody menu!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Nie uda³o siê otworzyæ skryptu %1 do odczytu.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Ostrze¿enie: skrypt %1 nie umo¿liwia usuwania menu, menu nie skasowane\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Uruchamianie: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: przerwanie dzia³ania\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Nieprawid³owa liczba argumentów funkcji %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Nieznana funkcja: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Po¶rednio u¿yta, ale niezdefiniowana funkcja: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Nieznany identyfikator: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "B³±d konwersji kodowania: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "B³êdny b³±d."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Nieznany b³±d, komunikat=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Nie uda³o siê otworzyæ pliku \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Nie uda³o siê przes³aæ danych przez \"%1\" (potok otwarty do czytania)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: brak wymaganego tagu: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(prawdopodobnie) standardowe wej¶cie"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "W pliku \"%1\", w linii (lub w definicji koñcz±cej siê w l.) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Gdzie¶ w pliku wej¶ciowym:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Niespodziewany koniec pliku."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Niespodziewany koniec linii."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Brak spodziewanego identyfikatora."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Spodziewano siê \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Niespodziewany znak: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Spodziewano siê warto¶ci logicznej (true lub false).\n"
+"Znaleziono: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Nieznany tryb zgodno¶ci: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr "replacewith($napis, $co, $czym): $co i $czym musz± mieæ identyczn± d³ugo¶æ."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"plik %1 linia %2:\n"
+"Wpis odrzucony z powodu braku pakietu %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Wczytywanie regu³ organizacji menu z %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Czytanie listy zainstalowanych pakietów..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Próba wykonania %1 nie wygenerowa³a danych lub zwróci³a b³±d.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Plik pominiêty z powodu b³êdów...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Czytanie plików wpisów menu z %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "B³±d odczytu %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Znalezionych wpisów menu: %1 (w sumie %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Uruchomiona metoda: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Nie uda³o siê wykonaæ skryptu %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skrypt %1 zwróci³ kod b³êdu %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skrypt %1 odebra³ sygna³ %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Uruchomiona metoda: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Nie uda³o siê utworzyæ potoku."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Wykonywanie metod menu w %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Inne procesy update-menus blokuj± ju¿ %1, wyj¶cie."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Nie uda³o siê zablokowaæ %1: %2 - przerwanie dzia³ania."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Nie uda³o siê zapisaæ do pliku blokady %1 - przerwanie dzia³ania."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Nie uda³o siê usun±æ pliku blokady %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus zosta³ uruchomiony przez u¿ytkownika."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Oczekiwanie na zakoñczenia dzia³ania dpkg (przej¶cie w t³o).\n"
+"(sprawdzanie %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Wyniki przetwarzania pojawi± siê w %1 (o ile bêd±)."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg nie blokuje obszaru stanu, jest dobrze."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"U¿ycie: update-menus [opcje] \n"
+"Pobiera dane o pakietach z bazy danych menu i generuje menu dla wszystkich\n"
+"programów dostarczaj±cych \"metod menu\", zazwyczaj mened¿erów okien.\n"
+" -d Wy¶wietla informacje diagnostyczne.\n"
+" -v Wy¶wietla szczegó³owe informacje.\n"
+" -h, --help Ten komunikat.\n"
+" --menufilesdir=<katalog> Dodaje <katalog> do listy katalogów do przeszukania.\n"
+" --menumethod=<metoda> Uruchamia tylko metodê <metoda>.\n"
+" --nodefaultdirs Pomija standardowe katalogi menu.\n"
+" --nodpkgcheck Nie sprawdza, czy pakiety s± zainstalowane.\n"
+" --remove Nie tworzy, tylko usuwa menu.\n"
+" --stdout Wy¶wietla listê menu w formacie odpowiednim do"
+" przekazania do install-menu.\n"
+" --version Wy¶wietla informacje o wersji i wychodzi.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid "Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr "Nieznany warunek instalacji \"%1\" (obecnie obs³ugiwany jest tylko \"package\")."
+
diff --git a/po/pt.po b/po/pt.po
new file mode 100644
index 0000000..67e44f0
--- /dev/null
+++ b/po/pt.po
@@ -0,0 +1,381 @@
+# Debian menu translation.
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Antonio Amorim <Antonio.Amorim@fisica.fc.ul.pt>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.19\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 1004-11-10 15:38-0300\n"
+"Last-Translator: Antonio Amorim <Antonio.Amorim@fisica.fc.ul.pt>\n"
+"Language-Team: Portuguese <debian-l10n-portuguese@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argumento de tamanho zero para a função print."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: A verificar o directório %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: A criar o directório %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Não consegui criar o directório(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Não consegui mudar para o directório(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: O directório %1 já existe\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nome=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "A entrada de menu não possui um campo obrigatório \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valor desconhecido para o campo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" pode apenas ser \"sensitive\" ou \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Aviso: identificador desconhecido `%1' na linha %2 no ficheiro "
+"%3. Ignorando.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 deve ser definido no método-menu %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Não foi possível abrir ficheiro %1 (também tentado %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Não foi possível abrir o ficheiro %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Para que seja possível criar o(s) ficheiro(s) de configuração do utilizador "
+"para o gestor de janelas,\n"
+"os ficheiros acima têm de ter permissão de escrita (e/ou o directório tem de "
+"existir).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Aviso: a string %1 não aparece no ficheiro de template %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <método-menu>\n"
+" Ler items de menu a partir do item padrão no formato\n"
+" de \"update-menus --stdout\" e gerar ficheiros de menu utilizando\n"
+" o método-menu especificado.\n"
+" Opções para o install-menu:\n"
+" -h --help : esta mensagem\n"
+" --remove : elimine este menu em vez de o gerar.\n"
+" -v --verbose : seja verboso\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nenhum script método-menu especificado !"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Não foi possível abrir o script %1 para leitura.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Aviso: o script %1 não fornece removemenu, o menu não foi removido\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "A executar: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: abortando\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Número de argumentos para a função %1 não corresponde."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Função desconhecida: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Função utilizada indirectamente, mas não definida: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificador desconhecido: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "A codificar o erro de conversão: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Erro desconhecido."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Erro desconhecido, mensagem=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Não é possivel abrir o ficheiro \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Falha ao passar dados através de \"%1\" (pipe aberto para leitura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: falta a Tag necessária: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(provavelmente) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"No ficheiro \"%1\", na linha (ou na definição que termina na) linha %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Em algum lugar no ficheiro de entrada:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Fim de ficheiro inesperado."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Fim de linha inesperado."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identificador esperado."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Esperado: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Caracter inesperado: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Booleano (verdadeiro ou falso) esperado.\n"
+"Encontrado: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Modo de compatibilidade desconhecido: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace e %with devem possuir o "
+"mesmo comprimento."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lendo regras de tradução em %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lendo lista de pacotes instalados ..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "A execução de %1 não gerou saída ou retornou um erro.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Ultrapassando ficheiro devido a erros ...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lendo ficheiros de items de menu em %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Erro ao ler %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 items de menu encontrados (%2 total)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Executando método: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Script %1 não pôde ser executado."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Script %1 retornou status de erro %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Script %1 recebeu sinal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Executando método: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Não foi possível criar pipe."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Executando métodos de menu em %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+"Outros processos update-menus já estão a falzer o lock em %1, finalizando."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Não foi possível fazer lock em %1: %2 - Abortando."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Não foi possível gravar ficheiro de lock %1 - Abortando."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Não foi possível remover ficheiro de lock %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus é executado pelo utilizador."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Aguardando a finalização di dpkg (fazendo fork para segundo plano).\n"
+"(a verificar %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Saída adicional (caso exista) irá aparecer em %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "O dpkg não está fazendo lock na sua àrea de status, perfeito."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Utilização: update-menus [opcções] \n"
+"Reúne os dados de diferentes pacotes da base de dados de menus e gera\n"
+" os menus para todos os programs que providenciam métodos-menu, geralmente\n"
+"gestores de janelas.\n"
+" -d Exibe mensagens de depuração.\n"
+" -v Seja verboso sobre o que está acontecendo.\n"
+" -h, --help Esta mensagem.\n"
+" --menufilesdir=<dir> Adiciona <dir> a lista de directórios de menus a \n"
+" serem procurados.\n"
+" --menumethod=<método> Executa somente o método de menu <método>.\n"
+" --nodefaultdirs Desabilita o uso de todos os directórios de menu\n"
+" padrão.\n"
+" --nodpkgcheck Não verifica se os pacotes estão instalados.\n"
+" --remove Em alternativa remove os menus instalados.\n"
+" --stdout Exibe lista de menu em formato utilizável para "
+"enviar\n"
+" via pipe par o install-menu.\n"
+" --version Exibe informação sobre a versão e termina.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condição de instalação desconhecida \"%1\" (atualmente, somente \"package\" "
+"é suportado)."
diff --git a/po/pt_BR.po b/po/pt_BR.po
new file mode 100644
index 0000000..92b0eed
--- /dev/null
+++ b/po/pt_BR.po
@@ -0,0 +1,391 @@
+# Debian "menu" package. Brazilian Portuguese translation.
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the "menu" package.
+# André Luís Lopes <andrlop@debian.org>, 2004.
+# Sérgio Cipolla <secipolla@gmail.com>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu-2.1.45\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2011-04-17 10:41-0300\n"
+"Last-Translator: Sérgio Cipolla <secipolla@gmail.com>\n"
+"Language-Team: Debian-BR Project <debian-l10n-portuguese@lists.debian.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argumento de tamanho zero para função print."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: checando diretório %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: criando diretório %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Não foi possível criar o diretório(%1) : %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Não foi possível mudar o diretório(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: diretório %1 já existe\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nome=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Entrada de menu não possui o campo obrigatório \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valor desconhecido para o campo %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" pode ser somente \"sensitive\" ou \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Aviso: identificador desconhecido `%1' na linha %2 no arquivo "
+"%3.\n"
+"Ignorando.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu : %1 deve ser definido no método-menu %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Incapaz de abrir arquivo %1 (%2 também tentado).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Incapaz de abrir arquivo %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Para que seja possível criar o(s) arquivo(s) de configuração do usuário para "
+"o\n"
+"gerenciador de janelas, o arquivo citado deve ser escrevível (e/ou o "
+"diretório\n"
+"precisa existir).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Aviso: a cadeia %1 não aparece no arquivo modelo %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <método-menu>\n"
+" Ler entradas de menu a partir da entrada padrão no formato\n"
+" de \"update-menus --stdout\" e gerar arquivos de menu usando\n"
+" o método-menu especificado.\n"
+" Opções para o install-menu:\n"
+" -h --help : esta mensagem.\n"
+" --remove : remover o menu ao invés de gerá-lo.\n"
+" -v --verbose : modo verboso.\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nenhum script método-menu especificado!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Incapaz de abrir o script %1 para leitura.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Aviso: o script %1 não provê removemenu portanto o menu não foi excluído\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Executando: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: abortando\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Número de argumentos para a função %1 não casa."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Função desconhecida: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Função indiretamente usada, mas não definida: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificador desconhecido: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Erro de conversão de codificação: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Erro desconhecido."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Erro desconhecido, mensagem=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Incapaz de abrir arquivo \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Falha ao passar dados através de \"%1\" (pipe aberto para leitura)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: etiqueta requerida faltando: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(provavelmente) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"No arquivo \"%1\", na linha (ou na definição que termina na linha) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Em algum lugar no arquivo de entrada:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Fim de arquivo inesperado."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Fim de linha inesperado."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Identificador esperado."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Esperado: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Caractere inesperado: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Booleano (verdadeiro ou falso) esperado.\n"
+"Encontrado: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Modo de compatibilidade desconhecido: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace e %with devem possuir o "
+"mesmo comprimento."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"arquivo %1 linha %2:\n"
+"Descartando entrada que requer o pacote em falta %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Lendo regras de tradução em %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Lendo lista de pacotes instalados..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Execução de %1 não gerou saída ou retornou um erro.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Pulando arquivo devido a erros...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Lendo arquivos de entrada de menu em %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Erro ao ler %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 entradas de menu encontradas (%2 total)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Executando método: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "O script %1 não pôde ser executado."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "O script %1 retornou status de erro %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "O script %1 recebeu sinal %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Executando método: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Incapaz de criar pipe."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Executando métodos de menu em %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+"Outros processos update-menus já estão bloqueando (lock) %1, finalizando."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Incapaz de bloquear (lock) %1: %2 - Abortando."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Incapaz de escrever no arquivo de lock %1 - Abortando."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Incapaz de remover arquivo de lock %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus é executado pelo usuário."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Aguardando o dpkg finalizar (fazendo fork para segundo plano).\n"
+"(checando %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Saída adicional (caso exista) irá aparecer em %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "O dpkg não está bloqueando (lock) sua área de status, bom."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Uso: update-menus [opções] \n"
+"Obter dados dos pacotes a partir do banco de dados de menus e gerar\n"
+"menus para todos os programas que forneçam método-menu, geralmente\n"
+"gerenciadores de janelas.\n"
+" -d Exibir mensagens de depuração.\n"
+" -v Ser verboso sobre o que está acontecendo.\n"
+" -h, --help Esta mensagem.\n"
+" --menufilesdir=<dir> Adicionar <dir> à lista de diretórios de menus a\n"
+" serem procurados.\n"
+" --menumethod=<método> Executar somente o método de menu <método>.\n"
+" --nodefaultdirs Desabilitar o uso de todos os diretórios de menu "
+"padrão.\n"
+" --nodpkgcheck Não verificar se os pacotes estão instalados.\n"
+" --remove Remover ao invés de gerar os menus.\n"
+" --stdout Exibir lista de menu em formato adequado para "
+"enviar\n"
+" via pipe para o install-menu.\n"
+" --version Exibir informações da versão e sair.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condição de instalação desconhecida \"%1\" (atualmente, somente \"package\" "
+"é suportado)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version Exibe informação de versão e finaliza.\n"
diff --git a/po/ro.po b/po/ro.po
new file mode 100644
index 0000000..449a557
--- /dev/null
+++ b/po/ro.po
@@ -0,0 +1,388 @@
+# menu translation to romanian.
+# Copyright (C) 2008 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# stan ioan-eugen <stan.ieugen@gmail.com>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2008-02-14 23:43+0200\n"
+"Last-Translator: stan ioan-eugen <stan.ieugen@gmail.com>\n"
+"Language-Team: romanian <debian-l10n-romanian@lists.debian.org>\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"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argument de mărime zero pentru funcția de tipărire."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: se verifică directorul %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: se crează directorul %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Nu s-a putut crea directorul(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Nu s-a putut schimba directorul(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: directorul %1 există deja\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: nume=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Intrarea din meniu nu conține câmpul obligatoriu \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Valoare necunoscută pentru câmpul %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" poate fi doar \"sensitive\" sau \"insensitive"
+"\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Avertisment: Identificator necunosut `%1' la linia %2 în "
+"fișierul %3. Se ignoră.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 trebuie să fie definit în metoda-meniu %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Nu se poate deschide fișierul %1 (s-a încercat și %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Nu se poate deschide fișierul %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Pentru a putea crea fișierele de configurare ale utilizatorului, pentru "
+"administratorul de ferestre,\n"
+"fișierul de mai sus trebuie să poată fi scris (și/sau directorul trebuie să "
+"existe).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Avertisment: șirul de caractere %1 nu a apărut în fișierul model %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" Citește intrări în meniu de la stdin în formatul \"update-menus --stdout"
+"\"\n"
+" și generează fișiere meniu folosind metoda-meniu specificată.\n"
+" Opțiuni pentru install-menu:\n"
+" -h --help : acest mesaj\n"
+" --remove : îndepărtează meniul în loc să-l genereze.\n"
+" -v --verbose : detaliat\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: nu s-a specificat nicio metodă-meniu!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Nu s-a putut deschide scriptul %1 pentru citire.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Avertisment: scriptul %1 nu prevede îndepărteazămeniu, meniul nu a fost "
+"șters\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Se execută: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: se abandonează\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Numărul de argumente pentru funcția %1 nu corespunde."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Funcție necunoscută: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Funcție folosită indirect, dar nedefinită: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Identificator necunoscut: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Se codifică eroarea de conversie: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Eroare necunoscută."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Eroare necunoscută, mesaj=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Nu s-a putut deschide fișierul \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"A eșuat trimiterea datelor prin conexiunea pipe \"%1\" (conexiunea pipe "
+"deschisă pentru citire)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: are lipsă o etichetă necesară : \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(probabil) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"În fișierul \"%1\", la (sau în definiția care se încheie la) linia %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Undeva în fișierul de intrare:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Sfârșit de fișier neașteptat."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Sfârșit de linie neașteptat."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Se aștepta identificator."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Se aștepta: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Caracter neașteptat: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Valoare booleană (fie adevărat fie fals) așteptată.\n"
+"S-a găsit: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Mod de compatibilitate necunoscut: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace și $with trebuie să aibe "
+"aceași lungime."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fișierul %1 linia %2:\n"
+"Se ignoră intrările care necesită pachetul lipsă %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Se citesc regulile de translatare din %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Se citește lista cu pachete instalate..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Execuția %1 nu a generat nicio dată de ieșire sau a generat eroare.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Se sare fișierul datorită erorilor...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Se citesc fișierele cu intrări în meniu din %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Eroare la citirea %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "s-au găsit %1 intrări în meniu (%2 în total)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Se execută metoda: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Scriptul %1 nu a putut fi executat."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Scriptul %1 a întors starea de eroare %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Scriptul %1 a primit semnalul %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Se execută metoda: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Nu se poate crea conexiunea pipe."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Se execută metodele-meniu în %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Alte procese de actualizare a meniurilor blochează %1, se iese."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Nu se poate bloca %1: %2 - Abandonez."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Nu se poate scrie în fișierul de blocare %1 - Abandonez."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Nu se poate îndepărta fișierul de blocare %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Actualizarea meniului este executată de utilizator."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Se așteaptă ca dpkg să termine (se trece în fundal).\n"
+"(se verifică %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Alte date de ieșire (dacă mai există) vor apărea în %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg nu blochează zona de stare dpkg, foarte bine."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Utilizare: update-menus [opțiuni] \n"
+"Adună date despre pachete din baza de date meniu și generează intrări în "
+"meniu\n"
+"pentru toate programele care oferă metode-meniu,de obicei programele de "
+"administrare a ferestrelor.\n"
+" -d Afișează mesajele de depanare.\n"
+" -v Afișează detaliat ce acțiuni se întâmplă.\n"
+" -h, --help Acest mesaj.\n"
+" --menufilesdir=<dir> Adaugă <dir> la lista de directoare în care se "
+"caută intrările în meniu.\n"
+" --menumethod=<metodă> Execută doar metoda-meniu <metodă>.\n"
+" --nodefaultdirs Dezactivează utilizarea tuturor directoarelor meniu "
+"standard.\n"
+" --nodpkgcheck Nu verifica dacă pachetele sunt instalate.\n"
+" --remove Îndepărtează intrările în meniu generate.\n"
+" --stdout Formatează meniul în format potrivit pentru a "
+"trimite către \n"
+" install-menu.\n"
+" --version Afișează informațiile despre versiune și ieși.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Condiție de instalare necunoscută \"%1\" (în mod curent, doar \"package\" "
+"este suportată)."
diff --git a/po/ru.po b/po/ru.po
new file mode 100644
index 0000000..ee6cf7c
--- /dev/null
+++ b/po/ru.po
@@ -0,0 +1,383 @@
+# translation of ru.po to Russian
+# Russian translation of menu.
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Dan Korostelev <dan@ats.energo.ru>, 2004.
+# Yuri Kozlov <kozlov.y@gmail.com>, 2004, 2006, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.37\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-10 21:13+0400\n"
+"Last-Translator: Yuri Kozlov <kozlov.y@gmail.com>\n"
+"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "В функцию print передан аргумент нулевого размера."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: проверка каталога %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: Ñоздание каталога %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Ðевозможно открыть каталог(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Ðевозможно Ñменить каталог(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: каталог %1 уже ÑущеÑтвует\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [поддерживаетÑÑ]: имÑ=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Ð’ запиÑи пункта меню отÑутÑтвует необходимое поле \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "ÐеизвеÑтное значение Ð¿Ð¾Ð»Ñ %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" может иметь значение только \"sensitive\" или "
+"\"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Внимание: ÐеизвеÑтный идентификатор `%1' в Ñтроке %2 в файле %"
+"3. ИгнорируетÑÑ.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 должен быть определён в menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Ðе удалоÑÑŒ открыть файл %1 (также и %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Ðе удалоÑÑŒ открыть файл %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Ð”Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑких файлов конфигурации менеджера окон,\n"
+"вышеуказанные файлы должны быть доÑтупны на запиÑÑŒ (и/или каталоги должны "
+"ÑущеÑтвовать).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Внимание: Ñтрока %1 не найдена в файле шаблона %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <метод-меню>\n"
+" Читает запиÑи пунктов меню из stdin в формате \"update-menus --stdout\"\n"
+" и генерирует файлы меню, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¹ метод-меню.\n"
+" Опции install-menu:\n"
+" -h --help : Ñто Ñообщение\n"
+" --remove : удалить меню, а не Ñоздавать.\n"
+" -v --verbose : выдавать подробную информацию\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: не указан метод-меню Ñценарий!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Ðе удалоÑÑŒ открыть Ñценарий %1 на чтение.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Предупреждение: Ñценарий %1 не Ñодержит функции removemenu, меню не удалено\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "ЗапуÑк: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: отмена\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Ðеверное чиÑло аргументов функции %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "ÐеÑвное иÑпользование неопределённой функции: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "ÐеизвеÑтный идентификатор: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Ошибка при преобразовании кодировки: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°, Ñообщение=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Ðе удалоÑÑŒ открыть файл \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Ошибка передачи данных через канал \"%1\" (канал открыт на чтение)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: отÑутÑтвует необходимый тег: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(возможно) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"Ð’ файле \"%1\", в Ñтроке (или в определении, которое кончаетÑÑ Ð½Ð°) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Где-то во входном файле:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Ðеожиданный конец файла."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Ðеожиданный конец Ñтроки."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "ОжидаетÑÑ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "ОжидаетÑÑ: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Ðеожиданный Ñимвол: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"ОжидаетÑÑ Boolean (либо true, либо false).\n"
+"Ðайдено: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "ÐеизвеÑтный compat режим: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace и $with должны иметь "
+"одинаковую длину."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"файл %1, Ñтрока %2:\n"
+"УдалÑÐµÐ¼Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ требует отÑутÑтвующего пакета %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Чтение правил транÑлÑции из %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Чтение ÑпиÑка уÑтановленных пакетов..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Выполнение %1 завершилоÑÑŒ без результата или Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ¾Ð¹.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "ПропуÑк файла из-за ошибок...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Чтение пунктов меню из %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Ошибка Ñ‡Ñ‚ÐµÐ½Ð¸Ñ %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Ðайдено %1 пунктов меню (вÑего %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "ЗапуÑк метода: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Сценарий %1 не может быть выполнен."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Сценарий %1 вернул ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¾ÑˆÐ¸Ð±ÐºÐ¸ %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Сценарий %1 получил Ñигнал %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "ЗапуÑк метода: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Ðе удалоÑÑŒ Ñоздать канал."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "ЗапуÑкаетÑÑ menu-methods из %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Уже запущены другие процеÑÑÑ‹ update-menus, блокирующие %1, выход."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Ðевозможно заблокировать %1: %2 - Отмена."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Ðевозможно удалить файл блокировки %1 - Отмена."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Ðевозможно удалить файл блокировки %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus запущен пользователем."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Ожидание Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ dpkg (работа в фоновом режиме).\n"
+"(проверка %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Дальнейший вывод (еÑли еÑÑ‚ÑŒ) будет перенаправлен в %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg не блокирует облаÑÑ‚ÑŒ ÑтатиÑтики, хорошо."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"ИÑпользование: update-menus [опции] \n"
+"Собирает данные о пакетах из базы данных меню и генерирует меню длÑ\n"
+"вÑех программ, которые предоÑтавлÑÑŽÑ‚ методы-меню, обычно Ñто менеджеры "
+"окон.\n"
+" -d Выводить ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð»Ð°Ð´ÐºÐ¸.\n"
+" -v Подробно Ñообщать что проиÑходит при работе.\n"
+" -h, --help Это Ñообщение.\n"
+" --menufilesdir=<кат> Добавить <кат> в ÑпиÑок поиÑка каталогов меню.\n"
+" --menumethod=<метод> Выполнить только указанный <метод> меню.\n"
+" --nodefaultdirs Ðе иÑпользовать Ñтандартные каталоги меню.\n"
+" --nodpkgcheck Ðе проверÑÑ‚ÑŒ, уÑтановлены ли пакеты.\n"
+" --remove УдалÑÑ‚ÑŒ, а не Ñоздавать меню.\n"
+" --stdout Вывод ÑпиÑка меню в формате, пригодном Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ð¸\n"
+" по каналу в install-menu.\n"
+" --version Показать верÑию и закончить работу.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"ÐеизвеÑтное уÑловие уÑтановки \"%1\" (пока поддерживаетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ \"package"
+"\")."
diff --git a/po/sv.po b/po/sv.po
new file mode 100644
index 0000000..40edf40
--- /dev/null
+++ b/po/sv.po
@@ -0,0 +1,378 @@
+# Swedish translation of menu messages.
+# Copyright (C) 2004, 2006, 2007 Debian menu team
+# This file is distributed under the same license as the menu package.
+# Daniel Nylander <po@danielnylander.se>, 2006, 2007.
+# Jens Arvidsson <jya@sverige.nu>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.30\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-09 10:50+0100\n"
+"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
+"Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Argument för utskriftsfunktion har nollstorlek."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: kontrollerar katalogen %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: skapar katalogen %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Kunde inte skapa katalog(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Kunde inte ändra katalog(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: katalogen %1 finns redan\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [stöds]: namn=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menypost saknar obligatoriska fältet \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Okänt värde för fältet %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" får endast vara \"sensitive\" eller "
+"\"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Varning: Okänd identifierare \"%1\" på rad %2 i fil %3. "
+"Ignorerar.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 måste vara definierad i menymetoden %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Kan inte öppna filen %1 (försökte även med %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Kan inte öppna filen %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"För att kunna skapa användarkonfigurationsfilen/filerna för "
+"fönsterhanteraren,\n"
+"måste ovanstående fil vara skrivbar (och/eller katalogen måste finnas).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Varning: strängen %1 fanns inte i mallfilen %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menymetod>\n"
+" Läs in menyposter från standard in i \"update-menus --stdout\"-format\n"
+" och skapa menyfiler genom att använda den angivna menymetoden.\n"
+" Flaggor för install-menu:\n"
+" -h --help : detta meddelande\n"
+" --remove : ta bort menyn istället för att generera den.\n"
+" -v --verbose : var utförlig\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: inget menymetodsskript angivet!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Kan inte öppna skriptet %1 för läsning.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Varning: skriptet %1 tillhandahåller inte removemenu, menyn inte borttagen\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Kör: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: avbryter\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Antalet argument till funktionen %1 stämmer inte."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Okänd funktion: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Indirekt använd, men inte definierad funktion: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Okänd identifierare: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Fel vid kodningskonversion: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Okänt fel."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Okänt fel, meddelande=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Kunde inte öppna filen \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"Misslyckades med att omleda data genom \"%1\" (rör öppnat för läsning)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: tagg som krävs saknas: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(troligen) standard in"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "I filen \"%1\", vid (eller i definitionen som slutar vid) rad %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Någonstans i inmatningsfilen:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Oväntat filslut."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Oväntat radslut."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "En identifierare förväntades."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Förväntade: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Oväntat tecken: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Boolesk (antingen sann eller falsk) förväntades.\n"
+"Hittade: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Okänt kompatibilitetsläge: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($sträng, $ersätt, $med): $ersätt och $med måste ha samma längd."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"fil %1 rad %2:\n"
+"Förkastar post som kräver saknade paketet %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Läser in översättningsregler i %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Läser in lista över installerade paket..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Körning av %1 genererade ingen utskrift eller returnerade ett fel.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Hoppar över fil på grund av fel...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Läser in menypostfiler i %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Fel vid inläsning av %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menyposter hittades (%2 totalt)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Kör metod: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Skriptet %1 kunde inte köras."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Skriptet %1 returnerade felstatus %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Skriptet %1 mottog signalen %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Kör metod: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Kan inte skapa rör."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Kör menu-methods i %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Andra update-menus-processer låser redan %1, avslutar."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Kan inte låsa %1: %2 - Avbryter."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Kan inte skriva till låsfilen %1 - Avbryter."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kan inte ta bort låsfilen %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus körs av användare."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Väntar på att dpkg ska avsluta (grenar till bakgrund).\n"
+"(kontrollerar %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Ytterligare utdata (om några) kommer att synas i %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg låser inte dpkg:s statusområde, bra."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Användning: update-menus [flaggor] \n"
+"Samla in paketdata från menydatabasen och skapa menyer för alla\n"
+"program som tillhandahåller menu-methods, vanligtvis fönsterhanterare.\n"
+" -d Skriv ut felsökningsmeddelanden.\n"
+" -v Var utförlig om vad som händer.\n"
+" -h, --help Detta meddelande.\n"
+" --menufilesdir=<kat> Lägg till <kat> i menykatalogslistorna att söka i.\n"
+" --menumethod=<metod> Kör endast menymetoden <metod>.\n"
+" --nodefaultdirs Inaktivera användning av alla "
+"standardmenykatalogerna.\n"
+" --nodpkgcheck Kontrollera inte om paket är installerade.\n"
+" --remove Ta bort genererade menyer istället.\n"
+" --stdout Skriv ut menylista i format passande för omledning\n"
+" till install-menu.\n"
+" --version Skriv ut versionsinformation och avsluta.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Okänt installationstillstånd \"%1\" (för närvarande stöds endast \"package"
+"\")."
diff --git a/po/th.po b/po/th.po
new file mode 100644
index 0000000..923e0b3
--- /dev/null
+++ b/po/th.po
@@ -0,0 +1,369 @@
+# Thai translation of Menu sections
+# Copyright (C) 2006-2007 Software in the Public Interest, Inc.
+# This file is distributed under the same license as the menu package.
+# Theppitak Karoonboonyanan <thep@linux.thai.net>, 2006-2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.30\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-09 15:09+0700\n"
+"Last-Translator: Theppitak Karoonboonyanan <thep@linux.thai.net>\n"
+"Language-Team: Thai <thai-l10n@googlegroups.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "ฟังà¸à¹Œà¸Šà¸±à¸™ print ได้รับอาร์à¸à¸´à¸§à¹€à¸¡à¸™à¸•à¹Œà¸§à¹ˆà¸²à¸‡à¹€à¸›à¸¥à¹ˆà¸²"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: à¸à¸³à¸¥à¸±à¸‡à¸•à¸£à¸§à¸ˆà¸ªà¸­à¸šà¹„ดเรà¸à¸—อรี %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: à¸à¸³à¸¥à¸±à¸‡à¸ªà¸£à¹‰à¸²à¸‡à¹„ดเรà¸à¸—อรี %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "ไม่สามารถสร้างไดเรà¸à¸—อรี (%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "ไม่สามารถเปลี่ยนไดเรà¸à¸—อรี (%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: มีไดเรà¸à¸—อรี %1 อยู่à¸à¹ˆà¸­à¸™à¹à¸¥à¹‰à¸§\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: ชื่อ=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "รายà¸à¸²à¸£à¹€à¸¡à¸™à¸¹à¸‚าดเขตข้อมูล \"%1\" ซึ่งจำเป็น\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "พบค่าไม่รู้จัà¸à¹ƒà¸™à¹€à¸‚ตข้อมูล %1=\"%2\"\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" มีค่าเป็น \"sensitive\" หรือ \"insensitive\" "
+"ได้เท่านั้น\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: คำเตือน: พบตัวà¹à¸›à¸£ `%1' ที่ไม่รู้จัภที่บรรทัด %2 ในà¹à¸Ÿà¹‰à¸¡ %3 ดังนั้น จะข้ามไป\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: ต้องà¸à¸³à¸«à¸™à¸” %1 ไว้ในà¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนู %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "ไม่สามารถเปิดà¹à¸Ÿà¹‰à¸¡ %1 (ได้ลอง %2 à¹à¸¥à¹‰à¸§à¸”้วย)\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "ไม่สามารถเปิดà¹à¸Ÿà¹‰à¸¡ %1\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"เพื่อให้สร้างà¹à¸Ÿà¹‰à¸¡à¸„่าตั้งของผู้ใช้สำหรับโปรà¹à¸à¸£à¸¡à¸ˆà¸±à¸”à¸à¸²à¸£à¸«à¸™à¹‰à¸²à¸•à¹ˆà¸²à¸‡à¹„ด้ \n"
+"à¹à¸Ÿà¹‰à¸¡à¸”ังà¸à¸¥à¹ˆà¸²à¸§à¸•à¹‰à¸­à¸‡à¸ªà¸²à¸¡à¸²à¸£à¸–เขียนได้ (à¹à¸¥à¸°/หรือ ไดเรà¸à¸—อรีต้องมีอยู่)\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "คำเตือน: สตริง %1 ไม่มีในà¹à¸Ÿà¹‰à¸¡à¸•à¹‰à¸™à¹à¸šà¸š %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <à¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนู>\n"
+" อ่านรายà¸à¸²à¸£à¹€à¸¡à¸™à¸¹à¸ˆà¸²à¸ stdin ในรูปà¹à¸šà¸šà¸—ี่ออà¸à¸ˆà¸²à¸ \"update-menus --stdout\"\n"
+" à¹à¸¥à¹‰à¸§à¸ªà¸£à¹‰à¸²à¸‡à¹à¸Ÿà¹‰à¸¡à¹€à¸¡à¸™à¸¹à¹‚ดยใช้à¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนูที่à¸à¸³à¸«à¸™à¸”\n"
+" ตัวเลือà¸à¸ªà¸³à¸«à¸£à¸±à¸š install-menu:\n"
+" -h --help : à¹à¸ªà¸”งข้อความช่วยเหลือนี้\n"
+" --remove : ลบเมนูà¹à¸—นที่จะสร้างเมนู\n"
+" -v --verbose : à¹à¸ªà¸”งความคืบหน้าอย่างละเอียด\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: ไม่ได้ระบุสคริปต์à¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนู!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "ไม่สามารถเปิดสคริปต์ %1 สำหรับอ่าน\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "คำเตือน: สคริปต์ %1 ไม่ได้จัดเตรียมà¸à¸²à¸£à¸à¸£à¸°à¸—ำ removemenu ดังนั้นจะไม่ลบเมนู\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸”ำเนินà¸à¸²à¸£: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: จะยà¸à¹€à¸¥à¸´à¸\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "จำนวนอาร์à¸à¸´à¸§à¹€à¸¡à¸™à¸•à¹Œà¸—ี่ส่งให้ฟังà¸à¹Œà¸Šà¸±à¸™ %1 ไม่ถูà¸à¸•à¹‰à¸­à¸‡"
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "ฟังà¸à¹Œà¸Šà¸±à¸™à¹„ม่รู้จัà¸: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "ฟังà¸à¹Œà¸Šà¸±à¸™à¸–ูà¸à¹€à¸£à¸µà¸¢à¸à¹ƒà¸Šà¹‰à¹‚ดยอ้อม à¹à¸•à¹ˆà¹„ม่ได้à¸à¸³à¸«à¸™à¸”ไว้: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "ตัวà¹à¸›à¸£à¹„ม่รู้จัà¸: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "à¸à¸²à¸£à¹à¸›à¸¥à¸‡à¸£à¸«à¸±à¸ªà¸œà¸´à¸”พลาด: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "ข้อผิดพลาดไม่รู้จัà¸"
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "ข้อผิดพลาดไม่รู้จัภข้อความ=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "ไม่สามารถเปิดà¹à¸Ÿà¹‰à¸¡ \"%1\""
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "ไม่สามารถส่งข้อมูลผ่าน \"%1\" (เปิดไปป์ไว้เพื่ออ่านเท่านั้น)"
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: ขาดà¹à¸—็à¸à¸—ี่จำเป็น: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(อาจเป็น) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "ในà¹à¸Ÿà¹‰à¸¡ \"%1\" ที่บรรทัด (หรือในข้อà¸à¸³à¸«à¸™à¸”ที่จบที่บรรทัด) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "ที่ตำà¹à¸«à¸™à¹ˆà¸‡à¸«à¸™à¸¶à¹ˆà¸‡à¹ƒà¸™à¹à¸Ÿà¹‰à¸¡à¸‚้อมูลเข้า:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "à¹à¸Ÿà¹‰à¸¡à¸ˆà¸šà¹‚ดยข้อมูลไม่ครบ"
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "บรรทัดจบโดยข้อมูลไม่ครบ"
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "ต้องà¸à¸²à¸£à¸•à¸±à¸§à¹à¸›à¸£"
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "ต้องà¸à¸²à¸£: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "พบอัà¸à¸‚ระที่ไม่ต้องà¸à¸²à¸£: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"ต้องà¸à¸²à¸£à¸„่าบูลีน (ค่าจริงหรือเท็จ)\n"
+"à¹à¸•à¹ˆà¸—ี่พบคือ: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "โหมดทำงานเข้าà¸à¸±à¸™à¹„ด้ที่ไม่รู้จัà¸: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr "replacewith($string, $replace, $with): $replace à¸à¸±à¸š $with ต้องยาวเท่าà¸à¸±à¸™"
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"à¹à¸Ÿà¹‰à¸¡ %1 บรรทัด %2:\n"
+"จะทิ้งรายà¸à¸²à¸£à¸—ี่ต้องà¸à¸²à¸£à¹à¸žà¸à¹€à¸à¸ˆ %3 ที่ไม่ได้ติดตั้ง"
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸­à¹ˆà¸²à¸™à¸à¸Žà¸à¸²à¸£à¸¢à¹‰à¸²à¸¢à¹ƒà¸™ %1"
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸­à¹ˆà¸²à¸™à¸£à¸²à¸¢à¸Šà¸·à¹ˆà¸­à¹à¸žà¸à¹€à¸à¸ˆà¸—ี่ติดตั้งไว้..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "à¸à¸²à¸£à¸—ำงานของ %1 ไม่ให้ผลลัพธ์ใดๆ หรือเà¸à¸´à¸”ข้อผิดพลาด\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸‚้ามà¹à¸Ÿà¹‰à¸¡à¹„ปเนื่องจาà¸à¹€à¸à¸´à¸”ข้อผิดพลาด...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸­à¹ˆà¸²à¸™à¹à¸Ÿà¹‰à¸¡à¸£à¸²à¸¢à¸à¸²à¸£à¹€à¸¡à¸™à¸¹à¹ƒà¸™ %1"
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "เà¸à¸´à¸”ข้อผิดพลาดขณะอ่าน %1\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "พบรายà¸à¸²à¸£à¹€à¸¡à¸™à¸¹ %1 รายà¸à¸²à¸£ (ทั้งหมด %2)"
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸”ำเนินà¸à¸²à¸£à¸à¸²à¸£à¸à¸£à¸°à¸—ำ: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "ไม่สามารถเรียà¸à¹ƒà¸Šà¹‰à¸ªà¸„ริปต์ %1"
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "สคริปต์ %1 เà¸à¸´à¸”ข้อผิดพลาดรหัส %2"
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "สคริปต์ %1 ได้รับสัà¸à¸à¸²à¸“ %2"
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸”ำเนินà¸à¸²à¸£à¸à¸²à¸£à¸à¸£à¸°à¸—ำ: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "ไม่สามารถสร้างไปป์"
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "à¸à¸³à¸¥à¸±à¸‡à¸”ำเนินà¸à¸²à¸£à¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนูต่างๆ ใน %1"
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "โพรเซส update-menus อื่น à¸à¸³à¸¥à¸±à¸‡à¸¥à¹‡à¸­à¸„à¹à¸Ÿà¹‰à¸¡ %1 อยู่ จะออà¸à¸ˆà¸²à¸à¹‚ปรà¹à¸à¸£à¸¡"
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "ไม่สามารถล็อค %1: %2 - ขอยà¸à¹€à¸¥à¸´à¸"
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "ไม่สามารถเขียนà¹à¸Ÿà¹‰à¸¡à¸¥à¹‡à¸­à¸„ %1 - ขอยà¸à¹€à¸¥à¸´à¸"
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "ไม่สามารถลบà¹à¸Ÿà¹‰à¸¡à¸¥à¹‡à¸­à¸„ %1"
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "update-menus ถูà¸à¹€à¸£à¸µà¸¢à¸à¹‚ดยผู้ใช้ธรรมดา"
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"à¸à¸³à¸¥à¸±à¸‡à¸£à¸­à¹ƒà¸«à¹‰ dpkg ทำงานเสร็จ (ฟอร์à¸à¹€à¸›à¹‡à¸™à¹‚พรเซสเบื้องหลัง)\n"
+"(à¸à¸³à¸¥à¸±à¸‡à¸•à¸£à¸§à¸ˆà¸ªà¸­à¸š %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "ผลลัพธ์อื่น (ถ้ามี) จะปราà¸à¸à¹ƒà¸™ %1"
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "dpkg ไม่ได้ล็อคà¹à¸Ÿà¹‰à¸¡à¸ªà¸–านะ dpkg อยู่.. ดีละ"
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"วิธีใช้: update-menus [ตัวเลือà¸] \n"
+"รวบรวมข้อมูลà¹à¸žà¸à¹€à¸à¸ˆà¸•à¹ˆà¸²à¸‡à¹† จาà¸à¸à¸²à¸™à¸‚้อมูลเมนู à¹à¸¥à¹‰à¸§à¸ªà¸£à¹‰à¸²à¸‡à¹€à¸¡à¸™à¸¹à¸ªà¸³à¸«à¸£à¸±à¸šà¸—ุà¸à¹‚ปรà¹à¸à¸£à¸¡à¸—ี่สนับสนุน\n"
+"à¸à¸²à¸£à¸à¸£à¸°à¸—ำเมนู ซึ่งโดยปà¸à¸•à¸´à¸à¹‡à¸„ือโปรà¹à¸à¸£à¸¡à¸ˆà¸±à¸”à¸à¸²à¸£à¸«à¸™à¹‰à¸²à¸•à¹ˆà¸²à¸‡à¸•à¹ˆà¸²à¸‡à¹†\n"
+" -d à¹à¸ªà¸”งข้อมูลดีบั๊à¸\n"
+" -v à¹à¸ªà¸”งความคืบหน้าต่างๆ อย่างละเอียด\n"
+" -h, --help à¹à¸ªà¸”งข้อความช่วยเหลือนี้\n"
+" --menufilesdir=<dir> เพิ่ม <dir> เข้าในรายà¸à¸²à¸£à¹„ดเรà¸à¸—อรีของเมนูที่จะใช้ค้นหา\n"
+" --menumethod=<method> ดำเนินà¸à¸²à¸£à¹€à¸‰à¸žà¸²à¸°à¸à¸²à¸£à¸à¸£à¸°à¸—ำ <method>\n"
+" --nodefaultdirs ปิดใช้ไดเรà¸à¸—อรีมาตรà¸à¸²à¸™à¸‚องเมนู\n"
+" --nodpkgcheck ไม่ต้องตรวจสอบว่าà¹à¸žà¸à¹€à¸à¸ˆà¸–ูà¸à¸•à¸´à¸”ตั้งไว้หรือไม่\n"
+" --remove ลบเมนูà¹à¸—นที่จะสร้างเมนู\n"
+" --stdout à¹à¸ªà¸”งผลลัพธ์รายà¸à¸²à¸£à¹€à¸¡à¸™à¸¹à¹ƒà¸™à¸£à¸¹à¸›à¹à¸šà¸šà¸—ี่เหมาะสำหรับส่งต่อทางไปป์\n"
+" ให้à¸à¸±à¸šà¸„ำสั่ง install-menu\n"
+" --version à¹à¸ªà¸”งข้อมูลรุ่นของโปรà¹à¸à¸£à¸¡à¹à¸¥à¹‰à¸§à¸ˆà¸šà¸à¸²à¸£à¸—ำงาน\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr "เงื่อนไขà¸à¸²à¸£à¸•à¸´à¸”ตั้ง \"%1\" ที่ไม่รู้จัภ(ขณะนี้ สนับสนุนเพียงเงื่อนไข \"package\" เท่านั้น)"
diff --git a/po/tr.po b/po/tr.po
new file mode 100644
index 0000000..88dc831
--- /dev/null
+++ b/po/tr.po
@@ -0,0 +1,381 @@
+# Turkish translation of menu.
+# This file is distributed under the same license as the menu package.
+# Çağatay Tengiz <cagatay@tengiz.net>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2005-02-17 20:29+0200\n"
+"Last-Translator: Çağatay Tengiz <cagatay@tengiz.net>\n"
+"Language-Team: Turkish <debian-l10n-turkish@lists.debian.org>\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"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Yazdırma fonksiyonu için sıfır boyutlu argüman"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: %1 dizini kontrol ediliyor\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: %1 dizini yaratılıyor:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "\"%1\" dizini yaratılamıyor: %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "\"%1\" dizinine geçilemiyor: %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: %1 dizini zaten mevcut\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [desteklenen]: isim=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Menü girişinde eksik zorunlu alan: \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "%1 alanı için bilinmeyen \"%2\" değeri.\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: \"hotkeycase\" yalnızca \"sensitive\" veya \"insensitive\" "
+"olabilir.\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Uyarı: %3 dosyasının %2 no'lu satırında bilinmeyen tanıtıcı `%"
+"1'. Gözardı ediliyor.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1, %2 menu-yönteminde tanımlanmalı"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "%1 dosyası açılamıyor. (Ayrıca %2 de denendi).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "%1 dosyası açılamıyor.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Pencere yöneticisi için kullanıcı yapılandırma dosyalarının \n"
+"oluşturulabilmesi için yukarıdaki dosyaların yazılabilir olması \n"
+"(ve/veya dizinlerin oluşturulmuş olması) gerekmektedir.\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Uyarı: %1 dizgisi, %2 şablon dosyasında hiç yer almıyor.\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-mnu [-vh] <menü-yöntemi>\n"
+" Menü girişlerini \"update-menus --stdout\" formatında stdin'den\n"
+" okur ve menü dosyalarını belirtilrn menü-yöntemi'ne göre olusturur.\n"
+" install-menu için Seçenekler :\n"
+" -h --help : bu ileti\n"
+" -v --verbose : ayrıntı ver\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: uygulanacak menü-yöntemi betiği belirtilmedi !"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "%1 betiği okuma için açılamıyor.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Çalıştırılan: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: durduruluyor\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "%1 fonksiyonu değişken sayısı uyumsuz."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Bilinmeyen fonksiyon: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Dolaylı kullanılan, fakat tanımlanmayan fonksiyon: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Bilinmeyen tanıtıcı: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Kodlama dönüşümü hatası: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Bilinmeyen hata."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Bilinmeyen hata, ileti=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "\"%1\" dosyası açılamadı."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr ""
+"\"%1\" üzerinden veri borulaması başarısız. (boru, okuma için açılmış)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1:Gerekli \"%2\" etiketi eksik"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(olasılıkla) stdin"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"\"%1\" dosyasında, \"%2\" satırında (veya tanımlamanın sona erdiği "
+"satırda): \n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Giriş dosyasında bir yerde:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Beklenmeyen dosya sonu."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Beklenmeyen satır sonu."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Tanıtıcı gerekli."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Beklenen: \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Beklenmeyen karakter: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Mantıksal değer (true veya false) gerekli.\n"
+"Bulunan: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Bilinmeyen uyumluluk kipi: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace ve $with aynı uzunlukta "
+"olmalı."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "%1 dosyasındaki çeviri kuralları okunuyor."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Kurulu paket listesi okunuyor..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "%1 yürütülmesi çıktı üretmedi veya hata ile sonlandı.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Hatalardan dolayı dosya atlanıyor...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "%1 dosyasındaki menü giriş dosyaları okunuyor."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "%1 dosyasının okunmasında hata.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "%1 menü girişi bulundu (toplam %2)."
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "Çalıştırılan yöntem: %1"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "%1 betiği çalıştırılamadı."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "%1 betiği %2 hata durumunu döndürdü."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "%1 betiği %2 sinyalini aldı."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Çalıştırılan yöntem: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Boru oluşturulamıyor."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "%1 dosyasındaki menü-yöntemleri çalıştırılıyor."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+"%1 diğer update-menu süreçleri tarafından zaten kilitlenmiş, çıkılıyor."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "%1 kilitlenemiyor: %2 - Durduruluyor."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "%1 kilit dosyasına yazılamıyor - Durduruluyor."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Kilit dosyası %1 kaldırılamıyor."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus kullanıcı tarafından çalıştırılıyor."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"dpkg'nin sonlanması bekleniyor (arka alanda )\n"
+"(%1 kontrol ediliyor)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Sonraki çıktıların (eğer varsa) gözükeceği yer: %1"
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg, dpkg durum alanını kilitlemiyor. Güzeel..."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"update-menus:çeşitli pencere yöneticileri (ve dww ve pdmenu) \n"
+" yapılandırma dosyalarını günceller.\n"
+" Kullanımı : update-menus [seçenekler] \n"
+" -v Neler olup bittiği hakkında ayrıntı ver.\n"
+" -d Hata ayıklama iletilerini dök.\n"
+" -h, --help Bu ileti.\n"
+" --menufilesdir <dizin> Taranacak menü dizini listesine <dizin> dizinini\n"
+" ekle.\n"
+" --menumethod <yöntem> Yalnızca <yöntem> menü-yöntemini çalıştır.\n"
+" --nodefaultdirs Tüm standart menü dizinlerinin kullanımını\n"
+" devre dışı bırak.\n"
+" --stdout Menü listesi çıktısını, install-menu'ye\n"
+" borulanacak biçimde ver.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Bilinmeyen kurulum durumu \"%1\" (şu anda yalnızca \"package\" "
+"desteklenmektedir)."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version Sürüm bilgisini göster ve çık.\n"
diff --git a/po/uk.po b/po/uk.po
new file mode 100644
index 0000000..2460302
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,382 @@
+# translation of ru.po to Ukrainian
+# Russian translation of menu.
+# Copyright (C) 2004 Debian menu team
+# This file is distributed under the same license as the menu package.
+#
+# Serhij Dubyk <serhijdubyk@gmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.37\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2011-03-11 12:08+0300\n"
+"Last-Translator: Serhij Dubyk <serhijdubyk@gmail.com>\n"
+"Language-Team: Ukrainian Linux Team <translation@linux.org.ua>\n"
+"Language: \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=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-Poedit-Language: Ukrainian\n"
+"X-Poedit-Country: UKRAINE\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "У функцію „print“ переданий аргумент нульового розміру."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu: перевірка теки „%1“\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu: ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñ‚ÐµÐºÐ¸ „%1“:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Ðе вдалоÑÑ Ñтворити теку (%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Ðе вдалоÑÑ Ð¿ÐµÑ€ÐµÐ¹Ñ‚Ð¸ у теку (%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu: тека „%1“ вже Ñ–Ñнує\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu: [supported]: ім’Ñ=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "У запиÑÑ– пункту меню відÑутнє необхідне поле „%1“.\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Ðевідоме Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ %1=„%2“.\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"install-menu: „hotkeycase“ може мати Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ „sensitive“ чи "
+"„insensitive“\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu: Увага: невідомий ідентифікатор „%1“ у Ñ€Ñдку %2 з файлу „%3“. "
+"ІгноруєтьÑÑ.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 повинен бути визначений у menu-method %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл %1 (Ñк Ñ– %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Щоб Ñтворювати влаÑні конфігураційні файли Ð´Ð»Ñ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ð° вікон,\n"
+"вищевказані файли повинні бути доÑтупні на Ð·Ð°Ð¿Ð¸Ñ (та/чи теки повинні "
+"Ñ–Ñнувати).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Увага: Ñ€Ñдок %1 не знайдено у файлі шаблону %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" Читає запиÑи пунктів меню з stdin у форматі „update-menus -- stdout“\n"
+" та генерує файли меню, викориÑтовуючи зазначений menu-method.\n"
+" Параметри install-menu:\n"
+" -h --help: це повідомленнÑ\n"
+" --remove: вилучити меню, а не Ñтворювати.\n"
+" -v --verbose: видавати докладну інформацію\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu: не вказано Ñценарій Ð´Ð»Ñ menu-method!"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ Ñценарій %1 Ð´Ð»Ñ Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "Увага: Ñценарій %1 не міÑтить функції „removemenu“, меню не вилучено\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "ЗапуÑк: „%1“\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu: %1: ÑкаÑÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ñ–Ñ—\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Ðеправильне чиÑло аргументів Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— %1."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Ðевідома функціÑ: „%1“"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "ÐеÑвне викориÑÑ‚Ð°Ð½Ð½Ñ Ð½ÐµÐ²Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾Ñ— функції: „%1“"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Ðевідомий ідентифікатор: „%1“"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Помилка при перетворенні кодуваннÑ: „%1“"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Ðевідома помилка."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Ðевідома помилка, повідомленнÑ=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ файл „%1“."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Помилка передачі даних через канал „%1“ (канал відкритий на читаннÑ)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: відÑÑƒÑ‚Ð½Ñ Ð½ÐµÐ¾Ð±Ñ…Ñ–Ð´Ð½Ð° мітка: „%2“"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(можливо) stdin (Ñтандартний ввід)"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "У файлі „%1“, у Ñ€Ñдку (або у визначенні, Ñке закінчуєтьÑÑ Ñ‚ÑƒÑ‚) %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "ДеÑÑŒ у вхідному файлі:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "ÐеÑподіваний кінець файлу."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "ÐеÑподіваний кінець Ñ€Ñдка."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "ОчікуєтьÑÑ Ñ–Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ‚Ð¾Ñ€."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "ОчікуєтьÑÑ: „%1“"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "ÐеÑподіваний Ñимвол: „%1“"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"ОчікуєтьÑÑ Ð»Ð¾Ð³Ñ–Ñ‡Ð½Ðµ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ (або „true“, або ж „false“).\n"
+"Знайдено: „%1“"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Ðевідомий режим ÑуміÑноÑÑ‚Ñ– („compat“): „%1“"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace та $with повинні мати "
+"однакову довжину."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"файл %1, Ñ€Ñдок %2:\n"
+"ВилучаєтьÑÑ, Ð·Ð°Ð¿Ð¸Ñ Ð²Ð¸Ð¼Ð°Ð³Ð°Ñ” відÑутнього пакунка %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Ð§Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð» Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ñƒ %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Ð§Ð¸Ñ‚Ð°Ð½Ð½Ñ ÑпиÑку вÑтановлених пакунків…"
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ %1 завершилоÑÑ Ð±ÐµÐ· результату або з помилкою.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "ПропуÑк файлу через помилки…\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Ð§Ð¸Ñ‚Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñ–Ð² Ð´Ð»Ñ Ð¿ÑƒÐ½ÐºÑ‚Ñ–Ð² меню з %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Помилка при читанні %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Знайдено пунктів меню: %1 (уÑього %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "ЗапуÑк методу: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Сценарій %1 не може бути виконаний."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Сценарій %1 повернув помилку %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Сценарій %1 отримав Ñигнал %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "ЗапуÑк методу: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Ðе вдалоÑÑ Ñтворити канал."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "ЗапуÑк menu-method-ів з %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "Вже запущені інші процеÑи „update-menu“, що блокують %1, отож вихід."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Ðеможливо заблокувати %1: %2 — ÑкаÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Ðе вдалоÑÑ Ð·Ð°Ð¿Ð¸Ñати у файл Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ %1 — ÑкаÑÑƒÐ²Ð°Ð½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Ðе вдаєтьÑÑ Ð²Ð¸Ð»ÑƒÑ‡Ð¸Ñ‚Ð¸ файл Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "update-menu запущено кориÑтувачем."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"ОчікуєтьÑÑ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸ „dpkg“ (робота у фоновому режимі).\n"
+"(перевірка %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Подальший вивід (Ñкщо такий буде) буде перенаправлено у %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg не блокує облаÑÑ‚ÑŒ ÑтатуÑу, це нормально."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"ВикориÑтаннÑ: update-menus [опції]\n"
+"Збирає дані про пакунки з бази даних меню та генерує меню длÑ\n"
+"уÑÑ–Ñ… програм, Ñкі надають menu-method-и, зазвичай це менеджери вікон.\n"
+" -d Виводити Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð»Ð°Ð³Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ.\n"
+" -v Докладно повідомлÑти що відбуваєтьÑÑ Ð¿Ñ€Ð¸ роботі.\n"
+" -h, --help Це повідомленнÑ.\n"
+" --menufilesdir=<тека> Додати <теку> до ÑпиÑку пошуку тек меню.\n"
+" --menumethod=<метод> Виконати лише вказаний <метод>-меню.\n"
+" --nodefaultdirs Ðе викориÑтовувати Ñтандартні теки меню.\n"
+" --nodpkgcheck Ðе перевірÑти, чи вÑтановлені пакунки.\n"
+" --remove Вилучати, а не Ñтворювати меню.\n"
+" --stdout Ð’Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ ÑпиÑку меню у форматі, придатному Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð°Ñ‡Ñ–\n"
+" по каналу в install-menu.\n"
+" --version Показати верÑÑ–ÑŽ та завершити роботу.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Ðевідома умова вÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ â€ž%1“ (наразі підтримуєтьÑÑ Ð»Ð¸ÑˆÐµ „package“)."
diff --git a/po/vi.po b/po/vi.po
new file mode 100644
index 0000000..4dd6c08
--- /dev/null
+++ b/po/vi.po
@@ -0,0 +1,400 @@
+# Vietnamese Translation for menu.
+# Copyright © 2007 Free Software Foundation, Inc.
+# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.37\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-17 18:05+0930\n"
+"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
+"Language-Team: Vietnamese <vi-VN@googlegroups.com>\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.7b1\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "Äối số có kích cỡ số không tá»›i chức năng in."
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "trình đơn cài đặt: đang kiểm tra thư mục %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "trình đơn cài đặt: đang tạo thư mục %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "Không thể tạo thư mục(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "Không thể chuyển đổi thư mục(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "trình đơn cài đặt: thư mục %1 đã có\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "trình đơn cài đặt: [được hỗ trợ]: tên=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "Mục trình Ä‘Æ¡n thiếu trÆ°á»ng bắt buá»™c \"%1\".\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "Không biết giá trị cho trÆ°á»ng %1=\"%2\".\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr ""
+"trình Ä‘Æ¡n cài đặt: \"hotkeycase\" (phím nóng là chữ hoa/thÆ°á»ng) chỉ có thể "
+"là \"sensitive\" (phân biệt chữ hoa/thÆ°á»ng) hay \"insensitive\" (không phân "
+"biệt)\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"trình đơn cài đặt: cảnh báo : không biết dấu hiệu nhận diện `%1' trên dòng %"
+"2 trong tập tin %3 nên bỠqua.\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr ""
+"trình đơn cài đặt: %1 phải được xác định trong menu-method (phương pháp "
+"trình đơn) %2"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "Không thể mở tập tin %1 (cũng đã thử %2).\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "Không thể mở tập tin %1.\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"Äể có khả năng tạo các tập tin cấu hình ngÆ°á»i dùng cho trình quản lý cá»­a "
+"sổ,\n"
+"tập tin ở trên cần phải có khả năng ghi (và/hay thư mục đó cần tồn tại).\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "Cảnh báo : chuỗi %1 không nằm trong tập tin mẫu %2\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+"\n"
+"[install-menu: trình đơn cài đặt\n"
+"menu-method: phương pháp trình đơn]\n"
+"\n"
+" Äá»c các mục nhập trình Ä‘Æ¡n từ thiết bị nhập chuẩn có dạng \"update-menus --"
+"stdout\"\n"
+"\t(cập nhật các trình đơn, thiết bị xuất chuẩn)\n"
+" và tạo ra các tập tin trình đơn bằng phương pháp trình đơn đã ghi rõ.\n"
+" Tùy chá»n cho install-menu:\n"
+" -h --help \t: hiển thị _trợ giúp_ này\n"
+" --remove\t: gỡ bỠtrình đơn thay vào tạo ra nó.\n"
+" -v --verbose \t: xuất _chi tiết_\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "trình đơn cài đặt: chưa ghi rõ văn lệnh kiểu phương pháp trình đơn."
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "Không thể mở văn lệnh %1 để Ä‘á»c.\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+"Cảnh báo : văn lệnh %1 không cung cấp chức năng removemenu nên không xoá "
+"trình đơn\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "Äang chạy: \"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "Trình Ä‘Æ¡n cài đặt: %1: hủy bá»\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "Số đối số tới chức năng %1 không khớp."
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "Không biết chức năng: \"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "Chức năng được dùng gián tiếp, nhưng chưa được xác định: \"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "Không biết dấu hiệu nhận diện: \"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "Lỗi chuyển đổi bảng mã: \"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "Lỗi không rõ."
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "Lỗi không rõ, thông điệp=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "Không thể mở tập tin \"%1\"."
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "Lá»—i gởi dữ liệu qua ống dẫn \"%1\" (ống dẫn được mở để Ä‘á»c)."
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1: thiếu thẻ cần thiết: \"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(rất có thể là) thiết bị nhập chuẩn"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr ""
+"Trong tập tin \"%1\", ở (hay trong lá»i định nghÄ©a kết thúc tại) dòng %2:\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "Tại nơi nào trong tập tin nhập:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "Gặp kết thúc tập tin bất thÆ°á»ng."
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "Gặp kết thúc dòng bất thÆ°á»ng."
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "Yêu cầu dấu hiệu nhận diện."
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "Yêu cầu : \"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "Gặp ký tá»± bất thÆ°á»ng: \"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"Yêu cầu giá trị luận lý (hoặc đúng hoặc sai).\n"
+"Tìm thấy: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "Không biết chế đô tương thích: \"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace (thay thế) và $with (bằng) "
+"phải có cùng độ dài."
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"tập tin %1 dòng %2:\n"
+"Äang hủy mục nhập yêu cầu gói bị thiếu %3."
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "Äang Ä‘á»c các quy tắc thông dịch trong %1."
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "Äang Ä‘á»c danh sách các gói đã cài đặt..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "Việc thực hiện %1 chưa tạo ra dữ liệu xuất, hoặc đã trả vỠlỗi.\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "Äang bá» qua tập tin vì gặp lá»—i...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "Äang Ä‘á»c các tập tin kiểu menu-entry ()mục nhập trình Ä‘Æ¡n trong %1."
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "Gặp lá»—i khi Ä‘á»c %1.\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "Tìm thấy %1 mục nhập trình đơn (tổng %2)."
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "Äang chạy phÆ°Æ¡ng pháp: %1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "Không thể thực hiện văn lệnh %1."
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "Văn lệnh %1 đã trả vỠtrạng thái lỗi %2."
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "Văn lệnh %1 đã nhận tín hiệu %2."
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "Äang chạy phÆ°Æ¡ng pháp: %1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "Không thể tạo ống dẫn."
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "Äang chạy menu-methods (các phÆ°Æ¡ng pháp trình Ä‘Æ¡n) trong %1."
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr ""
+"Những tiến trình update-menus (cập nhật các trình đơn) đang khoá %1 nên sẽ "
+"thoát."
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "Không thể khoá %1: %2 nên hủy bá»."
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "Không thể ghi vào tâp tin khoá %1 nên hủy bá»."
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "Không thể gỡ bỠtập tin khoá %1."
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr ""
+"Tiến trình update menus (cập nhật các trình Ä‘Æ¡n) được chạy bởi ngÆ°á»i dùng."
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"Äang Ä‘á»i trình dpkg chạy xong (Ä‘ang tạo tiến trình con vào ná»n).\n"
+"(đang kiểm tra %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "Kết xuất thêm (nếu có) sẽ xuất hiện trong %1."
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Trình dpkg không đang khoá vùng trạng thái dpkg: tốt."
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"Cách sá»­ dụng: update-menus [tùy_chá»n ...] \n"
+"\n"
+"[update-menus: cập nhật các trình đơn]\n"
+"\n"
+"Thu thập các dữ liệu vỠgói trong cơ sở dữ liệu trình đơn,\n"
+"và tạo ra các trình đơn cho tất cả các chương trinh cung cấp\n"
+"phÆ°Æ¡ng pháp trình Ä‘Æ¡n, thÆ°á»ng là trình quản lý cá»­a sổ.\n"
+"\n"
+" -d Xuất thông điệp _go lỗi_\n"
+" -v Xuất _chi tiết_.\n"
+" -h, --help Hiển thị _trợ giúp_ này.\n"
+" --menufilesdir=<thư_mục> Thêm <thư_mục> vào các danh sách\n"
+"\t\tthư mục trình đơn trong chúng cần tìm kiếm qua.\n"
+" --menumethod=<phương_pháp> Chạy chỉ phương pháp trình đơn này.\n"
+" --nodefaultdirs Tắt khả năng sá»­ dụng má»i thÆ° mục trình Ä‘Æ¡n chuẩn\n"
+"\t[không có thư mục mặc định]\n"
+" --nodpkgcheck Äừng kiểm tra gói đã được cài đặt chÆ°a\n"
+" --remove Gỡ bỠcác trình đơn đã tạo ra, thay thế.\n"
+" --stdout Xuất danh sách trình đơn theo định dạng thích hợp\n"
+"\t\t\t\tđể gửi qua ống dẫn cho chức năng install-menu.\n"
+" --version Xuất thông tin vỠphiên bản, rồi thoát.\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr ""
+"Không biết Ä‘iá»u kiện cài đặt \"%1\" (hiện thá»i chỉ há»— trợ \"package\" (gói))."
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version Xuất thông tin phiên bản rồi thoát.\n"
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 0000000..8e2e4c9
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,368 @@
+# The Simplified Chinese translation of Debian menu package.
+# Copyright (C) Year Free Software Foundation, Inc.
+# Yongtao Yang <yongtao.yang@telia.com>, 2004.
+# Carlos Z.F. Liu <carlos_liu@yahoo.com>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: menu 2.1.18\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2004-10-25 00:17+1300\n"
+"Last-Translator: Carlos Z.F. Liu <carlos_liu@yahoo.com>\n"
+"Language-Team: zh_CN <i18n-translation@lists.linux.net.cn>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "打å°å‡½æ•°å‚数长度为零。"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu:检查目录 %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu:创建目录 %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "无法创建目录(%1):%2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "无法改å˜ç›®å½•(%1):%2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu:目录 %1 å·²ç»å­˜åœ¨\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu:[supported]:å称=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "èœå•æ¡ç›®ç¼ºå°‘必须的域“%1â€ã€‚\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "未知的域值 %1=“%2â€ã€‚\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr "install-menu:“hotkeycaseâ€çš„值åªèƒ½æ˜¯â€œsensitiveâ€æˆ–者“insensitiveâ€\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu:警告:在文件 %3 的第 %2 è¡Œå‘现未知的标识“%1â€ã€‚程åºå°†å¿½ç•¥å®ƒã€‚\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu: %1 必须在 menu-method %2 中被定义"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "无法打开文件 %1(åŒæ—¶è¯•æŽ¢äº†æ–‡ä»¶ %2)。\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "无法打开文件 %1。\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"为了给窗å£ç®¡ç†å™¨åˆ›å»ºç”¨æˆ·é…置文件,\n"
+"上述文件必须是å¯å†™çš„(以åŠ/或者目录必须存在)。\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "警告:字符串 %1 ä¸åœ¨æ¨¡æ¿æ–‡ä»¶ %2 中\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+#, fuzzy
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" 以“update-menus --stdoutâ€æ ¼å¼ä»Žæ ‡å‡†è¾“入中读å–èœå•æ¡ç›®\n"
+" 并且用指定的 menu-method 产生èœå•æ–‡ä»¶ã€‚\n"
+" install-menu的选项:\n"
+" -h --help :本信æ¯\n"
+" -v --verbose :详细\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu:未指定 menu-method 脚本ï¼"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "无法打开脚本 %1 以读å–。\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr ""
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "正在è¿è¡Œï¼šâ€œ%1â€\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu:%1:正在放弃\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "函数 %1 çš„å‚数个数ä¸åŒ¹é…。"
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "未知函数:“%1â€"
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "未定义的被间接用到的函数:“%1â€"
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "未知的标识符:“%1â€"
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "ç¼–ç è½¬æ¢é”™è¯¯ï¼šâ€œ%1â€"
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "未知错误。"
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "未知错误,消æ¯=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "无法打开文件“%1â€ã€‚"
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "将数æ®é€šè¿‡ç®¡é““%1â€è¾“é€å‡ºé”™(å·²ç»æ‰“开管é“以读å–)。"
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1:缺少必需的标签:“%2â€"
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(也许是)标准输入"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "文件“%1â€ä¸­çš„第 %2 è¡Œ(或者其定义结æŸäºŽè¯¥è¡Œ):\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "输入文件的æŸå¤„:\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "æ„外的文件结æŸç¬¦ã€‚"
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "æ„外的行结æŸç¬¦ã€‚"
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "需è¦æ ‡è¯†ç¬¦"
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "预期的:“%1â€"
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "æ„外的字符:“%1â€"
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"需è¦é€»è¾‘值(true 或者 false)。\n"
+"å‘现:“%1â€"
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "未知的兼容模å¼ï¼šâ€œ%1â€"
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with): $replace 与 $with 的长度必须相等。"
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "è¯»å– %1 中的翻译规则。"
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "正在读å–已安装软件包列表..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "执行 %1 未产生任何输出或者返回错误。\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "因出错而忽略文件...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "æ­£åœ¨è¯»å– %1 中的èœå•æ¡ç›®æ–‡ä»¶ã€‚"
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "读å–文件 %1 出错\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "å‘现 %1 个èœå•(å…± %2 个)。"
+
+#: ../update-menus/update-menus.cc:595
+#, fuzzy
+msgid "Running method: %1 --remove"
+msgstr "正在执行方法:%1"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "无法执行脚本 %1。"
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "脚本 %1 è¿”å›žé”™è¯¯çŠ¶æ€ %2。"
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "脚本 %1 接å—åˆ°ä¿¡å· %2。"
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "正在执行方法:%1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "无法创建管é“。"
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "正在 %1 中执行 menu-methods。"
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "其它 update-menus 进程已ç»é”定了 %1,正在退出。"
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "无法é”定 %1:%2 - 正在退出。"
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "无法é”定 %1 - 正在退出。"
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "无法删除é”文件 %1。"
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "用户在è¿è¡Œ update-menus。"
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"正在等待 dpkg 结æŸ(正在 fork 到åŽå°)。\n"
+"(正在检查 %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "更多的输出(如果有的è¯)将出现在 %1。"
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg 没有é”定 dkpg 状æ€åŒºï¼Œå¾ˆå¥½ã€‚"
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+#, fuzzy
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"用法:update-menus [选项] \n"
+"从èœå•æ•°æ®åº“收集软件包数æ®å¹¶ä¸ºæ‰€æœ‰æä¾›èœå•åŠŸèƒ½çš„程åºå»ºç«‹èœå•ï¼Œé€šå¸¸æ˜¯çª—å£ç®¡ç†"
+"器。\n"
+" -d 输出调试信æ¯ã€‚\n"
+" -v 详细显示正在执行的æ“作。\n"
+" -h, --help 本信æ¯ã€‚\n"
+" --menufilesdir=<dir> 将目录 <dir> 添加到è¦æœç´¢çš„èœå•ç›®å½•åˆ—表。\n"
+" --menumethod=<method> 仅执行èœå•æ–¹æ³• <method>。\n"
+" --nodefaultdirs ç¦æ­¢ä½¿ç”¨æ‰€æœ‰çš„标准èœå•ç›®å½•ã€‚\n"
+" --stdout 以适åˆäºŽç®¡é“输é€åˆ° install-menu çš„æ ¼å¼è¾“出èœå•åˆ—"
+"表。\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr "未知的安装æ¡ä»¶â€œ%1â€(ç›®å‰ï¼Œåªæ”¯æŒ “packageâ€)。"
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version 输出版本信æ¯å¹¶é€€å‡ºã€‚\n"
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644
index 0000000..871c997
--- /dev/null
+++ b/po/zh_TW.po
@@ -0,0 +1,370 @@
+# é¸å–®è‡ªå‹•åŒ–程å¼
+# Copyright (C) YEAR Debian menu team
+# This file is distributed under the same license as the PACKAGE package.
+# Kanru Chen <koster@debian.org.tw>, 2005.
+msgid ""
+msgstr ""
+"Project-Id-Version: menu\n"
+"Report-Msgid-Bugs-To: menu@packages.debian.org\n"
+"POT-Creation-Date: 2007-10-05 07:30+0200\n"
+"PO-Revision-Date: 2007-10-11 00:09+0800\n"
+"Last-Translator: Kanru Chen <koster@debian.org.tw>\n"
+"Language-Team: Chinese/Traditional <zh-l10n@linux.org.tw>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../install-menu/functions.cc:92
+msgid "Zero-size argument to print function."
+msgstr "列å°å‡½æ•¸åƒæ•¸ç‚ºé›¶ã€‚"
+
+#: ../install-menu/install-menu.cc:202
+msgid "install-menu: checking directory %1\n"
+msgstr "install-menu:檢查目錄 %1\n"
+
+#: ../install-menu/install-menu.cc:215
+msgid "install-menu: creating directory %1:\n"
+msgstr "install-menu:建立目錄 %1:\n"
+
+#: ../install-menu/install-menu.cc:217
+msgid "Could not create directory(%1): %2"
+msgstr "無法建立目錄(%1): %2"
+
+#: ../install-menu/install-menu.cc:219
+msgid "Could not change directory(%1): %2"
+msgstr "無法改變目錄(%1): %2"
+
+#: ../install-menu/install-menu.cc:222
+msgid "install-menu: directory %1 already exists\n"
+msgstr "install-menu:目錄 %1 已經存在\n"
+
+#. Do not translate supported
+#: ../install-menu/install-menu.cc:447
+msgid "install-menu: [supported]: name=%1\n"
+msgstr "install-menu:[supported]:å稱=%1\n"
+
+#: ../install-menu/install-menu.cc:464
+msgid "Menu entry lacks mandatory field \"%1\".\n"
+msgstr "æ­¤é¸å–®é …目缺ä¹å¿…è¦æ¬„ä½\n"
+
+#: ../install-menu/install-menu.cc:470
+msgid "Unknown value for field %1=\"%2\".\n"
+msgstr "æœªçŸ¥çš„å€¼æ–¼æ¬„ä½ %1=\"%2\"。\n"
+
+#. Do not translate quoted text
+#: ../install-menu/install-menu.cc:617
+msgid ""
+"install-menu: \"hotkeycase\" can only be \"sensitive\" or \"insensitive\"\n"
+msgstr "install-menu:\"hotkeycase\" åªèƒ½æ˜¯ \"sensitive\" 或 \"insensitive\"\n"
+
+#: ../install-menu/install-menu.cc:647
+msgid ""
+"install-menu: Warning: Unknown identifier `%1' on line %2 in file %3. "
+"Ignoring.\n"
+msgstr ""
+"install-menu:警告:在文件 %3 的第 %2 行有未知的標記 `%1'。將被程å¼å¿½ç•¥ã€‚\n"
+
+#: ../install-menu/install-menu.cc:657
+msgid "install-menu: %1 must be defined in menu-method %2"
+msgstr "install-menu:%1 必須在 menu-method %2 中定義"
+
+#: ../install-menu/install-menu.cc:824
+msgid "Cannot open file %1 (also tried %2).\n"
+msgstr "無法開啟檔案 %1 (åŒæ™‚ä¹Ÿè©¦éŽ %2)。\n"
+
+#: ../install-menu/install-menu.cc:832 ../install-menu/install-menu.cc:839
+#: ../install-menu/install-menu.cc:847
+msgid "Cannot open file %1.\n"
+msgstr "無法開啟檔案 %1。\n"
+
+#: ../install-menu/install-menu.cc:849
+msgid ""
+"In order to be able to create the user config file(s) for the window "
+"manager,\n"
+"the above file needs to be writeable (and/or the directory needs to exist).\n"
+msgstr ""
+"為了能替 Window Manager 產生設定檔,\n"
+"上述檔案必須å¯ä»¥å¯«å…¥(以åŠ/或是目錄必須存在)。\n"
+
+#: ../install-menu/install-menu.cc:871
+msgid "Warning: the string %1 did not occur in template file %2\n"
+msgstr "警告:字串 %1 ä¸å­˜åœ¨æ–¼æ¨£æ¿æª”案 %2 中\n"
+
+#. Don't translate quoted string
+#: ../install-menu/install-menu.cc:896
+msgid ""
+"install-menu [-vh] <menu-method>\n"
+" Read menu entries from stdin in \"update-menus --stdout\" format\n"
+" and generate menu files using the specified menu-method.\n"
+" Options to install-menu:\n"
+" -h --help : this message\n"
+" --remove : remove the menu instead of generating it.\n"
+" -v --verbose : be verbose\n"
+msgstr ""
+"install-menu [-vh] <menu-method>\n"
+" 以 \"update-menus --stdout\" æ ¼å¼å¾žæ¨™æº–輸入中讀å–é¸å–®é …ç›®\n"
+" 並且用指定的 menu-method 產生é¸å–®æª”案。\n"
+" install-menu çš„é¸é …:\n"
+" -h --help :本訊æ¯\n"
+" --remove : 移除é¸å–®è€Œä¸æ˜¯ç”¢ç”Ÿé¸å–®ã€‚\n"
+" -v --verbose :詳細輸出\n"
+
+#: ../install-menu/install-menu.cc:943
+msgid "install-menu: no menu-method script specified!"
+msgstr "install-menu:沒有指定 menu-method 文稿"
+
+#: ../install-menu/install-menu.cc:956
+msgid "Cannot open script %1 for reading.\n"
+msgstr "無法開啟文稿 %1 以讀å–。\n"
+
+#: ../install-menu/install-menu.cc:979
+msgid "Warning: script %1 does not provide removemenu, menu not deleted\n"
+msgstr "警告:文稿 %1 沒有æä¾› removemenu,é¸å–®æ²’有被刪除\n"
+
+#: ../install-menu/install-menu.cc:1014
+msgid "Running: \"%1\"\n"
+msgstr "正在é‹è¡Œï¼š\"%1\"\n"
+
+#: ../install-menu/install-menu.cc:1030
+msgid "install-menu: %1: aborting\n"
+msgstr "install-menu:%1:放棄\n"
+
+#: ../install-menu/install-menu.h:199
+msgid "Number of arguments to function %1 does not match."
+msgstr "å‡½å¼ %1 çš„åƒæ•¸å€‹æ•¸ä¸ç¬¦åˆã€‚"
+
+#: ../install-menu/install-menu.h:207
+msgid "Unknown function: \"%1\""
+msgstr "未知的函å¼ï¼š\"%1\""
+
+#: ../install-menu/install-menu.h:216
+msgid "Indirectly used, but not defined function: \"%1\""
+msgstr "間接使用,但未定義函å¼ï¼š\"%1\""
+
+#: ../install-menu/install-menu.h:225
+msgid "Unknown identifier: \"%1\""
+msgstr "未知的標示:\"%1\""
+
+#: ../install-menu/install-menu.h:234
+msgid "Encoding conversion error: \"%1\""
+msgstr "編碼轉æ›éŒ¯èª¤ï¼š\"%1\""
+
+#: ../update-menus/exceptions.h:43
+msgid "Unknown error."
+msgstr "未知的錯誤。"
+
+#: ../update-menus/exceptions.h:55 ../update-menus/parsestream.h:114
+msgid "Unknown error, message=%1"
+msgstr "未知的錯誤,訊æ¯=%1"
+
+#: ../update-menus/exceptions.h:64
+msgid "Unable to open file \"%1\"."
+msgstr "無法開啟檔案 \"%1\"。"
+
+#: ../update-menus/exceptions.h:73
+msgid "Failed to pipe data through \"%1\" (pipe opened for reading)."
+msgstr "將資料é€éŽç®¡é“é€åˆ° \"%1\" 時出錯(管é“已經開啟以讀å–)。"
+
+#: ../update-menus/exceptions.h:89
+msgid "%1: missing required tag: \"%2\""
+msgstr "%1 缺少必è¦çš„標籤:\"%2\""
+
+#: ../update-menus/parsestream.cc:50
+msgid "(probably) stdin"
+msgstr "(也許是)標準輸入"
+
+#: ../update-menus/parsestream.cc:450
+msgid "In file \"%1\", at (or in the definition that ends at) line %2:\n"
+msgstr "檔案 \"%1\" 中,第 %2 行(或是該行最末):\n"
+
+#: ../update-menus/parsestream.cc:471
+msgid "Somewhere in input file:\n"
+msgstr "輸入檔案的æŸè™•ï¼š\n"
+
+#: ../update-menus/parsestream.h:122
+msgid "Unexpected end of file."
+msgstr "檔案未é æœŸçš„çµæŸã€‚"
+
+#: ../update-menus/parsestream.h:129
+msgid "Unexpected end of line."
+msgstr "行未é æœŸçš„çµæŸã€‚"
+
+#: ../update-menus/parsestream.h:136
+msgid "Identifier expected."
+msgstr "需è¦æ¨™ç¤ºã€‚"
+
+#: ../update-menus/parsestream.h:144
+msgid "Expected: \"%1\""
+msgstr "é æœŸçš„:\"%1\""
+
+#: ../update-menus/parsestream.h:153
+msgid "Unexpected character: \"%1\""
+msgstr "未é æœŸçš„字元:\"%1\""
+
+#: ../update-menus/parsestream.h:162
+msgid ""
+"Boolean (either true or false) expected.\n"
+"Found: \"%1\""
+msgstr ""
+"必須為 Boolean 值(true 或 false)。\n"
+"找到: \"%1\""
+
+#: ../update-menus/parsestream.h:172
+msgid "Unknown compat mode: \"%1\""
+msgstr "未知的相容模å¼ï¼š\"%1\""
+
+#: ../update-menus/stringtoolbox.cc:85
+msgid ""
+"replacewith($string, $replace, $with): $replace and $with must have the same "
+"length."
+msgstr ""
+"replacewith($string, $replace, $with):$replace å’Œ $with 長度必須相åŒã€‚"
+
+#: ../update-menus/update-menus.cc:150
+msgid ""
+"file %1 line %2:\n"
+"Discarding entry requiring missing package %3."
+msgstr ""
+"檔案 %1 的第 %2 行:\n"
+"放棄,需è¦ç¼ºå°‘的套件 %3。"
+
+#. Translation here and below refer to the file
+#. /etc/menu-methods/translate_menus that allow to rename and reorganize
+#. menu entries automatically. It does not refer to the localisation
+#. (translation to other languages).
+#.
+#: ../update-menus/update-menus.cc:364
+msgid "Reading translation rules in %1."
+msgstr "è®€å– %1 中的轉æ›è¦å‰‡ã€‚"
+
+#: ../update-menus/update-menus.cc:444
+msgid "Reading installed packages list..."
+msgstr "讀å–已安è£å¥—件清單..."
+
+#: ../update-menus/update-menus.cc:493
+msgid "Execution of %1 generated no output or returned an error.\n"
+msgstr "執行 %1 沒有產生任何輸出或是回傳錯誤。\n"
+
+#: ../update-menus/update-menus.cc:534 ../update-menus/update-menus.cc:538
+msgid "Skipping file because of errors...\n"
+msgstr "因為錯誤所以略éŽæª”案...\n"
+
+#: ../update-menus/update-menus.cc:555
+msgid "Reading menu-entry files in %1."
+msgstr "è®€å– %1 中的é¸å–®é …目檔案。"
+
+#: ../update-menus/update-menus.cc:578
+msgid "Error reading %1.\n"
+msgstr "è®€å– %1 錯誤。\n"
+
+#: ../update-menus/update-menus.cc:584
+msgid "%1 menu entries found (%2 total)."
+msgstr "找到 %1 個é¸å–®é …ç›®(總共 %2 個)。"
+
+#: ../update-menus/update-menus.cc:595
+msgid "Running method: %1 --remove"
+msgstr "執行方法:%1 --remove"
+
+#: ../update-menus/update-menus.cc:607 ../update-menus/update-menus.cc:669
+#: ../update-menus/update-menus.cc:990
+msgid "Script %1 could not be executed."
+msgstr "無法執行文稿 %1。"
+
+#: ../update-menus/update-menus.cc:610 ../update-menus/update-menus.cc:672
+msgid "Script %1 returned error status %2."
+msgstr "文稿 %1 傳回錯誤狀態 %2 。"
+
+#: ../update-menus/update-menus.cc:613 ../update-menus/update-menus.cc:675
+msgid "Script %1 received signal %2."
+msgstr "文稿 %1 收到 %2 信號。"
+
+#: ../update-menus/update-menus.cc:630
+msgid "Running method: %1"
+msgstr "執行方法:%1"
+
+#: ../update-menus/update-menus.cc:633
+msgid "Cannot create pipe."
+msgstr "無法建立管é“。"
+
+#: ../update-menus/update-menus.cc:685
+msgid "Running menu-methods in %1."
+msgstr "執行 %1 中的é¸å–®æ–¹æ³•ã€‚"
+
+#: ../update-menus/update-menus.cc:717
+msgid "Other update-menus processes are already locking %1, quitting."
+msgstr "其他 update-menus 程åºå·²ç¶“鎖定 %1,正在退出。"
+
+#: ../update-menus/update-menus.cc:720
+msgid "Cannot lock %1: %2 - Aborting."
+msgstr "無法鎖定 %1:%2 - 放棄。"
+
+#: ../update-menus/update-menus.cc:730
+msgid "Cannot write to lockfile %1 - Aborting."
+msgstr "無法寫入鎖定檔 %1 - 放棄。"
+
+#: ../update-menus/update-menus.cc:743
+msgid "Cannot remove lockfile %1."
+msgstr "無法刪除鎖定檔 %1 。"
+
+#: ../update-menus/update-menus.cc:759
+msgid "Update-menus is run by user."
+msgstr "Update-menus 以用戶權é™åŸ·è¡Œã€‚"
+
+#: ../update-menus/update-menus.cc:813
+msgid ""
+"Waiting for dpkg to finish (forking to background).\n"
+"(checking %1)"
+msgstr ""
+"等待 dpkg çµæŸ (æ­£ fork 到背景)。\n"
+"(檢查 %1)"
+
+#: ../update-menus/update-menus.cc:816
+msgid "Further output (if any) will appear in %1."
+msgstr "更多的輸出(如果有的話)會出ç¾åœ¨ %1。"
+
+#: ../update-menus/update-menus.cc:845
+msgid "Dpkg is not locking dpkg status area, good."
+msgstr "Dpkg 沒有鎖定 dpkg 狀態å€ï¼Œå¾ˆå¥½ã€‚"
+
+#. This is the update-menus --help message
+#: ../update-menus/update-menus.cc:855
+msgid ""
+"Usage: update-menus [options] \n"
+"Gather packages data from the menu database and generate menus for\n"
+"all programs providing menu-methods, usually window-managers.\n"
+" -d Output debugging messages.\n"
+" -v Be verbose about what is going on.\n"
+" -h, --help This message.\n"
+" --menufilesdir=<dir> Add <dir> to the lists of menu directories to "
+"search.\n"
+" --menumethod=<method> Run only the menu method <method>.\n"
+" --nodefaultdirs Disable the use of all the standard menu "
+"directories.\n"
+" --nodpkgcheck Do not check if packages are installed.\n"
+" --remove Remove generated menus instead.\n"
+" --stdout Output menu list in format suitable for piping to\n"
+" install-menu.\n"
+" --version Output version information and exit.\n"
+msgstr ""
+"用法:update-menus [options] \n"
+"從é¸å–®è³‡æ–™åº«ä¸­æ”¶é›†å¥—件之料並產生é¸å–®çµ¦å…¶ä»–所有\n"
+"有é¸å–®åŠŸèƒ½çš„程å¼ï¼Œé€šå¸¸æ˜¯ Window Manager。\n"
+" -d 輸出除錯訊æ¯ã€‚\n"
+" -v 詳細顯示正在執行的æ“作。\n"
+" -h, --help 本訊æ¯ã€‚\n"
+" --menufilesdir=<dir> 加入 <dir> 到è¦æœå°‹çš„é¸å–®ç›®éŒ„清單中。\n"
+" --menumethod=<method> 僅執行é¸å–®æ–¹æ³• <method>。\n"
+" --nodefaultdirs åœç”¨æ‰€æœ‰çš„標準é¸å–®ç›®éŒ„。\n"
+" --nodpkgcheck ä¸è¦æª¢æŸ¥å¥—件是å¦å·²å®‰è£ã€‚\n"
+" --remove 移除所有產生的é¸å–®ã€‚\n"
+" --stdout 以é©åˆé€éŽç®¡é“傳é€åˆ° install-menu çš„æ–¹å¼è¼¸å‡ºé¸å–®æ¸…"
+"單。\n"
+" --version 輸出版本訊æ¯ç„¶å¾Œé›¢é–‹ã€‚\n"
+
+#: ../update-menus/update-menus.h:151
+msgid ""
+"Unknown install condition \"%1\" (currently, only \"package\" is supported)."
+msgstr "未知的安è£æ¢ä»¶ \"%1\" (ç›®å‰åªæœ‰æ”¯æ´ \"package\")。"
+
+#~ msgid " --version Output version information and exit.\n"
+#~ msgstr " --version 輸出版本訊æ¯ç„¶å¾Œé›¢é–‹ã€‚\n"
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
new file mode 100644
index 0000000..25466be
--- /dev/null
+++ b/scripts/Makefile.am
@@ -0,0 +1,6 @@
+bin_SCRIPTS = su-to-root
+EXTRA_DIST = $(bin_SCRIPTS)
+
+install-exec-local:
+ test -d "$(DESTDIR)$(sbindir)" || mkdir "$(DESTDIR)$(sbindir)"
+ ln -f -s ../bin/su-to-root $(DESTDIR)$(sbindir)/su-to-root
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
new file mode 100644
index 0000000..5cda05e
--- /dev/null
+++ b/scripts/Makefile.in
@@ -0,0 +1,327 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+subdir = scripts
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+am__installdirs = "$(DESTDIR)$(bindir)"
+binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+SCRIPTS = $(bin_SCRIPTS)
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+bin_SCRIPTS = su-to-root
+EXTRA_DIST = $(bin_SCRIPTS)
+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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu scripts/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu scripts/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
+install-binSCRIPTS: $(bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f $$d$$p; then \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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 $(SCRIPTS)
+installdirs:
+ for dir in "$(DESTDIR)$(bindir)"; 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)
+
+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 mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-binSCRIPTS install-exec-local
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binSCRIPTS uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic distdir dvi dvi-am html html-am info info-am \
+ install install-am install-binSCRIPTS install-data \
+ install-data-am install-exec install-exec-am \
+ install-exec-local install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-binSCRIPTS uninstall-info-am
+
+
+install-exec-local:
+ test -d "$(DESTDIR)$(sbindir)" || mkdir "$(DESTDIR)$(sbindir)"
+ ln -f -s ../bin/su-to-root $(DESTDIR)$(sbindir)/su-to-root
+# 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/scripts/su-to-root b/scripts/su-to-root
new file mode 100755
index 0000000..375975e
--- /dev/null
+++ b/scripts/su-to-root
@@ -0,0 +1,119 @@
+#!/bin/bash
+
+if test -r /etc/su-to-rootrc; then
+. /etc/su-to-rootrc
+fi
+
+if test -r ~/.su-to-rootrc; then
+. ~/.su-to-rootrc
+fi
+
+PRIV=root
+COMMAND=
+NEEDS=text
+
+gettext=$(which gettext 2>/dev/null)
+
+transl() {
+ txt="$1";
+ shift;
+ if [ -n "$gettext" ]; then
+ txt="$(gettext su-to-root "$txt")";
+ fi
+ printf "$txt" "$@"
+}
+
+eshell() {
+ getent passwd $1 | cut -f7 -d:
+}
+
+usage () {
+ transl 'usage: %s [-X] [-p <user>] -c <command>
+ -c command: command to execute as a string (mandatory)
+ -p <user>: user to switch to (default: root)
+ -X: command is a X11 program\n' "$0" >&2
+ exit 1
+}
+
+for i in "$@"; do
+ case "$prev" in
+ -p)
+ PRIV="$i";;
+ -c)
+ COMMAND="$i";;
+ -X)
+ NEEDS="X11";;
+ esac
+ prev="$i"
+done
+
+if [ -z "$COMMAND" ] ; then
+ usage;
+fi
+
+euid=$(id -u)
+privid=$(id -u $PRIV)
+if test "$euid" = "$privid"; then
+ sh -c "$COMMAND"
+else
+ case $NEEDS in
+ text)
+ if test "$euid" != 0; then
+ transl 'About to execute %s.\n' "$COMMAND"
+ transl 'This command needs %s privileges to be executed.\n' "$PRIV"
+ fi
+ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin
+ SHELL=`eshell $PRIV`
+ case $SU_TO_ROOT_SU in
+ sux) suname=sux; pwuser="$PRIV"; cmd='sux -p "$PRIV" -c "$COMMAND"';;
+ sudo) suname=sudo;pwuser="$USER"; cmd='sudo -u "$PRIV" sh -c "$COMMAND"';;
+ *) suname=su; pwuser="$PRIV"; cmd='su -p "$PRIV" -c "$COMMAND"';;
+ esac
+ transl 'Using %s...\n' "$suname"
+ transl 'Enter %s password at prompt.\n' "$pwuser"
+ yesexpr=$(locale yesexpr)
+ while ! eval $cmd; do
+ transl 'Incorrect password or command failed. Try again? (y/N)'
+ read ans
+ if echo "$ans" | perl -e "<> =~ /$yesexpr/ and exit(1);"; then
+ exit 1
+ fi
+ done;;
+ X11)
+ if test -z "$SU_TO_ROOT_X"; then
+ if which gksu >/dev/null 2>&1 ; then
+ SU_TO_ROOT_X=gksu
+ if test "X$KDE_FULL_SESSION" = "Xtrue" ; then
+ if which kdesu >/dev/null 2>&1 ; then
+ SU_TO_ROOT_X=kdesu
+ elif test -x /usr/lib/kde4/libexec/kdesu ; then
+ SU_TO_ROOT_X=kde4su
+ fi;
+ fi;
+ elif which kdesu >/dev/null 2>&1 ; then
+ SU_TO_ROOT_X=kdesu
+ elif test -x /usr/lib/kde4/libexec/kdesu ; then
+ SU_TO_ROOT_X=kde4su
+ elif which ktsuss >/dev/null 2>&1 ; then
+ SU_TO_ROOT_X=ktsuss
+ elif which sux >/dev/null 2>&1 ; then
+ SU_TO_ROOT_X=sux
+ else
+ SU_TO_ROOT_X=su-to-root
+ fi
+ fi
+ case $SU_TO_ROOT_X in
+ gksu) gksu -u "$PRIV" "$COMMAND";;
+ gksudo) gksudo -u "$PRIV" "$COMMAND";;
+ kdesu) kdesu -u "$PRIV" "$COMMAND";;
+ kdesudo) kdesudo -u "$PRIV" "$COMMAND";;
+ kde4su) /usr/lib/kde4/libexec/kdesu -u "$PRIV" "$COMMAND";;
+ ktsuss) ktsuss -u "$PRIV" "$COMMAND";;
+ sux) env SU_TO_ROOT_SU=sux \
+ x-terminal-emulator -e su-to-root -p "$PRIV" -c "$COMMAND";;
+ # As a last resort, open a new x-terminal-emulator and prompt for the password
+ # Do not use -X here!
+ *) x-terminal-emulator -e su-to-root -p "$PRIV" -c "$COMMAND";;
+ esac;;
+ esac
+fi
diff --git a/stamp-h b/stamp-h
new file mode 100644
index 0000000..9788f70
--- /dev/null
+++ b/stamp-h
@@ -0,0 +1 @@
+timestamp
diff --git a/stamp-h.in b/stamp-h.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/stamp-h.in
diff --git a/update-menus/Makefile.am b/update-menus/Makefile.am
new file mode 100644
index 0000000..97d2796
--- /dev/null
+++ b/update-menus/Makefile.am
@@ -0,0 +1,8 @@
+bin_PROGRAMS = update-menus
+
+update_menus_SOURCES = update-menus.cc update-menus.h \
+ stringtoolbox.cc stringtoolbox.h \
+ parsestream.cc parsestream.h \
+ exceptions.h \
+ common.h \
+ compose.hpp
diff --git a/update-menus/Makefile.in b/update-menus/Makefile.in
new file mode 100644
index 0000000..f3bfefa
--- /dev/null
+++ b/update-menus/Makefile.in
@@ -0,0 +1,425 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 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@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+bin_PROGRAMS = update-menus$(EXEEXT)
+subdir = update-menus
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+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 =
+am__installdirs = "$(DESTDIR)$(bindir)"
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS)
+am_update_menus_OBJECTS = update-menus.$(OBJEXT) \
+ stringtoolbox.$(OBJEXT) parsestream.$(OBJEXT)
+update_menus_OBJECTS = $(am_update_menus_OBJECTS)
+update_menus_LDADD = $(LDADD)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
+ -o $@
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(update_menus_SOURCES)
+DIST_SOURCES = $(update_menus_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GREP = @GREP@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MO_PROGRAMS = @MO_PROGRAMS@
+MO_SECTIONS = @MO_SECTIONS@
+MO_SUTOROOT = @MO_SUTOROOT@
+OBJEXT = @OBJEXT@
+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@
+PO_PROGRAMS = @PO_PROGRAMS@
+PO_SECTIONS = @PO_SECTIONS@
+PO_SUTOROOT = @PO_SUTOROOT@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+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_alias = @build_alias@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+update_menus_SOURCES = update-menus.cc update-menus.h \
+ stringtoolbox.cc stringtoolbox.h \
+ parsestream.cc parsestream.h \
+ exceptions.h \
+ common.h \
+ compose.hpp
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cc .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 \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu update-menus/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu update-menus/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
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ if test -f $$p \
+ ; then \
+ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+clean-binPROGRAMS:
+ -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+update-menus$(EXEEXT): $(update_menus_OBJECTS) $(update_menus_DEPENDENCIES)
+ @rm -f update-menus$(EXEEXT)
+ $(CXXLINK) $(update_menus_LDFLAGS) $(update_menus_OBJECTS) $(update_menus_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parsestream.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stringtoolbox.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/update-menus.Po@am__quote@
+
+.cc.o:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cc.obj:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+uninstall-info-am:
+
+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; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ 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; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ 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; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && 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)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$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:
+ for dir in "$(DESTDIR)$(bindir)"; 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)
+
+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-binPROGRAMS clean-generic 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
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-binPROGRAMS
+
+install-info: install-info-am
+
+install-man:
+
+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
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+ clean-generic ctags distclean distclean-compile \
+ distclean-generic distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-binPROGRAMS \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+ uninstall-am uninstall-binPROGRAMS uninstall-info-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/update-menus/common.h b/update-menus/common.h
new file mode 100644
index 0000000..9338eb1
--- /dev/null
+++ b/update-menus/common.h
@@ -0,0 +1,52 @@
+// -*- mode: c++; -*-
+//
+#ifndef COMMON_H
+#define COMMON_H
+
+#include <libintl.h>
+
+const int MAX_LINE = 10240;
+
+#define _(string) gettext(string)
+#define LOCALEDIR "/usr/share/locale"
+
+#define COMMAND_VAR "command"
+#define ICON_VAR "icon"
+#define NEEDS_VAR "needs"
+#define SECTION_VAR "section"
+#define BASESECTION_VAR "basesection"
+#define SORT_VAR "sort"
+#define TITLE_VAR "title"
+#define HOTKEY_VAR "hotkey"
+#define HINTS_VAR "hints"
+#define PACKAGE_VAR "package"
+#define PRIVATE_ENTRYCOUNT_VAR "__PRIVATE__ENTRYCOUNT"
+#define PRIVATE_ENTRYINDEX_VAR "__PRIVATE__ENTRYINDEX"
+#define PRIVATE_LEVEL_VAR "__PRIVATE__LEVEL"
+
+//conditionals in the menuentry files (like "package(vi)")
+#define COND_PACKAGE "package"
+
+#define CONFIGMENUS "/etc/menu"
+#define PACKAGEMENUSLIB "/usr/lib/menu"
+#define PACKAGEMENUS "/usr/share/menu"
+#define MENUMENUS "/usr/share/menu/default"
+#define USERMENUS ".menu"
+
+#define MENUMETHODS "/etc/menu-methods"
+#define USERMETHODS ".menu-methods"
+
+#define UPMEN_LOCKFILE "/var/run/update-menus.pid"
+#define DPKG_LOCKFILE "/var/lib/dpkg/lock"
+#define TRANSLATE_FILE "/etc/menu-methods/translate_menus"
+#define USERTRANSLATE ".menu-methods/translate_menus"
+#define CONFIG_FILE "/etc/menu-methods/menu.config"
+#define USERCONFIG ".menu-methods/menu.config"
+
+
+#define TRANSLATE_TRANS "translate"
+#define SUBSTITUTE_TRANS "substitute"
+#define SUBTRANSLATE_TRANS "subtranslate"
+#define ENDTRANSLATE_TRANS "endtranslate"
+
+#endif /* COMMON_H */
diff --git a/update-menus/compose.hpp b/update-menus/compose.hpp
new file mode 100644
index 0000000..4ea1621
--- /dev/null
+++ b/update-menus/compose.hpp
@@ -0,0 +1,393 @@
+/* Defines String::compose(fmt, arg...) for easy, i18n-friendly
+ * composition of strings.
+ *
+ * Version 1.0.
+ *
+ * Copyright (c) 2002 Ole Laursen <olau@hardworking.dk>.
+ *
+ * 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.1 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
+ * 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.
+ */
+
+//
+// Basic usage is like
+//
+// std::cout << String::compose("This is a %1x%2 matrix.", rows, cols);
+//
+// See http://www.cs.auc.dk/~olau/compose/ or the included README.compose for
+// more details.
+//
+
+#ifndef STRING_COMPOSE_H
+#define STRING_COMPOSE_H
+
+#include <sstream>
+#include <string>
+#include <list>
+#include <map> // for multimap
+
+namespace StringPrivate
+{
+ // the actual composition class - using string::compose is cleaner, so we
+ // hide it here
+ class Composition
+ {
+ public:
+ // initialize and prepare format string on the form "text %1 text %2 etc."
+ explicit Composition(std::string fmt);
+
+ // supply an replacement argument starting from %1
+ template <typename T>
+ Composition &arg(const T &obj);
+
+ // compose and return string
+ std::string str() const;
+
+ private:
+ std::ostringstream os;
+ int arg_no;
+
+ // we store the output as a list - when the output string is requested, the
+ // list is concatenated to a string; this way we can keep iterators into
+ // the list instead of into a string where they're possibly invalidated on
+ // inserting a specification string
+ typedef std::list<std::string> output_list;
+ output_list output;
+
+ // the initial parse of the format string fills in the specification map
+ // with positions for each of the various %?s
+ typedef std::multimap<int, output_list::iterator> specification_map;
+ specification_map specs;
+ };
+
+ // helper for converting spec string numbers
+ inline int char_to_int(char c)
+ {
+ switch (c) {
+ case '0': return 0;
+ case '1': return 1;
+ case '2': return 2;
+ case '3': return 3;
+ case '4': return 4;
+ case '5': return 5;
+ case '6': return 6;
+ case '7': return 7;
+ case '8': return 8;
+ case '9': return 9;
+ default: return -1000;
+ }
+ }
+
+ inline bool is_number(int n)
+ {
+ switch (n) {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9':
+ return true;
+
+ default:
+ return false;
+ }
+ }
+
+
+ // implementation of class Composition
+ template <typename T>
+ inline Composition &Composition::arg(const T &obj)
+ {
+ os << obj;
+
+ std::string rep = os.str();
+
+ if (!rep.empty()) { // manipulators don't produce output
+ for (specification_map::const_iterator i = specs.lower_bound(arg_no),
+ end = specs.upper_bound(arg_no); i != end; ++i) {
+ output_list::iterator pos = i->second;
+ ++pos;
+
+ output.insert(pos, rep);
+ }
+
+ os.str(std::string());
+ //os.clear();
+ ++arg_no;
+ }
+
+ return *this;
+ }
+
+ inline Composition::Composition(std::string fmt)
+ : arg_no(1)
+ {
+ std::string::size_type b = 0, i = 0;
+
+ // fill in output with the strings between the %1 %2 %3 etc. and
+ // fill in specs with the positions
+ while (i < fmt.length()) {
+ if (fmt[i] == '%' && i + 1 < fmt.length()) {
+ if (fmt[i + 1] == '%') { // catch %%
+ fmt.replace(i, 2, "%");
+ ++i;
+ }
+ else if (is_number(fmt[i + 1])) { // aha! a spec!
+ // save string
+ output.push_back(fmt.substr(b, i - b));
+
+ int n = 1; // number of digits
+ int spec_no = 0;
+
+ do {
+ spec_no += char_to_int(fmt[i + n]);
+ spec_no *= 10;
+ ++n;
+ } while (i + n < fmt.length() && is_number(fmt[i + n]));
+
+ spec_no /= 10;
+ output_list::iterator pos = output.end();
+ --pos; // safe since we have just inserted a string>
+
+ specs.insert(specification_map::value_type(spec_no, pos));
+
+ // jump over spec string
+ i += n;
+ b = i;
+ }
+ else
+ ++i;
+ }
+ else
+ ++i;
+ }
+
+ if (i - b > 0) // add the rest of the string
+ output.push_back(fmt.substr(b, i - b));
+ }
+
+ inline std::string Composition::str() const
+ {
+ // assemble string
+ std::string str;
+
+ for (output_list::const_iterator i = output.begin(), end = output.end();
+ i != end; ++i)
+ str += *i;
+
+ return str;
+ }
+}
+
+// now for the real thing(s)
+namespace String
+{
+ // a series of functions which accept a format string on the form "text %1
+ // more %2 less %3" and a number of templated parameters and spits out the
+ // composited string
+ template <typename T1>
+ inline std::string compose(const std::string &fmt, const T1 &o1)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1);
+ return c.str();
+ }
+
+ template <typename T1, typename T2>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10,
+ typename T11>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10, const T11 &o11)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10).arg(o11);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10,
+ typename T11, typename T12>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10, const T11 &o11, const T12 &o12)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10).arg(o11).arg(o12);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10,
+ typename T11, typename T12, typename T13>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10, const T11 &o11, const T12 &o12,
+ const T13 &o13)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10).arg(o11).arg(o12).arg(o13);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10,
+ typename T11, typename T12, typename T13, typename T14>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10, const T11 &o11, const T12 &o12,
+ const T13 &o13, const T14 &o14)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14);
+ return c.str();
+ }
+
+ template <typename T1, typename T2, typename T3, typename T4, typename T5,
+ typename T6, typename T7, typename T8, typename T9, typename T10,
+ typename T11, typename T12, typename T13, typename T14,
+ typename T15>
+ inline std::string compose(const std::string &fmt,
+ const T1 &o1, const T2 &o2, const T3 &o3,
+ const T4 &o4, const T5 &o5, const T6 &o6,
+ const T7 &o7, const T8 &o8, const T9 &o9,
+ const T10 &o10, const T11 &o11, const T12 &o12,
+ const T13 &o13, const T14 &o14, const T15 &o15)
+ {
+ StringPrivate::Composition c(fmt);
+ c.arg(o1).arg(o2).arg(o3).arg(o4).arg(o5).arg(o6).arg(o7).arg(o8).arg(o9)
+ .arg(o10).arg(o11).arg(o12).arg(o13).arg(o14).arg(o15);
+ return c.str();
+ }
+}
+
+
+#endif // STRING_COMPOSE_H
diff --git a/update-menus/exceptions.h b/update-menus/exceptions.h
new file mode 100644
index 0000000..f4c818d
--- /dev/null
+++ b/update-menus/exceptions.h
@@ -0,0 +1,102 @@
+/*
+ * Debian menu system -- update-menus and install-menu
+ * update-menus/exceptions.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef EXCEPTIONS_H
+#define EXCEPTIONS_H
+
+#include <string>
+#include <iostream>
+#include "common.h"
+#include "compose.hpp"
+
+namespace exceptions {
+ /** Base class for general exceptions */
+ class genexcept {
+ public:
+ virtual void report() {
+ std::cerr << message() << std::endl;
+ }
+ virtual std::string message() const {
+ return _("Unknown error.");
+ }
+ virtual ~genexcept() { }
+ };
+
+ /** Base exception class for classes returning string error messages */
+ class except_string : public genexcept {
+ protected:
+ std::string msg;
+ public:
+ except_string(std::string s) : msg(s) { }
+ std::string message() const {
+ return String::compose(_("Unknown error, message=%1"), msg);
+ }
+ };
+
+ /** Exception class to be thrown when a file fails to open */
+ class ferror_open : public except_string {
+ public:
+ ferror_open(std::string s):except_string(s) { }
+ std::string message() const {
+ return String::compose(_("Unable to open file \"%1\"."), msg);
+ }
+ };
+
+ /** Exception class to be thrown when opening a pipe for reading */
+ class pipeerror_read : public except_string {
+ public:
+ pipeerror_read(std::string s) : except_string(s) { }
+ std::string message() {
+ return String::compose(_("Failed to pipe data through \"%1\" (pipe opened for reading)."), msg);
+ }
+ };
+
+ /** Exception class to be thrown when a fatal error occured */
+ class informed_fatal : public genexcept {
+ public:
+ std::string message() const { return ""; }
+ };
+
+ /** Exception to be thrown when a required tag is missing */
+ class missing_tag : public except_string {
+ std::string file;
+ public:
+ missing_tag(std::string f, std::string s) : except_string(s), file(f) { }
+ std::string message() {
+ return String::compose(_("%1: missing required tag: \"%2\""), file, msg);
+ }
+ };
+
+ /** Exception to be thrown when package isn't installed. */
+ class cond_inst_false : public genexcept { };
+
+ /** Exception to be thrown when opening a directory failed */
+ class dir_error_read : public genexcept { };
+
+}
+
+
+#endif /* EXCEPTIONS_H */
diff --git a/update-menus/parsestream.cc b/update-menus/parsestream.cc
new file mode 100644
index 0000000..8fd5c21
--- /dev/null
+++ b/update-menus/parsestream.cc
@@ -0,0 +1,467 @@
+/*
+ * Debian menu system -- update-menus and install-menu
+ * update-menus/parsestream.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include <cstdlib>
+#include <fstream>
+#include <cstring>
+#include "parsestream.h"
+#include "stringtoolbox.h"
+
+using std::string;
+using namespace exceptions;
+
+Regex::Regex(const char *s)
+{
+ patt = new re_pattern_buffer;
+ patt->translate = 0;
+ patt->fastmap = 0;
+ patt->buffer = 0;
+ patt->allocated = 0;
+ re_set_syntax(RE_CHAR_CLASSES);
+ re_compile_pattern(s, std::strlen(s), patt);
+}
+
+parsestream::parsestream(std::istream &in, std::string other)
+ : in_constructor(true), stdin_file(true), otherdir(other), doescaping(true)
+{
+ init(&in,_("(probably) stdin"));
+ in_constructor = false;
+}
+
+parsestream::parsestream(const std::string &name, std::string other)
+ : in_constructor(true), stdin_file(false), otherdir(other), doescaping(true)
+{
+ std::istream *f = new std::ifstream(name.c_str());
+
+ if(!f && (name[0] != '/')) {
+ string add = other + "/" + name;
+ f = new std::ifstream(add.c_str());
+ }
+ if (!*f)
+ throw ferror_open(name);
+
+ init(f, name);
+ in_constructor = false;
+}
+
+void parsestream::preprocess(std::string &s)
+{
+ // Disregards lines that start with a #
+ // Set filename if line starts with "!F"
+
+ string compat;
+ string::size_type i = 0;
+ while ((i < s.length()) && isspace(s[i]))
+ i++;
+ if (i)
+ s = s.substr(i);
+
+ if (s.empty())
+ return;
+
+ switch (s[0])
+ {
+ case '#':
+ s.erase();
+ return;
+ case '!':
+ if (!s.empty()) {
+ switch (s[1])
+ {
+ case 'F':
+ set_linenumber(0);
+ set_filename(s.substr(3));
+ //cerr<<"filename="<<filename()<<", s.substr="<<s.substr(2)<<endl;
+ s.erase();
+ return;
+ case 'L':
+ set_linenumber(stringtoi(s.substr(2))-1);
+ //cerr<<"filename="<<filename()<<", s.substr="<<s.substr(2)<<endl;
+ s.erase();
+ return;
+ case 'C':
+ compat = s.substr(3);
+ if (compat == "menu-1")
+ seteolmode(eol_newline);
+ else if (compat == "menu-2")
+ seteolmode(eol_semicolon);
+ else
+ throw unknown_compat(this, compat);
+ s.erase();
+ return;
+ default:
+ if (contains(s, "!include")) {
+ string t(s.substr(strlen("!include ")));
+ if (t[0] == '/' || filenames.empty()) {
+ new_file(t);
+ } else {
+ string name = string_parent(filename()) + '/' + t;
+ if (std::ifstream(name.c_str()))
+ new_file(name);
+ else
+ new_file(otherdir + '/' + t);
+ }
+ }
+ return;
+ }
+ }
+ return;
+ default:;
+ }
+}
+
+void parsestream::new_file(const std::string &name)
+{
+ std::ifstream *f = new std::ifstream(name.c_str());
+
+ init(f,name);
+}
+
+void parsestream::init(std::istream *in, std::string name)
+{
+ if (!in_constructor)
+ if (!in->good())
+ throw ferror_open(name);
+ pos = 0;
+ eolmode = eol_newline;
+ istreams.push_back(in);
+ linenumbers.push_back(0);
+ filenames.push_back(name);
+ try {
+ new_line();
+ } catch (endoffile) { }
+}
+
+void parsestream::close_file()
+{
+ if (!stdin_file && !istreams.empty())
+ delete istreams.back();
+
+ if (istreams.size() > 1) {
+ istreams.pop_back();
+ linenumbers.pop_back();
+ filenames.pop_back();
+ } else {
+ throw endoffile(this);
+ }
+}
+
+void parsestream::new_line()
+{
+ while (!istreams.empty())
+ {
+ if (!current_istr()->good()) {
+ close_file();
+ continue;
+ }
+ buffer.erase();
+ pos = 0;
+ while (current_istr()->good() && buffer.empty())
+ {
+ getline(*current_istr(), buffer);
+ set_linenumber(linenumber()+1);
+ try {
+ preprocess(buffer);
+ } catch (unknown_compat p) { p.report(); }
+ buffer = rmtrailingspace(buffer);
+ }
+ while (current_istr()->good() &&
+ (((eolmode==eol_newline) && (buffer[buffer.length()-1]=='\\')) ||
+ ((eolmode==eol_semicolon) && (buffer[buffer.length()-1]!=';'))))
+ {
+ string s;
+ getline(*current_istr(), s);
+ set_linenumber(linenumber()+1);
+ switch(eolmode)
+ {
+ case eol_newline:
+ buffer = buffer.substr(0,buffer.length()-1) + ' ' + rmtrailingspace(s);
+ break;
+ case eol_semicolon:
+ buffer = buffer + ' ' + rmtrailingspace(s);
+ break;
+ }
+ }
+ if (buffer.empty()) {
+ close_file();
+ continue;
+ }
+ if (current_istr()->eof() && !buffer.empty() &&
+ (((eolmode==eol_newline)&&(buffer[buffer.length()-1]=='\\'))||
+ ((eolmode==eol_semicolon)&&(buffer[buffer.length()-1]!=';')))){
+ //a "\" at the end of a file: unconditional error (don't unwind etc)
+ //(or no ; at eof, when eolmode=; . Same unconditional error.
+ throw endoffile(this);
+ }
+ if (eolmode == eol_semicolon)
+ if (buffer[buffer.length()-1] == ';')
+ buffer.erase(buffer.length()-1, 1);
+ return;
+ }
+ if (in_constructor)
+ return;
+ else
+ throw endoffile(this);
+}
+
+char parsestream::get_char()
+{
+ if (buffer.empty())
+ throw endoffile(this);
+ if (pos >= buffer.length())
+ throw endofline(this);
+
+ return buffer[pos++];
+}
+
+char parsestream::put_back(char c)
+{
+ if (c) {
+ if (pos) {
+ pos--;
+ buffer[pos] = c;
+ } else {
+ buffer = c + buffer;
+ }
+ }
+ return c;
+}
+
+string parsestream::get_line()
+{
+ string s = buffer.substr(pos);
+ if (s.empty())
+ throw endofline(this);
+ buffer.erase();
+ try {
+ skip_line();
+ } catch (endoffile) { }
+ return s;
+}
+
+string parsestream::get_name()
+{
+ char c;
+ string s;
+ skip_space();
+ try {
+ while((c=get_char()) &&
+ (isalnum(c)||(c=='_')||(c=='-')||(c=='+')||(c=='.')))
+ s+=c;
+ if(c)
+ put_back(c);
+ } catch (endofline d) { }
+ return s;
+}
+
+string parsestream::get_name(const Regex &r)
+{
+ char str[2]={0,0};
+ char &c=str[0];
+ string s;
+ skip_space();
+ try {
+ while ((c = get_char()))
+ {
+ if (re_match(r.pattern(), str, 1, 0, 0) > 0)
+ s += c;
+ else
+ break;
+ }
+ if (c)
+ put_back(c);
+ } catch (endofline) { }
+ return s;
+}
+
+string parsestream::get_stringconst()
+{
+ string s;
+ skip_space();
+ char c = get_char();
+ try {
+ if (c == '\"') { // " found at the beginning
+ while ((c = get_char()) && (c != '\"'))
+ {
+ if (c == '\\') {
+ c = get_char();
+ switch (c)
+ {
+ case 't': c = '\t'; break;
+ case 'b': c = '\b'; break;
+ case 'n': c = '\n'; break;
+ default:
+ if (!doescaping)
+ s += '\\';
+ break;
+ }
+ }
+ s += c;
+ }
+ if (c != '\"')
+ throw char_expected(this, "\"");
+ } else { // no " at beginning
+ s = c;
+ while ((c = get_char()) && !isspace(c))
+ s += c;
+ }
+ } catch (endofline p) { }
+
+ return s;
+}
+
+string parsestream::get_eq_stringconst()
+{
+ skip_space();
+ char c = get_char();
+ if (c != '=')
+ throw char_expected(this, "=");
+ return get_stringconst();
+}
+
+bool parsestream::get_boolean()
+{
+ string s = get_name();
+
+ if (s == "true")
+ return true;
+ else if (s == "false")
+ return false;
+ else
+ throw boolean_expected(this, s);
+}
+
+bool parsestream::get_eq_boolean()
+{
+ skip_space();
+ char c = get_char();
+ if (c != '=')
+ throw char_expected(this,"=");
+ return get_boolean();
+}
+
+int parsestream::get_integer()
+{
+ char c;
+ string s;
+
+ try {
+ skip_space();
+ while((c=get_char())&&((isdigit(c)||(c=='-'))))
+ s += c;
+ } catch (endofline d) { }
+
+ return atoi(s.c_str());
+}
+
+int parsestream::get_eq_integer()
+{
+ skip_space();
+ char c = get_char();
+ if (c != '=')
+ throw char_expected(this, "=");
+ return get_integer();
+}
+
+double parsestream::get_double()
+{
+ char c;
+ string s;
+
+ skip_space();
+ try {
+ while ((c=get_char()) &&
+ (isdigit(c) || (c=='.')||(c=='E')||(c=='e')||(c=='+')||(c=='-')))
+ s += c;
+ } catch (endofline d) { }
+
+ return atof(s.c_str());
+}
+
+double parsestream::get_eq_double()
+{
+ skip_space();
+ char c = get_char();
+ if(c!='=')
+ throw char_expected(this, "=");
+
+ return get_double();
+}
+
+void parsestream::skip_line()
+{
+ buffer.erase();
+ try {
+ new_line();
+ } catch (endoffile d) { }
+}
+
+void parsestream::skip_space()
+{
+ char c;
+ while (isspace(c=get_char()));
+ if(c)
+ put_back(c);
+}
+
+void parsestream::skip_char(char expect)
+{
+ char c = get_char();
+ if(c != expect) {
+ put_back(c);
+ char buf[2] = {c, '\0'};
+ throw char_expected(this, buf);
+ }
+}
+
+void except_pi::report()
+{
+ if (pi) {
+ std::cerr << String::compose(_("In file \"%1\", at (or in the definition that ends at) line %2:\n"),
+ pi->filename(),
+ pi->linenumber());
+
+ string::size_type startpos = 0;
+ if (pi->pos > 50)
+ startpos = pi->pos - 50;
+
+ if (startpos)
+ std::cerr << "[...]";
+
+ std::cerr << pi->buffer.substr(startpos) << std::endl;
+
+ if (startpos)
+ std::cerr << "[...]";
+
+ for (string::size_type i = 1+startpos; i< pi->pos; ++i)
+ std::cerr << ' ';
+
+ std::cerr << '^' << std::endl;
+ } else {
+ std::cerr << _("Somewhere in input file:\n");
+ }
+ std::cerr << message() << std::endl;
+}
diff --git a/update-menus/parsestream.h b/update-menus/parsestream.h
new file mode 100644
index 0000000..9b2e282
--- /dev/null
+++ b/update-menus/parsestream.h
@@ -0,0 +1,176 @@
+/*
+ * Debian menu system -- update-menus and install-menu
+ * update-menus/parsestream.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef PARSESTREAM_H
+#define PARSESTREAM_H
+
+#include <vector>
+#include <string>
+#include <regex.h>
+#include "exceptions.h"
+
+class Regex {
+ struct re_pattern_buffer* patt;
+public:
+ Regex(const char *s);
+ ~Regex() { delete patt; }
+
+ struct re_pattern_buffer* pattern() const { return patt; }
+};
+
+class parsestream {
+public:
+ enum eol_type { eol_newline, eol_semicolon };
+private:
+ std::vector<int> linenumbers;
+ std::vector<std::string> filenames;
+ std::vector<std::istream *> istreams;
+
+ void set_linenumber(int l) { linenumbers.back() = l; }
+ void set_filename(const std::string &s) { filenames.back() = s; }
+ std::istream *current_istr() const { return istreams.back(); }
+
+ bool in_constructor;
+ void new_line();
+ void preprocess(std::string &s);
+ void new_file(const std::string &name);
+ void init(std::istream *in, std::string name);
+ void close_file();
+ bool stdin_file;
+ eol_type eolmode;
+ std::string otherdir;
+
+public:
+ parsestream(std::istream &in, std::string other = "");
+ parsestream(const std::string &name, std::string other = "");
+
+ bool doescaping;
+ std::string::size_type pos;
+ std::string buffer;
+ std::string filename() const { return filenames.back(); }
+ int linenumber() const { return linenumbers.back(); }
+
+ bool good() const { return istreams.size(); }
+ char get_char();
+ char put_back(char);
+ std::string get_name();
+ std::string get_name(const Regex &);
+ std::string get_stringconst();
+ std::string get_eq_stringconst();
+ bool get_boolean();
+ bool get_eq_boolean();
+ int get_integer();
+ int get_eq_integer();
+ double get_double();
+ double get_eq_double();
+ std::string get_line();
+ void skip_line();
+ void skip_space();
+ void skip_char(char expect);
+ void seteolmode(eol_type mode) { eolmode = mode; }
+};
+
+
+namespace exceptions {
+ /** Exception classes for parsestream class. */
+ class except_pi : public genexcept {
+ public:
+ parsestream *pi;
+ except_pi(parsestream *p) : pi(p) { }
+ void report();
+ };
+
+ /** Exception for parsestream class using string error messages */
+ class except_pi_string : public except_pi {
+ protected:
+ std::string msg;
+ public:
+ except_pi_string(parsestream *p, std::string s) : except_pi(p), msg(s) { }
+ std::string message() const {
+ return String::compose(_("Unknown error, message=%1"), msg);
+ }
+ };
+
+ /** Exception to be thrown when unexpected end of file occurs */
+ class endoffile : public except_pi {
+ public:
+ endoffile(parsestream *p) : except_pi(p) { }
+ std::string message() const { return _("Unexpected end of file."); }
+ };
+
+ /** Exception to be thrown when unexpected end of line occurs */
+ class endofline : public except_pi {
+ public:
+ endofline(parsestream *p) : except_pi(p) { }
+ std::string message() const { return _("Unexpected end of line."); }
+ };
+
+ /** Exception to be thrown when an identifer was expected but wasn't found */
+ class ident_expected : public except_pi {
+ public:
+ ident_expected(parsestream *p) : except_pi(p) { }
+ const char *errormsg() const { return _("Identifier expected."); }
+ };
+
+ /** Exception to be thrown when a character was expected but wasn't found */
+ class char_expected : public except_pi_string {
+ public:
+ char_expected(parsestream *p, std::string s):except_pi_string(p,s) { }
+ std::string message() const {
+ return String::compose(_("Expected: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when a character was found but not expected */
+ class char_unexpected : public except_pi_string {
+ public:
+ char_unexpected(parsestream *p, std::string s):except_pi_string(p,s) { }
+ std::string message() const {
+ return String::compose(_("Unexpected character: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when an boolean was expected but not found */
+ class boolean_expected : public except_pi_string {
+ public:
+ boolean_expected(parsestream *p, std::string s):except_pi_string(p,s) { }
+ std::string message() const {
+ return String::compose(_("Boolean (either true or false) expected.\n"
+ "Found: \"%1\""), msg);
+ }
+ };
+
+ /** Exception to be thrown when an unknown compatibility mode was chosen */
+ class unknown_compat : public except_pi_string {
+ public:
+ unknown_compat(parsestream *p, std::string s):except_pi_string(p,s) { }
+ std::string message() const {
+ return String::compose(_("Unknown compat mode: \"%1\""), msg);
+ }
+ };
+}
+
+#endif /* PARSESTREAM_H */
diff --git a/update-menus/stringtoolbox.cc b/update-menus/stringtoolbox.cc
new file mode 100644
index 0000000..c00b007
--- /dev/null
+++ b/update-menus/stringtoolbox.cc
@@ -0,0 +1,182 @@
+/*
+ * Debian menu system -- update-menus and install-menu
+ * update-menus/stringtoolbox.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#include <algorithm>
+#include "exceptions.h"
+#include "stringtoolbox.h"
+
+using std::string;
+
+bool contains(const string& str, const string& sub, string::size_type pos)
+{
+ if (str.length() < (sub.length()+pos))
+ return false;
+
+ return (str.substr(pos, sub.length()) == sub);
+}
+
+bool contains(const string& str, char c)
+{
+ return str.find(c) != string::npos;
+}
+
+string rmtrailingspace(string str)
+{
+ while(!str.empty() && (isspace(str[str.length()-1])))
+ str.erase(str.length()-1);
+ return str;
+}
+
+string escapewith(const string& str, const string& esc, const string& with)
+{
+ string t;
+ for (string::size_type i = 0; i != str.length(); ++i)
+ {
+ if (esc.find(str[i]) != string::npos)
+ t += with;
+ t += str[i];
+ }
+ return t;
+}
+
+string escape(const string &str, const string &esc)
+{
+ return escapewith(str, esc, "\\");
+}
+
+string lowercase(string str)
+{
+ std::transform(str.begin(), str.end(), str.begin(), tolower);
+ return str;
+}
+
+string uppercase(string str)
+{
+ std::transform(str.begin(), str.end(), str.begin(), toupper);
+ return str;
+}
+
+string replacewith(string str, const string &replace, const string &with)
+{
+ if (replace.length() != with.length())
+ throw exceptions::except_string(_("replacewith($string, $replace, $with): $replace and $with must have the same length."));
+
+ for (string::size_type i = 0; i <= replace.length(); ++i)
+ {
+ std::replace(str.begin(), str.end(), replace[i], with[i]);
+ }
+ return str;
+}
+
+string replace(string str, const string& repl, const string& with)
+{
+ string::size_type pos = str.find(repl);
+
+ while (pos != string::npos && !repl.empty())
+ {
+ str = str.replace(pos, repl.length(), with);
+ pos = str.find(repl, pos+with.length());
+ }
+ return str;
+}
+
+/* This is isalnum with C locale enforced */
+static int c_isalnum(char s)
+{
+ if (s>='a' && s<='z') return 1;
+ if (s>='0' && s<='9') return 1;
+ if (s>='A' && s<='Z') return 1;
+ return 0;
+}
+
+string chartohex(unsigned char c)
+{
+ std::ostringstream o;
+ o << std::hex << (int) c;
+ return o.str();
+}
+
+string cppesc(const string &s)
+{
+ string t;
+ for (string::size_type i = 0; i!= s.length(); ++i)
+ {
+ if (!(c_isalnum(s[i]) || (s[i] == '_')))
+ t += '$' + chartohex(s[i]);
+ else
+ t += s[i];
+ }
+ return t;
+}
+
+int stringtoi(const string &str)
+{
+ return atoi(str.c_str());
+}
+
+string itostring(int i)
+{
+ std::ostringstream o;
+ o << i;
+ return o.str();
+}
+
+string string_parent(const string& str)
+{
+ string::size_type pos = str.find_last_of('/');
+ if (pos == string::npos)
+ return "";
+ else
+ return str.substr(0, pos);
+}
+
+string string_basename(const string& str)
+{
+ return string_stripdir(string_parent(str));
+}
+
+string string_stripdir(const string& str)
+{
+ string::size_type pos = str.find_last_of('/');
+ if (pos == string::npos)
+ return str;
+ else
+ return str.substr(pos+1);
+}
+
+void break_char(const string &str, std::vector<string>& container, char breakchar)
+{
+ string::size_type lastPos = str.find_first_not_of(breakchar, 0);
+ string::size_type pos = str.find_first_of(breakchar, lastPos);
+
+ while (string::npos != pos || string::npos != lastPos)
+ {
+ container.push_back(str.substr(lastPos, pos - lastPos));
+
+ lastPos = str.find_first_not_of(breakchar, pos);
+ pos = str.find_first_of(breakchar, lastPos);
+ }
+}
diff --git a/update-menus/stringtoolbox.h b/update-menus/stringtoolbox.h
new file mode 100644
index 0000000..ff934c9
--- /dev/null
+++ b/update-menus/stringtoolbox.h
@@ -0,0 +1,111 @@
+/*
+ * Debian menu system -- update-menus and install-menu
+ * update-menus/stringtoolbox.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef STRINGTOOLBOX_H
+#define STRINGTOOLBOX_H
+
+#include <vector>
+#include <string>
+
+/** Check whether str contains sub at pos. */
+bool contains(const std::string& str, const std::string &sub, std::string::size_type pos = 0);
+
+/** Check whether str contains c */
+bool contains(const std::string& str, char c);
+
+/** Remove all whitespace at end of str */
+std::string rmtrailingspace(std::string str);
+
+/** Search str and escape all characters in esc with the string 'with'
+ *
+ * Call with: escapewith("hello $world, %dir", "$%", "\\")
+ * Returns: "hello \$world, \%dir"
+ */
+std::string escapewith(const std::string &str, const std::string &esc, const std::string &with);
+
+/** Search str and escape all characters in esc with backspace (\).
+ *
+ * Call with: escape("hello $world, %dir", "$%")
+ * Returns: "hello \$world, \%dir"
+ */
+std::string escape(const std::string &s, const std::string &esc);
+
+/** Return str in lowercase. */
+std::string lowercase(std::string str);
+
+/** Return str in uppercase. */
+std::string uppercase(std::string str);
+
+/** Search str. For each character in replace, substitute it with the
+ * corresponding character in with.
+ *
+ * Call with: replacewith_string("hello $world, %dir", "$% ", "123")
+ * Returns: "hello31world,32dir"
+ */
+std::string replacewith(std::string str, const std::string &replace, const std::string &with);
+
+/** Search str. Replace all occurences of repl with with. */
+std::string replace(std::string str, const std::string& repl, const std::string& with);
+
+/** Escape anything that isn't a letter, number or _ with $<hex-ascii-code>.
+ * So for example '-' is replaced by '$2D'. */
+std::string cppesc(const std::string &s);
+
+/** Return the integer representation of str. If conversion is not possible,
+ * returns 0. */
+int stringtoi(const std::string &str);
+
+/** Returns the string representation of i. */
+std::string itostring(int i);
+
+/** Return the hexadecimal representation of c, as a string. */
+std::string chartohex(unsigned char c);
+
+/** Returns the 'parent' of a string in the form /<foo>/<bar> where '/'
+ * separates parents.
+ *
+ * Call with: string_parent("/Debian/Apps/Editors/Emacs")
+ * Returns: "/Debian/Apps/Editors"
+ */
+std::string string_parent(const std::string& str);
+
+/** Returns the last part of the parent directory. In other words, the same
+ * as string_stripdir(string_parent(str)). */
+std::string string_basename(const std::string& str);
+
+/** Returns the last element of a string in the form /foo/bar where '/'
+ * separates elements.
+ *
+ * Call with: string_stripdir("/Debian/Apps/Editors/Emacs")
+ * Returns: "Emacs"
+ */
+std::string string_stripdir(const std::string& str);
+
+/** Tokenize a string str with a separater breakchar. Insert all tokens into
+ * the vector passed to the function by reference. */
+void break_char(const std::string& str, std::vector<std::string>& container, char breakchar);
+
+#endif /* STRINGTOOLBOX_H */
diff --git a/update-menus/update-menus.cc b/update-menus/update-menus.cc
new file mode 100644
index 0000000..6d7ccc8
--- /dev/null
+++ b/update-menus/update-menus.cc
@@ -0,0 +1,1097 @@
+/*
+ * Debian menu system -- update-menus
+ * update-menus/update-menus.cc
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen;
+ * read_pkginfo function by Tom Lees, run_menumethods by both.
+ */
+
+#include <fstream>
+#include <sstream>
+#include <set>
+#include <cstdio>
+#include <cstdlib>
+#include <unistd.h>
+#include <getopt.h>
+#include <cerrno>
+#include <cctype>
+#include <cstring>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#include <sys/file.h>
+#include <dirent.h>
+#include <signal.h>
+#include <syslog.h>
+#include <pwd.h>
+#include "config.h"
+#include "update-menus.h"
+#include "stringtoolbox.h"
+
+using std::set;
+using std::vector;
+using std::string;
+using std::cout;
+using std::cerr;
+using std::ostream;
+using namespace exceptions;
+
+static const char * home_dir;
+
+set<string> installed_packages;
+set<string> menufiles_processed;
+int total_menuentries;
+
+translateinfo *transinfo;
+configinfo config;
+bool is_root;
+
+/** Try to open a directory. Throws dir_error_read if failed, and a DIR*
+ * descriptor if succeeded.
+ */
+DIR *open_dir_check(const string& dirname)
+{
+ DIR *dir = opendir(dirname.c_str());
+
+ if (!dir)
+ throw dir_error_read();
+
+ return dir;
+}
+
+/** Checks whether a file is executable */
+bool executable(const string &s)
+{
+ struct stat st;
+ if (stat(s.c_str(), &st)) {
+ return false;
+ } else {
+ return (((st.st_mode & S_IXOTH) ||
+ ((st.st_mode & S_IXGRP) && st.st_gid == getegid ()) ||
+ ((st.st_mode & S_IXUSR) && st.st_uid == geteuid ())) &&
+ (S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)));
+ }
+}
+
+/** Checks whether a package is installed */
+bool is_pkg_installed(const string& filename)
+{
+ if (config.no_dpkg_check || contains(filename, "local."))
+ return true;
+ else
+ return installed_packages.find(filename) != installed_packages.end();
+}
+
+menuentry::menuentry(parsestream &i, const std::string& file, const std::string& shortfile)
+{
+ char c = i.get_char();
+ if (c == '?') {
+ read_menuentry(i);
+ } else {
+ // old format menuentry
+ if (!is_pkg_installed(shortfile)) {
+ i.skip_line();
+ throw cond_inst_false();
+ }
+ data[PACKAGE_VAR] = shortfile;
+ i.put_back(c);
+ data[NEEDS_VAR] = i.get_stringconst();
+ data[SECTION_VAR] = i.get_stringconst();
+ i.get_stringconst(); //id is unused
+ data[ICON_VAR] = i.get_stringconst();
+ data[TITLE_VAR] = i.get_stringconst();
+ i.skip_space();
+ data[COMMAND_VAR] = i.get_line();
+ }
+ check_req_tags(file);
+}
+
+/** This function checks the package name to see if it's valid and installed.
+ * Multiple package names can exist, seperated by comma. */
+void menuentry::check_pkg_validity(parsestream &i, std::string &name)
+{
+ string function = i.get_name();
+ if (function != COND_PACKAGE)
+ throw unknown_cond_package(&i, function);
+
+ // Read an entry, such as (foo) or (foo, bar)
+ char c;
+ while ((c = i.get_char()))
+ {
+ if (c == ',' || c == '(') {
+ // A package name follows.
+ string pkgname = i.get_name();
+
+ if (!name.empty())
+ name += ", ";
+
+ name += pkgname;
+ if (!is_pkg_installed(pkgname)) {
+ i.skip_line();
+ config.report(String::compose(
+ _("file %1 line %2:\nDiscarding entry requiring missing package %3.")
+ , i.filename(), i.linenumber(), pkgname)
+ , configinfo::report_verbose);
+ throw cond_inst_false();
+ }
+ } else if (c == ')') {
+ // We are finished with the package requirements.
+ return;
+ }
+ }
+ i.skip_char(')');
+}
+
+/** Checks whether we have all the tags we need. */
+void menuentry::check_req_tags(const std::string& filename)
+{
+ vector<string> need;
+
+ need.push_back(SECTION_VAR);
+ need.push_back(TITLE_VAR);
+ need.push_back(NEEDS_VAR);
+
+ for(vector<string>::iterator i = need.begin(); i != need.end(); ++i)
+ {
+ std::map<string, string>::const_iterator j = data.find(*i);
+ if ((j == data.end()) || j->second.empty())
+ throw missing_tag(filename, *i);
+ }
+
+}
+
+/** Parse a menuentry from a parsestream */
+void menuentry::read_menuentry(parsestream &i)
+{
+ // a new format menuentry
+ string name;
+
+ // read available info
+ check_pkg_validity(i, name);
+ data[PACKAGE_VAR] = name;
+ i.skip_space();
+ i.skip_char(':');
+ i.doescaping = false;
+
+ // read menuentry:
+ try {
+ char c;
+ do {
+ string key = i.get_name();
+ string value = i.get_eq_stringconst();
+ data[key] = value;
+ c = i.get_char();
+ i.put_back(c);
+ } while(c);
+ }
+ catch (endofline) { }
+ i.skip_line();
+}
+
+void menuentry::output(std::vector<std::string> &s)
+{
+ string t;
+ std::map<string, string>::const_iterator i = data.begin();
+ if (i != data.end()) {
+ while (true)
+ {
+ t += i->first + "=\"" + i->second + '"';
+ i++;
+ if (i == data.end())
+ break;
+ else
+ t += ' ';
+ }
+ }
+ t += '\n';
+ s.push_back(t);
+}
+
+/////////////////////////////////////////////////////
+// configinfo
+//
+
+/** Handle key/value configuration pair */
+void configinfo::parse_config(const std::string &key, const std::string& value)
+{
+ if (key=="compat") {
+ if (value=="menu-1") compat = parsestream::eol_newline;
+ else if(value=="menu-2") compat = parsestream::eol_semicolon;
+ } else if(key=="verbosity") {
+ if (value=="quiet") verbosity=report_quiet;
+ else if(value=="normal") verbosity=report_normal;
+ else if(value=="verbose") verbosity=report_verbose;
+ else if(value=="debug") verbosity=report_debug;
+ } else if(key=="method") {
+ if (value=="stdout") method=method_stdout;
+ else if(value=="stderr") method=method_stderr;
+ else if(value=="syslog") {
+
+ method = method_syslog;
+ string facility;
+ string priority;
+
+ std::istringstream ss(value);
+ ss >> facility;
+ ss >> priority;
+
+ if(facility=="auth") syslog_facility=LOG_AUTH;
+ else if(facility=="authpriv") syslog_facility=LOG_AUTHPRIV;
+ else if(facility=="authcron") syslog_facility=LOG_CRON;
+ else if(facility=="authdaemon") syslog_facility=LOG_AUTHPRIV;
+ else if(facility=="authkern") syslog_facility=LOG_KERN;
+ else if(facility=="authlocal0") syslog_facility=LOG_LOCAL0;
+ else if(facility=="authlocal1") syslog_facility=LOG_LOCAL1;
+ else if(facility=="authlocal2") syslog_facility=LOG_LOCAL2;
+ else if(facility=="authlocal3") syslog_facility=LOG_LOCAL3;
+ else if(facility=="authlocal4") syslog_facility=LOG_LOCAL4;
+ else if(facility=="authlocal5") syslog_facility=LOG_LOCAL5;
+ else if(facility=="authlocal6") syslog_facility=LOG_LOCAL6;
+ else if(facility=="authlocal7") syslog_facility=LOG_LOCAL7;
+ else if(facility=="authlpr") syslog_facility=LOG_LPR;
+ else if(facility=="authmail") syslog_facility=LOG_MAIL;
+ else if(facility=="authnews") syslog_facility=LOG_NEWS;
+ else if(facility=="authsyslog") syslog_facility=LOG_SYSLOG;
+ else if(facility=="authuser") syslog_facility=LOG_USER;
+ else if(facility=="authuucp") syslog_facility=LOG_UUCP;
+
+ if(priority=="emerg") syslog_priority=LOG_EMERG;
+ else if(priority=="alert") syslog_priority=LOG_ALERT;
+ else if(priority=="crit") syslog_priority=LOG_CRIT;
+ else if(priority=="err") syslog_priority=LOG_ERR;
+ else if(priority=="warning") syslog_priority=LOG_WARNING;
+ else if(priority=="notice") syslog_priority=LOG_NOTICE;
+ else if(priority=="info") syslog_priority=LOG_INFO;
+ else if(priority=="debug") syslog_priority=LOG_DEBUG;
+ }
+ }
+}
+
+void configinfo::read_file(const std::string& filename)
+{
+ std::ifstream config_file(filename.c_str());
+
+ if (!config_file)
+ return;
+
+ string str;
+ while (getline(config_file, str))
+ {
+ // read a key and a value, seperated by '='.
+ string::size_type pos = str.find("=");
+ if (pos == string::npos)
+ return;
+
+ // parse key and value
+ parse_config(str.substr(0, pos), str.substr(pos + 1));
+ }
+
+}
+
+void configinfo::report(const std::string &message, verbosity_type v)
+{
+ if(v <= verbosity) {
+ switch(method) {
+ case method_stdout:
+ cout << String::compose("update-menus[%1]: %2\n",getpid(),message);
+ break;
+ case method_stderr:
+ cerr << String::compose("update-menus[%1]: %2\n",getpid(),message);
+ break;
+ case method_syslog:
+ openlog("update-menus",LOG_PID,syslog_facility);
+ syslog(syslog_priority,message.c_str());
+ closelog();
+ }
+ }
+}
+
+/////////////////////////////////////////////////////
+// translate stuff
+//
+
+void translate::process(menuentry &m, const std::string &search)
+{
+ if (search == match)
+ m.data[replace_var] = replace;
+}
+
+void subtranslate::process(menuentry &m, const std::string &search)
+{
+ if (contains(search, match))
+ m.data[replace_var] = replace;
+}
+
+void substitute::process(menuentry &m, const std::string &search)
+{
+ if (contains(search, match)) {
+ string *current = &(m.data[replace_var]);
+ if (current->length() >= match.length())
+ *current = replace + current->substr(match.length());
+ }
+}
+
+translateinfo::translateinfo(const std::string &filename)
+{
+ parsestream *i = 0;
+ try {
+ i = new parsestream(filename);
+
+ Regex ident("[[:alpha:]][[:alnum:]_]*");
+ /*Translation here and below refer to the file
+ /etc/menu-methods/translate_menus that allow to rename and reorganize
+ menu entries automatically. It does not refer to the localisation
+ (translation to other languages).
+ */
+ config.report(String::compose(_("Reading translation rules in %1."), i->filename()),
+ configinfo::report_verbose);
+ while (true)
+ {
+ string name = i->get_name(ident);
+ i->skip_space();
+ string match_var = i->get_name(ident);
+ i->skip_space();
+ i->skip_char('-');
+ i->skip_char('>');
+ i->skip_space();
+ string replace_var = i->get_name(ident);
+
+ i->skip_line();
+ while (true)
+ {
+ i->skip_space();
+ string match = i->get_stringconst();
+ if (match == ENDTRANSLATE_TRANS) {
+ i->skip_line();
+ break;
+ }
+ if (match[0]=='#') {
+ i->skip_line();
+ continue;
+ }
+ i->skip_space();
+ string replace = i->get_stringconst();
+ trans_class *trcl;
+ if (name == TRANSLATE_TRANS) {
+ trcl = new translate(match,replace,replace_var);
+ } else if (name == SUBTRANSLATE_TRANS) {
+ trcl = new subtranslate(match,replace,replace_var);
+ } else if (name == SUBSTITUTE_TRANS) {
+ trcl = new substitute(match,replace,replace_var);
+ } else {
+ i->skip_line();
+ continue;
+ }
+
+ std::pair<const string, trans_class *> p(match, trcl);
+
+ trans[match_var].push_back(p);
+ i->skip_line();
+ }
+ }
+ } catch(endoffile p) { }
+ delete i;
+}
+
+void translateinfo::process(menuentry &m)
+{
+ std::map<string, std::vector<trans_pair> >::const_iterator i;
+ std::vector<trans_pair>::const_iterator j;
+ string *search;
+ for (i = trans.begin(); i != trans.end(); ++i)
+ {
+ search = &m.data[i->first];
+ for (j = i->second.begin(); j != i->second.end(); ++j)
+ {
+ j->second->process(m, *search);
+ }
+ }
+}
+
+/////////////////////////////////////////////////////
+// Installed Package Status:
+//
+
+/** Read in list of installed packages */
+void read_pkginfo()
+{
+ // Here we get the list of *installed* packages from dpkg, using sed to
+ // retrieve the package name.
+ string inst_states="installed\\|triggers-awaited\\|triggers-pending";
+ string pkgs = "dpkg-query --show --showformat=\"\\${status} \\${provides} \\${package}\\n\" | sed -n -e \"/" + inst_states
+ + " /{s/^.*\\("+inst_states+"\\) *//; s/[, ][, ]*/\\n/g; p}\"";
+ pkgs = "exec /bin/bash -o pipefail -c '" + pkgs + "'";
+ FILE *status = popen(pkgs.c_str(), "r");
+
+ if (!status)
+ throw pipeerror_read(pkgs.c_str());
+
+ config.report(_("Reading installed packages list..."),
+ configinfo::report_verbose);
+
+ while (!feof(status))
+ {
+ char tmp[MAX_LINE];
+ if (fgets(tmp, MAX_LINE, status) != NULL) {
+ if (tmp[strlen(tmp)-1] == '\n')
+ tmp[strlen(tmp)-1] = 0;
+
+ installed_packages.insert(tmp);
+ }
+ }
+ if (pclose(status))
+ throw pipeerror_read(pkgs.c_str());
+}
+
+/** Read a menufile and create one (or more) menu entries for it.
+ *
+ * Returns the number of menu entries read. */
+int read_menufile(const string &filename, const string &shortfilename,
+ vector<string> &menudata)
+{
+ int menuentries = 0;
+ parsestream *ps = 0;
+ std::stringstream *sstream = 0;
+
+ try {
+ // Whenever we encounter a file which has the executable bit set, we
+ // need to execute it and read its output from stdout.
+
+ if (executable(filename)) {
+ FILE *exec_file = popen(filename.c_str(), "r");
+
+ sstream = new std::stringstream;
+
+ if (!exec_file)
+ throw pipeerror_read(filename.c_str());
+
+ while (!feof(exec_file))
+ {
+ char tmp[MAX_LINE];
+ if (fgets(tmp, MAX_LINE, exec_file) != NULL)
+ *sstream << tmp;
+ }
+ int status = pclose(exec_file);
+
+ try {
+ ps = new parsestream(*sstream);
+ } catch (endoffile d) {
+ if (status || sstream->str().size())
+ cerr << String::compose(_("Execution of %1 generated no output or returned an error.\n"), filename);
+ throw endoffile(d);
+ }
+ } else {
+ ps = new parsestream(filename);
+ }
+ } catch (endoffile p) {
+ delete sstream;
+ return menuentries;
+ }
+
+ try {
+ ps->seteolmode(config.compat);
+
+ bool wrote_filename = false;
+ int linenr = 1;
+ while (true)
+ {
+ try {
+ menuentry m(*ps, filename, shortfilename);
+ linenr++;
+ if (transinfo)
+ transinfo->process(m);
+ if (!wrote_filename) {
+ menudata.push_back(string("!F ") + filename + '\n');
+ wrote_filename = true;
+ }
+ m.output(menudata);
+ menuentries++;
+ if (ps->linenumber() != linenr) {
+ menudata.push_back(string("!L ") + itostring(ps->linenumber())+ '\n');
+ linenr = ps->linenumber();
+ }
+ }
+ catch (cond_inst_false) { }
+ }
+ }
+ catch (endoffile p) { }
+ catch (missing_tag& exc) {
+ std::cerr << exc.message() << std::endl;
+ std::cerr << _("Skipping file because of errors...\n");
+ }
+ catch (except_pi& exc) {
+ exc.report();
+ std::cerr << _("Skipping file because of errors...\n");
+ }
+
+ delete ps;
+ delete sstream;
+ return menuentries;
+}
+
+/** Read a directory full of menu files */
+void read_menufilesdir(vector<string> &menudata)
+{
+ for(vector<string>::const_iterator method_i = config.menufilesdir.begin();
+ method_i != config.menufilesdir.end();
+ ++method_i)
+ {
+ int menuentries = 0;
+ string dirname = *method_i;
+ config.report(String::compose(_("Reading menu-entry files in %1."), dirname),
+ configinfo::report_verbose);
+ try {
+ struct dirent *entry;
+ DIR *dir = open_dir_check(dirname);
+ while((entry = readdir(dir)))
+ {
+ string name = entry->d_name;
+ if ((name != "README") && (name != "core") && (name[0] != '.') &&
+ (name.find(".bak") == string::npos) &&
+ (!contains(name, "menu.config")) &&
+ (name[name.length()-1] != '~'))
+
+ if (menufiles_processed.find(name) == menufiles_processed.end()) {
+ menufiles_processed.insert(name);
+ name = dirname + "/" + name;
+ struct stat st;
+ int r = stat(name.c_str(),&st);
+ try {
+ if ((!r) && (S_ISREG(st.st_mode)||S_ISLNK(st.st_mode)))
+ menuentries += read_menufile(name,entry->d_name, menudata);
+ }
+ catch (endofline p) {
+ cerr << String::compose(_("Error reading %1.\n"), name);
+ }
+ }
+ }
+ } catch (dir_error_read p) { }
+ total_menuentries += menuentries;
+ config.report(String::compose(_("%1 menu entries found (%2 total)."), menuentries, total_menuentries), configinfo::report_verbose);
+ }
+}
+
+/** Run a menu-method with --remove*/
+void run_menumethod_remove(string methodname)
+{
+ const char *args[] = { methodname.c_str(), "--remove", NULL };
+ pid_t child, r;
+ int status;
+
+ config.report(String::compose(_("Running method: %1 --remove"), methodname),
+ configinfo::report_verbose);
+ if (!(child=fork())) {
+ // child:
+ execv(args[0],(char **)args);
+ exit(1);
+ }
+ // parent:
+ signal(SIGPIPE,SIG_IGN);
+ r = wait4(child, &status, 0, NULL);
+ signal(SIGPIPE,SIG_DFL);
+ if (r == -1)
+ config.report(String::compose(_("Script %1 could not be executed."), methodname),
+ configinfo::report_quiet);
+ if (WEXITSTATUS(status))
+ config.report(String::compose(_("Script %1 returned error status %2."), methodname, WEXITSTATUS(status)),
+ configinfo::report_quiet);
+ else if (WIFSIGNALED(status))
+ config.report(String::compose(_("Script %1 received signal %2."), methodname, WTERMSIG(status)),
+ configinfo::report_quiet);
+}
+
+/** Run a menu method */
+void run_menumethod(string methodname, const vector<string> &menudata)
+{
+ if (config.remove_menu)
+ {
+ run_menumethod_remove(methodname);
+ return;
+ }
+ int fds[2];
+ const char *args[] = { methodname.c_str(), NULL };
+ pid_t child, r;
+ int status;
+
+ config.report(String::compose(_("Running method: %1"), methodname), configinfo::report_verbose);
+
+ if (pipe(fds) == -1) {
+ config.report(_("Cannot create pipe."), configinfo::report_quiet);
+ exit(1);
+ }
+
+ if (!(child=fork())) {
+ // child:
+ close(fds[1]);
+ close(0);
+ dup(fds[0]);
+
+ //???
+ // The next 2 lines seem strange! But if I leave it out,
+ // pipes (in commands executed in the /etc/menu-method/* scripts as
+ // postrun etc) don't work when ran from dpkg. (When run from dpkg,
+ // we elsewhere close all filedescriptors. And apparently
+ // we need STDOUT open somehow in order to make the pipes work.
+ // (changed by suggestion of Fabian Sturm <f@rtfs.org>, for GNU Hurd,
+ // bug #105674
+
+ close(1);
+ open("/dev/null", O_RDWR);
+ execv(args[0],(char **)args);
+ exit(1);
+ } else {
+ // parent:
+ signal(SIGPIPE,SIG_IGN);
+ close(fds[0]);
+
+ for(vector<string>::const_iterator i = menudata.begin(); i != menudata.end(); ++i)
+ write(fds[1], i->c_str(), i->length());
+
+ close(fds[1]);
+ r = wait4(child, &status, 0, NULL);
+ signal(SIGPIPE,SIG_DFL);
+ }
+ if (r == -1)
+ config.report(String::compose(_("Script %1 could not be executed."), methodname),
+ configinfo::report_quiet);
+ if (WEXITSTATUS(status))
+ config.report(String::compose(_("Script %1 returned error status %2."), methodname, WEXITSTATUS(status)),
+ configinfo::report_quiet);
+ else if (WIFSIGNALED(status))
+ config.report(String::compose(_("Script %1 received signal %2."), methodname, WTERMSIG(status)),
+ configinfo::report_quiet);
+}
+
+/** Run a directory full of menu methods */
+void run_menumethoddir(const string &dirname, const vector<string> &menudata)
+{
+ struct dirent *entry;
+ char *s;
+
+ config.report(String::compose(_("Running menu-methods in %1."), dirname), configinfo::report_verbose);
+ DIR *dir = open_dir_check(dirname);
+ while ((entry = readdir (dir)) != NULL) {
+ if (!strcmp(entry->d_name, "README") || !strcmp(entry->d_name, "core"))
+ continue;
+ for (s = entry->d_name; *s != '\0'; s++)
+ {
+ if (!(isalnum (*s) || (*s == '_') || (*s == '-')))
+ break;
+ }
+ if (*s != '\0')
+ continue;
+
+ string method = dirname + "/" + entry->d_name;
+
+ if (executable(method))
+ run_menumethod(method, menudata);
+ }
+ closedir (dir);
+}
+
+/** Try to create a lock file for update-menus */
+int create_lock()
+{
+ // return lock fd if succesful, false if unsuccesfull.
+ int fd = true;
+
+ if (is_root) {
+ fd = open(UPMEN_LOCKFILE,O_WRONLY|O_CREAT,00644);
+
+ if (flock(fd,LOCK_EX|LOCK_NB)) {
+ if (errno == EWOULDBLOCK || errno == EAGAIN) {
+ config.report(String::compose(_("Other update-menus processes are already locking %1, quitting."), UPMEN_LOCKFILE),
+ configinfo::report_verbose);
+ } else {
+ config.report(String::compose(_("Cannot lock %1: %2 - Aborting."), UPMEN_LOCKFILE, strerror(errno)),
+ configinfo::report_quiet);
+ }
+ return false;
+
+ }
+
+ std::ostringstream ss;
+ ss << getpid() << "\n";
+ if (write(fd, ss.str().c_str(), ss.str().length()) < 1) {
+ config.report(String::compose(_("Cannot write to lockfile %1 - Aborting."), UPMEN_LOCKFILE),
+ configinfo::report_quiet);
+ return false;
+ }
+ }
+ return fd;
+}
+
+/** Try to remove update-menus lock */
+void remove_lock()
+{
+ if (is_root) {
+ if (unlink(UPMEN_LOCKFILE))
+ config.report(String::compose(_("Cannot remove lockfile %1."), UPMEN_LOCKFILE),
+ configinfo::report_normal);
+ }
+}
+
+/** Check whether dpkg is locked
+ * return 1 if DPKG_LOCKFILE is locked and we should wait
+ * return 0 if we don't need to wait (not root, or no dpkg lock)
+ * when in doubt return 0 to avoid deadlocks.
+ */
+int check_dpkglock()
+{
+ int fd;
+ struct flock fl;
+ if (!is_root)
+ {
+ config.report(_("Update-menus is run by user."), configinfo::report_verbose);
+ return 0;
+ }
+ fl.l_type = F_WRLCK;
+ fl.l_whence = SEEK_SET;
+ fl.l_start = 0;
+ fl.l_len = 0;
+ fd = open(DPKG_LOCKFILE, O_RDWR|O_CREAT|O_TRUNC, 0660);
+ if (fd == -1)
+ /* Probably /var/lib/dpkg does not exist.
+ * Most probably dpkg is not running.
+ */
+ return 0;
+ if (fcntl(fd,F_GETLK,&fl) == -1)
+ {
+ /* Probably /var/lib/dpkg filesystem does not support
+ * locks.
+ */
+ close(fd);
+ return 0;
+ }
+ close(fd);
+ return fl.l_type!=F_UNLCK;
+}
+
+void exit_on_signal(int signr)
+{
+ exit(0);
+}
+
+/** Check whether dpkg is running, and fork into background waiting if it is
+ * Or, if this dpkg supports triggers, do nothing unless run with a --trigger
+ * flag.
+ */
+void wait_dpkg(string &stdoutfile)
+{
+ int child;
+ int parentpid;
+ int i,r;
+ // This function checks to see if dpkg is running, and if
+ // so, forks into the background, to let dpkg go on installing
+ // packages. After dpkg finished (and wrote the new packages file),
+ // this function wakes up, and returns.
+
+
+ // Check if the dpkg lock is taken
+ if (check_dpkglock())
+ {
+ if (! config.trigger)
+ {
+ // Try to use dpkg-trigger to trigger the menu update later.
+ if (system("dpkg-trigger --by-package=menu /usr/share/menu >/dev/null 2>&1") == 0)
+ {
+ // Success, so no need to do anything now.
+ exit(0);
+ }
+ }
+
+ // If we can't get the u-m lock, probably another process is waiting
+ // for dpkg. We can safely exit.
+ r = create_lock();
+ if (!r)
+ exit(0);
+
+ if (config.trigger)
+ {
+ // This is the real update-menus run, caused by the trigger.
+ // So ignore the dpkg lock, and continue with updating in
+ // the foreground.
+ return;
+ }
+
+ // OK, we need to fork, create log file name and tell user about it.
+ stdoutfile = string("/tmp/update-menus.")+itostring(getpid());
+ config.report(String::compose(_("Waiting for dpkg to finish (forking to background).\n"
+ "(checking %1)"), DPKG_LOCKFILE),
+ configinfo::report_normal);
+ config.report(String::compose(_("Further output (if any) will appear in %1."), stdoutfile),
+ configinfo::report_normal);
+
+ // Now do the fork
+ parentpid=getpid();
+ if ((child=fork())) {
+ if (child==-1) {
+ perror("update-menus: fork");
+ exit(1);
+ }
+ exit(0);
+ } else {
+ // Close all fd's except the lock fd, for daemon mode.
+ for (i=0;i<32;i++) {
+ if (i != r)
+ close(i);
+ }
+ setsid();
+ // Sit and wait until dpkg is finished ...
+ while(check_dpkglock())
+ sleep(2);
+ }
+ } else {
+ // Dpkg is not locked. Try to get the u-m lock. If we can't get it,
+ // there may be a real problem.
+ r = create_lock();
+ if (!r)
+ exit(1);
+
+ config.report(_("Dpkg is not locking dpkg status area, good."),
+ configinfo::report_verbose);
+ }
+}
+
+/** Print usage information */
+void usage(ostream &c)
+{
+ c <<
+ _( /* This is the update-menus --help message*/
+ "Usage: update-menus [options] \n"
+ "Gather packages data from the menu database and generate menus for\n"
+ "all programs providing menu-methods, usually window-managers.\n"
+ " -d Output debugging messages.\n"
+ " -v Be verbose about what is going on.\n"
+ " -h, --help This message.\n"
+ " --menufilesdir=<dir> Add <dir> to the lists of menu directories to search.\n"
+ " --menumethod=<method> Run only the menu method <method>.\n"
+ " --nodefaultdirs Disable the use of all the standard menu directories.\n"
+ " --nodpkgcheck Do not check if packages are installed.\n"
+ " --remove Remove generated menus instead.\n"
+ " --stdout Output menu list in format suitable for piping to\n"
+ " install-menu.\n"
+ " --version Output version information and exit.\n");
+}
+
+struct option long_options[] = {
+ { "debug", no_argument, NULL, 'd' },
+ { "verbose", no_argument, NULL, 'v' },
+ { "help", no_argument, NULL, 'h' },
+ { "menufilesdir", required_argument, NULL, 'f'},
+ { "menumethod", required_argument, NULL, 'm'},
+ { "nodefaultdirs", no_argument, NULL, 'n'},
+ { "nodpkgcheck", no_argument, NULL, 'c'},
+ { "stdout", no_argument, NULL, 's'},
+ { "version", no_argument, NULL, 'V'},
+ { "remove", no_argument, NULL, 'r'},
+ { "trigger", no_argument, NULL, 'T'},
+ { NULL, 0, NULL, 0 } };
+
+
+/** Parse commandline parameters */
+void parse_params(int argc, char **argv)
+{
+ while(1)
+ {
+ int c = getopt_long (argc, argv, "hvd", long_options, NULL);
+ if (c == -1)
+ break;
+ switch(c)
+ {
+ case 'v':
+ config.set_verbosity(configinfo::report_verbose);
+ break;
+ case 'c':
+ config.no_dpkg_check = true;
+ break;
+ case 'd':
+ config.set_verbosity(configinfo::report_verbose);
+ break;
+ case 'n':
+ config.usedefaultmenufilesdirs = false;
+ break;
+ case 's':
+ config.onlyoutput_to_stdout = true;
+ break;
+ case 'f':
+ config.menufilesdir.push_back(optarg);
+ break;
+ case 'm':
+ config.menumethod = optarg;
+ break;
+ case 'r':
+ config.remove_menu = true;
+ break;
+ case 'T':
+ config.trigger = true;
+ break;
+ case 'V':
+ cout << "update-menus "VERSION << std::endl;
+ exit(0);
+ case 'h':
+ usage(cout);
+ exit(0);
+ default:
+ usage(cerr);
+ exit(1);
+ }
+ }
+}
+
+/** Read users configuration file */
+void read_userconfiginfo()
+{
+ if (!is_root) {
+ try {
+ config.read_file(string(home_dir)+"/"+USERCONFIG);
+ } catch(ferror_open d) { };
+ }
+}
+
+/** Read roots configuration file */
+void read_rootconfiginfo()
+{
+ if(!transinfo){
+ try {
+ config.read_file(CONFIG_FILE);
+ } catch (ferror_open d){};
+ }
+}
+
+/** Read users translate information */
+void read_usertranslateinfo()
+{
+ if (!is_root) {
+ try {
+ transinfo = new translateinfo(string(home_dir)+"/"+USERTRANSLATE);
+ } catch(ferror_open d) { };
+ }
+}
+
+/** Read roots translate information */
+void read_roottranslateinfo()
+{
+ if (!transinfo) {
+ try {
+ transinfo = new translateinfo(TRANSLATE_FILE);
+ } catch (ferror_open d) { };
+ }
+}
+
+/** Find our home directory */
+void read_homedirectory()
+{
+ struct passwd *pwentry = getpwuid(getuid());
+
+ if (pwentry != NULL)
+ home_dir = pwentry->pw_dir;
+ else
+ home_dir = getenv("HOME");
+}
+
+void run_methods(vector<string> &menudata)
+{
+ if (!config.menumethod.empty())
+ {
+ if (executable(config.menumethod))
+ run_menumethod(config.menumethod, menudata);
+ else
+ config.report(String::compose(_("Script %1 could not be executed."),
+ config.menumethod), configinfo::report_quiet);
+ }
+ else if (!is_root) {
+ try {
+ run_menumethoddir(string(home_dir)+"/"+USERMETHODS, menudata);
+ }
+ catch(dir_error_read d) {
+ run_menumethoddir(MENUMETHODS, menudata);
+ }
+ } else
+ run_menumethoddir(MENUMETHODS, menudata);
+}
+
+int main (int argc, char **argv)
+{
+ is_root = (getuid() == 0);
+ read_homedirectory();
+
+ vector<string> menudata;
+ string stdoutfile;
+ struct stat st;
+
+ setlocale (LC_ALL, "");
+ bindtextdomain (PACKAGE, LOCALEDIR);
+ textdomain (PACKAGE);
+
+ try {
+ read_rootconfiginfo();
+ parse_params(argc, argv);
+ wait_dpkg(stdoutfile);
+ if(!stdoutfile.empty()) {
+ close(1);
+ close(2);
+ int i = open(stdoutfile.c_str(), O_WRONLY|O_CREAT|O_SYNC|O_EXCL, 0666);
+ if (i != 2) {
+ dup2(i,2);
+ close(i);
+ }
+ }
+ if (config.remove_menu)
+ {
+ run_methods(menudata);
+ remove_lock();
+ return 0;
+ }
+ read_pkginfo();
+ transinfo = 0;
+
+ read_usertranslateinfo();
+ read_roottranslateinfo();
+
+ if (config.usedefaultmenufilesdirs) {
+ if (!is_root)
+ config.menufilesdir.push_back(string(home_dir)+"/"+USERMENUS);
+ config.menufilesdir.push_back(CONFIGMENUS);
+ config.menufilesdir.push_back(PACKAGEMENUSLIB);
+ config.menufilesdir.push_back(PACKAGEMENUS);
+ config.menufilesdir.push_back(MENUMENUS);
+ }
+
+ read_menufilesdir(menudata);
+
+ if (config.onlyoutput_to_stdout) {
+ for(vector<string>::const_iterator i = menudata.begin(); i != menudata.end(); ++i)
+ cout << *i;
+
+ } else
+ run_methods(menudata);
+ }
+ catch(genexcept& p) { p.report(); }
+
+ remove_lock();
+
+ if(!stdoutfile.empty())
+ if (!stat(stdoutfile.c_str(),&st))
+ if (!st.st_size)
+ unlink(stdoutfile.c_str());
+}
diff --git a/update-menus/update-menus.h b/update-menus/update-menus.h
new file mode 100644
index 0000000..f00d72e
--- /dev/null
+++ b/update-menus/update-menus.h
@@ -0,0 +1,157 @@
+/*
+ * Debian menu system -- update-menus
+ * update-menus/update-menus.h
+ *
+ * Copyright (C) 1996-2003 Joost Witteveen,
+ * Copyright (C) 2002-2004 Bill Allombert and Morten Brix Pedersen.
+ *
+ * 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 with
+ * the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL;
+ * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+ * Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Written by Joost Witteveen.
+ */
+
+#ifndef UPDATE_MENUS_H
+#define UPDATE_MENUS_H
+
+#include <map>
+#include <vector>
+#include "compose.hpp"
+#include "common.h"
+#include "exceptions.h"
+#include "parsestream.h"
+
+/** Internal representation of a menu entry */
+class menuentry {
+ void check_req_tags(const std::string& filename);
+ void check_pkg_validity(parsestream &i, std::string &);
+ void read_menuentry(parsestream &i);
+
+public:
+ menuentry(parsestream &i, const std::string& file, const std::string& shortfile);
+
+ /** Map containing the data of the menuentry. The key is the tag and the
+ * value is the value of the tag.
+ */
+ std::map<std::string, std::string> data;
+ /** Output full menu entry in menu format, and put it in vec */
+ void output(std::vector<std::string>& vec);
+};
+
+/** Base class containing general methods for translation/substitution */
+class trans_class {
+protected:
+ std::string match, replace, replace_var;
+
+public:
+ trans_class(const std::string &m, const std::string &r, const std::string &rv)
+ : match(m), replace(r), replace_var(rv) { }
+
+ /** Process the menuentry using a search string */
+ virtual void process(menuentry &m, const std::string& search) = 0;
+ virtual ~trans_class() { }
+};
+
+/** Class for menu's "translation" feature */
+class translate : public trans_class {
+public:
+ translate(const std::string &m, const std::string &r, const std::string &rv)
+ : trans_class(m,r,rv) { }
+
+ void process(menuentry &m, const std::string& search);
+};
+
+/** Class for menu's "substitute" feature */
+class substitute : public trans_class {
+public:
+ substitute(const std::string &m, const std::string &r, const std::string &rv)
+ : trans_class(m,r,rv) { }
+
+ void process(menuentry &m, const std::string& search);
+};
+
+/** Helper class for menu's "substitute" feature */
+class subtranslate : public trans_class {
+public:
+ subtranslate(std::string &m, const std::string &r, const std::string &rv)
+ : trans_class(m,r,rv) { }
+
+ void process(menuentry &m, const std::string& search);
+};
+
+/** Class container for translation and subtitution classes */
+class translateinfo {
+ typedef std::pair<std::string, trans_class*> trans_pair;
+ std::map<std::string, std::vector<trans_pair> > trans;
+
+public:
+ translateinfo(const std::string &filename);
+
+ /** Process all translation classes */
+ void process(menuentry &m);
+};
+
+/** Representation of configurable variables in update-menus. */
+class configinfo {
+ typedef enum { method_stdout, method_stderr, method_syslog} method_type;
+ method_type method;
+ int syslog_facility, syslog_priority;
+
+ void parse_config(const std::string &var, const std::string& value);
+
+public:
+ configinfo()
+ : method(method_stderr), compat(parsestream::eol_newline),
+ usedefaultmenufilesdirs(true), onlyoutput_to_stdout(false),
+ remove_menu(false), trigger(false), verbosity(report_quiet)
+ { }
+
+ typedef enum { report_quiet, report_normal, report_verbose, report_debug} verbosity_type;
+ parsestream::eol_type compat;
+ std::vector<std::string> menufilesdir;
+ std::string menumethod;
+ bool usedefaultmenufilesdirs;
+ bool onlyoutput_to_stdout;
+ bool no_dpkg_check;
+ bool remove_menu;
+ bool trigger;
+
+
+ /** Read configuration file from filename */
+ void read_file(const std::string& filename);
+
+ /** Print message according to verbosity_type */
+ void report(const std::string &message, verbosity_type v);
+
+ /** Mutator method to verbosity */
+ void set_verbosity(verbosity_type v) { verbosity = v; }
+
+private:
+ verbosity_type verbosity;
+};
+
+namespace exceptions {
+ /** Exception to be thrown when an unknown install condition is found */
+ class unknown_cond_package : public except_pi_string {
+ public:
+ unknown_cond_package(parsestream *p, std::string s) : except_pi_string(p,s) { }
+ std::string message() {
+ return String::compose(_("Unknown install condition \"%1\" (currently, only \"package\" is supported)."), msg);
+ }
+ };
+}
+
+#endif