From 643c8222b7440b7157439cf98c386597cda9fa34 Mon Sep 17 00:00:00 2001 From: tpearson Date: Sun, 15 Aug 2010 03:02:30 +0000 Subject: [PATCH] Added kerry git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kerry@1163761 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- AUTHORS | 6 + COPYING | 346 + ChangeLog | 61 + INSTALL | 176 + Makefile.am | 13 + Makefile.am.in | 12 + README | 3 + TODO | 11 + VERSION | 1 + acinclude.m4 | 11919 ++++++++++++++++ aclocal.m4 | 863 ++ config.h.in | 315 + configure.files | 3 + configure.in | 251 + configure.in.in | 8 + kerry/Makefile.am | 6 + kerry/configure.in.in | 89 + kerry/src/Makefile.am | 44 + kerry/src/beagled-shutdown.sh | 7 + kerry/src/beagled.desktop | 26 + kerry/src/beaglesearch.cpp | 460 + kerry/src/beaglesearch.h | 145 + kerry/src/dcopinterface.h | 36 + kerry/src/hitwidget.cpp | 223 + kerry/src/hitwidget.h | 76 + kerry/src/hitwidget_layout.ui | 377 + kerry/src/hitwidget_layout.ui.h | 1 + kerry/src/icons/Makefile.am | 1 + kerry/src/icons/hi128-app-kerry.png | Bin 0 -> 8796 bytes .../src/icons/hi128-app-kerry_systemtray.png | Bin 0 -> 8796 bytes kerry/src/icons/hi16-app-kerry.png | Bin 0 -> 753 bytes kerry/src/icons/hi16-app-kerry_arrow.png | Bin 0 -> 3437 bytes kerry/src/icons/hi16-app-kerry_info.png | Bin 0 -> 3482 bytes kerry/src/icons/hi16-app-kerry_systemtray.png | Bin 0 -> 753 bytes kerry/src/icons/hi22-app-kerry.png | Bin 0 -> 1062 bytes kerry/src/icons/hi22-app-kerry_systemtray.png | Bin 0 -> 1062 bytes kerry/src/icons/hi32-app-kerry.png | Bin 0 -> 1672 bytes kerry/src/icons/hi32-app-kerry_systemtray.png | Bin 0 -> 1672 bytes kerry/src/icons/hi48-app-kerry.png | Bin 0 -> 2677 bytes kerry/src/icons/hi48-app-kerry_systemtray.png | Bin 0 -> 2677 bytes kerry/src/icons/hi64-app-kerry.png | Bin 0 -> 3823 bytes kerry/src/icons/hi64-app-kerry_systemtray.png | Bin 0 -> 3823 bytes kerry/src/icons/hisc-app-kerry.svgz | Bin 0 -> 7567 bytes kerry/src/icons/hisc-app-kerry_arrow.svgz | Bin 0 -> 3085 bytes kerry/src/icons/hisc-app-kerry_info.svgz | Bin 0 -> 4111 bytes .../src/icons/hisc-app-kerry_systemtray.svgz | Bin 0 -> 7567 bytes kerry/src/kcm/Makefile.am | 20 + kerry/src/kcm/backends.cpp | 221 + kerry/src/kcm/backends.h | 54 + kerry/src/kcm/beagle.cpp | 100 + kerry/src/kcm/beagle.h | 49 + kerry/src/kcm/indexing.cpp | 410 + kerry/src/kcm/indexing.h | 63 + kerry/src/kcm/kcmbeagle.desktop | 49 + kerry/src/kcm/kcmkerry.desktop | 9 + kerry/src/kcm/kerry.cpp | 113 + kerry/src/kcm/kerry.h | 50 + kerry/src/kcm/main.cpp | 43 + kerry/src/kcm/search.cpp | 150 + kerry/src/kcm/search.h | 61 + kerry/src/kcm/select_privacy_resource.ui | 86 + kerry/src/kcm/select_privacy_resource.ui.h | 1 + kerry/src/kcm/status.cpp | 216 + kerry/src/kcm/status.h | 63 + kerry/src/kerry.autostart.desktop | 35 + kerry/src/kerry.desktop | 31 + kerry/src/kerryapp.cpp | 268 + kerry/src/kerryapp.h | 66 + kerry/src/kerrylabel.cpp | 107 + kerry/src/kerrylabel.h | 57 + kerry/src/kwidgetlistbox.cpp | 223 + kerry/src/kwidgetlistbox.h | 65 + kerry/src/main.cpp | 104 + kerry/src/query.cpp | 136 + kerry/src/query.h | 55 + kerry/src/search-running.mng | Bin 0 -> 11888 bytes kerry/src/searchdlg.cpp | 1852 +++ kerry/src/searchdlg.h | 173 + kerry/src/searchdlg_layout.ui | 1111 ++ kerry/src/searchdlg_layout.ui.h | 1 + po/Makefile.am | 1 + po/ar/Makefile.am | 3 + po/ar/kcmbeagle.po | 235 + po/ar/kerry.po | 683 + po/br/Makefile.am | 3 + po/br/kcmbeagle.po | 229 + po/br/kerry.po | 740 + po/ca/Makefile.am | 3 + po/ca/kcmbeagle.po | 230 + po/ca/kerry.po | 827 ++ po/cs/Makefile.am | 3 + po/cs/kerry.po | 831 ++ po/da/Makefile.am | 3 + po/da/kcmbeagle.po | 237 + po/da/kerry.po | 855 ++ po/de/Makefile.am | 3 + po/de/kcmbeagle.po | 244 + po/de/kerry.po | 710 + po/el/Makefile.am | 3 + po/el/kcmbeagle.po | 226 + po/el/kerry.po | 683 + po/es/Makefile.am | 3 + po/es/kcmbeagle.po | 236 + po/es/kerry.po | 708 + po/fi/Makefile.am | 3 + po/fi/kcmbeagle.po | 237 + po/fi/kerry.po | 725 + po/fr/Makefile.am | 3 + po/fr/kerry.po | 828 ++ po/ga/Makefile.am | 3 + po/ga/kcmbeagle.po | 234 + po/ga/kerry.po | 753 + po/gl/Makefile.am | 3 + po/gl/kerry.po | 857 ++ po/hu/Makefile.am | 3 + po/hu/kerry.po | 822 ++ po/it/Makefile.am | 3 + po/it/kerry.po | 817 ++ po/ja/Makefile.am | 3 + po/ja/kcmbeagle.po | 229 + po/ja/kerry.po | 697 + po/ka/Makefile.am | 3 + po/ka/kerry.po | 852 ++ po/km/Makefile.am | 3 + po/km/kerry.po | 813 ++ po/nb/Makefile.am | 3 + po/nb/kerry.po | 812 ++ po/nl/Makefile.am | 3 + po/nl/kcmbeagle.po | 238 + po/nl/kerry.po | 709 + po/nn/Makefile.am | 3 + po/nn/kerry.po | 835 ++ po/pl/Makefile.am | 3 + po/pl/kerry.po | 827 ++ po/pt/Makefile.am | 3 + po/pt/kcmbeagle.po | 233 + po/pt/kerry.po | 708 + po/pt_BR/Makefile.am | 3 + po/pt_BR/kerry.po | 826 ++ po/sk/Makefile.am | 3 + po/sk/kcmbeagle.po | 227 + po/sk/kerry.po | 684 + po/sv/Makefile.am | 3 + po/sv/kerry.po | 703 + po/th/Makefile.am | 3 + po/th/kerry.po | 701 + po/tr/Makefile.am | 3 + po/tr/kcmbeagle.po | 229 + po/tr/kerry.po | 695 + po/uk/Makefile.am | 3 + po/uk/kcmbeagle.po | 236 + po/uk/kerry.po | 706 + po/zh_CN/Makefile.am | 3 + po/zh_CN/kerry.po | 806 ++ po/zh_TW/Makefile.am | 3 + po/zh_TW/kerry.po | 819 ++ stamp-h.in | 0 subdirs | 2 + 158 files changed, 48146 insertions(+) create mode 100644 AUTHORS create mode 100644 COPYING create mode 100644 ChangeLog create mode 100644 INSTALL create mode 100644 Makefile.am create mode 100644 Makefile.am.in create mode 100644 README create mode 100644 TODO create mode 100644 VERSION create mode 100644 acinclude.m4 create mode 100644 aclocal.m4 create mode 100644 config.h.in create mode 100644 configure.files create mode 100644 configure.in create mode 100644 configure.in.in create mode 100644 kerry/Makefile.am create mode 100644 kerry/configure.in.in create mode 100644 kerry/src/Makefile.am create mode 100755 kerry/src/beagled-shutdown.sh create mode 100644 kerry/src/beagled.desktop create mode 100644 kerry/src/beaglesearch.cpp create mode 100644 kerry/src/beaglesearch.h create mode 100644 kerry/src/dcopinterface.h create mode 100644 kerry/src/hitwidget.cpp create mode 100644 kerry/src/hitwidget.h create mode 100644 kerry/src/hitwidget_layout.ui create mode 100644 kerry/src/hitwidget_layout.ui.h create mode 100644 kerry/src/icons/Makefile.am create mode 100644 kerry/src/icons/hi128-app-kerry.png create mode 100644 kerry/src/icons/hi128-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hi16-app-kerry.png create mode 100755 kerry/src/icons/hi16-app-kerry_arrow.png create mode 100755 kerry/src/icons/hi16-app-kerry_info.png create mode 100644 kerry/src/icons/hi16-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hi22-app-kerry.png create mode 100644 kerry/src/icons/hi22-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hi32-app-kerry.png create mode 100644 kerry/src/icons/hi32-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hi48-app-kerry.png create mode 100644 kerry/src/icons/hi48-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hi64-app-kerry.png create mode 100644 kerry/src/icons/hi64-app-kerry_systemtray.png create mode 100644 kerry/src/icons/hisc-app-kerry.svgz create mode 100644 kerry/src/icons/hisc-app-kerry_arrow.svgz create mode 100644 kerry/src/icons/hisc-app-kerry_info.svgz create mode 100644 kerry/src/icons/hisc-app-kerry_systemtray.svgz create mode 100644 kerry/src/kcm/Makefile.am create mode 100644 kerry/src/kcm/backends.cpp create mode 100644 kerry/src/kcm/backends.h create mode 100644 kerry/src/kcm/beagle.cpp create mode 100644 kerry/src/kcm/beagle.h create mode 100644 kerry/src/kcm/indexing.cpp create mode 100644 kerry/src/kcm/indexing.h create mode 100644 kerry/src/kcm/kcmbeagle.desktop create mode 100644 kerry/src/kcm/kcmkerry.desktop create mode 100644 kerry/src/kcm/kerry.cpp create mode 100644 kerry/src/kcm/kerry.h create mode 100644 kerry/src/kcm/main.cpp create mode 100644 kerry/src/kcm/search.cpp create mode 100644 kerry/src/kcm/search.h create mode 100644 kerry/src/kcm/select_privacy_resource.ui create mode 100644 kerry/src/kcm/select_privacy_resource.ui.h create mode 100644 kerry/src/kcm/status.cpp create mode 100644 kerry/src/kcm/status.h create mode 100644 kerry/src/kerry.autostart.desktop create mode 100644 kerry/src/kerry.desktop create mode 100644 kerry/src/kerryapp.cpp create mode 100644 kerry/src/kerryapp.h create mode 100644 kerry/src/kerrylabel.cpp create mode 100644 kerry/src/kerrylabel.h create mode 100644 kerry/src/kwidgetlistbox.cpp create mode 100644 kerry/src/kwidgetlistbox.h create mode 100644 kerry/src/main.cpp create mode 100644 kerry/src/query.cpp create mode 100644 kerry/src/query.h create mode 100644 kerry/src/search-running.mng create mode 100644 kerry/src/searchdlg.cpp create mode 100644 kerry/src/searchdlg.h create mode 100644 kerry/src/searchdlg_layout.ui create mode 100644 kerry/src/searchdlg_layout.ui.h create mode 100644 po/Makefile.am create mode 100644 po/ar/Makefile.am create mode 100644 po/ar/kcmbeagle.po create mode 100644 po/ar/kerry.po create mode 100644 po/br/Makefile.am create mode 100644 po/br/kcmbeagle.po create mode 100644 po/br/kerry.po create mode 100644 po/ca/Makefile.am create mode 100644 po/ca/kcmbeagle.po create mode 100644 po/ca/kerry.po create mode 100644 po/cs/Makefile.am create mode 100644 po/cs/kerry.po create mode 100644 po/da/Makefile.am create mode 100644 po/da/kcmbeagle.po create mode 100644 po/da/kerry.po create mode 100644 po/de/Makefile.am create mode 100644 po/de/kcmbeagle.po create mode 100644 po/de/kerry.po create mode 100644 po/el/Makefile.am create mode 100644 po/el/kcmbeagle.po create mode 100644 po/el/kerry.po create mode 100644 po/es/Makefile.am create mode 100644 po/es/kcmbeagle.po create mode 100644 po/es/kerry.po create mode 100644 po/fi/Makefile.am create mode 100644 po/fi/kcmbeagle.po create mode 100644 po/fi/kerry.po create mode 100644 po/fr/Makefile.am create mode 100644 po/fr/kerry.po create mode 100644 po/ga/Makefile.am create mode 100644 po/ga/kcmbeagle.po create mode 100644 po/ga/kerry.po create mode 100644 po/gl/Makefile.am create mode 100644 po/gl/kerry.po create mode 100644 po/hu/Makefile.am create mode 100644 po/hu/kerry.po create mode 100644 po/it/Makefile.am create mode 100644 po/it/kerry.po create mode 100644 po/ja/Makefile.am create mode 100644 po/ja/kcmbeagle.po create mode 100644 po/ja/kerry.po create mode 100644 po/ka/Makefile.am create mode 100644 po/ka/kerry.po create mode 100644 po/km/Makefile.am create mode 100644 po/km/kerry.po create mode 100644 po/nb/Makefile.am create mode 100644 po/nb/kerry.po create mode 100644 po/nl/Makefile.am create mode 100644 po/nl/kcmbeagle.po create mode 100644 po/nl/kerry.po create mode 100644 po/nn/Makefile.am create mode 100644 po/nn/kerry.po create mode 100644 po/pl/Makefile.am create mode 100644 po/pl/kerry.po create mode 100644 po/pt/Makefile.am create mode 100644 po/pt/kcmbeagle.po create mode 100644 po/pt/kerry.po create mode 100644 po/pt_BR/Makefile.am create mode 100644 po/pt_BR/kerry.po create mode 100644 po/sk/Makefile.am create mode 100644 po/sk/kcmbeagle.po create mode 100644 po/sk/kerry.po create mode 100644 po/sv/Makefile.am create mode 100644 po/sv/kerry.po create mode 100644 po/th/Makefile.am create mode 100644 po/th/kerry.po create mode 100644 po/tr/Makefile.am create mode 100644 po/tr/kcmbeagle.po create mode 100644 po/tr/kerry.po create mode 100644 po/uk/Makefile.am create mode 100644 po/uk/kcmbeagle.po create mode 100644 po/uk/kerry.po create mode 100644 po/zh_CN/Makefile.am create mode 100644 po/zh_CN/kerry.po create mode 100644 po/zh_TW/Makefile.am create mode 100644 po/zh_TW/kerry.po create mode 100644 stamp-h.in create mode 100644 subdirs diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..481243a --- /dev/null +++ b/AUTHORS @@ -0,0 +1,6 @@ +Stephan Binner + +Original BeagleSearch class and part of configuration: +Debajyoti Bera + +Icons by Robert Lihm diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..5ff207a --- /dev/null +++ b/COPYING @@ -0,0 +1,346 @@ +NOTE! The GPL below is copyrighted by the Free Software Foundation, but +the instance of code that it refers to (the kde programs) are copyrighted +by the authors who actually wrote it. + +--------------------------------------------------------------------------- + + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy 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. + + , 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..c73c201 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,61 @@ +0.2.1: +====== +- utilize kabc Beagle backend again +- show phone numbers in kabc hits +- don't stop Beagle when quitting +- don't display "(still searching)" - may make dialog too wide +- info icon, longer timeout and more informative about beagleindex popup +- remove major resource hog/blocking for certain results + +0.2: +==== +- nicer info/collapse icons and toolstip for them +- always allow to collapse, even if details are displayed initially +- add "Collapse All", "Expand All" context menu +- also indicate still running search in the status bar +- ignore KDE bookmarks Beagle backend to prevent dupes +- check the age of /tmp/.beagleindexwapi dirs before warning +- fix opening of Thunderbird hits +- remember which tiles were expanded when rebuilding display + +0.2rc (0.1.99): +=============== +- rewrote configuration as kcm modules +- support new Beagle backend for KNotes +- allow to display all hits at once in listview +- require a minimum of 3 chars for search +- option to show results as expandable one liners +- add dcop search call with scope for Kickoff +- OR, - and "" for non-Beagle searches/path name filtering +- added headers in search sidebar and a "Configure..." button +- fix/change again umlaut handling +- fix global shortcut handling +- add "Sort by Type" option + +0.2 Beta 2 (0.1.91): +==================== +- sidebar for scope and sorting with date filter instead combobox/context menu +- added non-Beagle based KDE addressbook searching +- added non-Beagle based Konqueror bookmark searching +- added non-Beagle application menu search +- passive popup at start if beagle-crawl-system is running +- added tile for "Packages" such as Gentoo Ebuild, RPM, Debian +- added "Index data while on battery power" config setting (Beagle 0.2.8) +- made GUI during search non-blocking, add a spinner +- icon converted to SVG and revised by Robert Lihm +- default just to Alt+Space keyboard shortcut for now +- fix preview for URLs with escaped chars within +- start beagle daemon by default +- fixed a memory leak + +0.2 Beta (0.1.90): +================== +- start as root if Beagle is configured to run as root +- link configuration in search dialog startup screen +- add Beagle backends configuration +- add Beagle status / control tab to configuration +- add "search within file/path name" mode to combo box (WIP) +- show notice if no results and Beagle was just started +- Ctrl+PageUp = goto first hit, Ctrl+PageDown = goto last hit +- add "Open With" context menu also to the "Open" links +- rich tooltips for search results (bigger thumbnails etc.) diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000..f8bad0c --- /dev/null +++ b/INSTALL @@ -0,0 +1,176 @@ +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, a file +`config.cache' that saves the results of its tests to speed up +reconfiguring, and a file `config.log' containing compiler output +(useful mainly for debugging `configure'). + + 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 at some point `config.cache' +contains results you don't want to keep, you may remove or edit it. + + The file `configure.in' is used to create `configure' by a program +called `autoconf'. You only need `configure.in' 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 a while. 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. You can give `configure' +initial values for variables by setting them in the environment. Using +a Bourne-compatible shell, you can do that on the command line like +this: + CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure + +Or on systems that have the `env' program, you can do it like this: + env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure + +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 supports 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' will install the package's files in +`/usr/local/kde/bin', `/usr/local/kde/lib', etc. You can specify an +installation prefix other than `/usr/local/kde' by giving `configure' +the option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + 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' can not figure out +automatically, but needs to determine by the type of host the package +will run on. Usually `configure' can figure that out, but if it prints +a message saying it can not guess the host type, give it the +`--host=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name with three fields: + CPU-COMPANY-SYSTEM + +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 host type. + + If you are building compiler tools for cross-compiling, you can also +use the `--target=TYPE' option to select the type of system they will +produce code for and the `--build=TYPE' option to select the type of +system on which you are compiling the package. + +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. + +Operation Controls +================== + + `configure' recognizes the following options to control how it +operates. + +`--cache-file=FILE' + Use and save the results of the tests in FILE instead of + `./config.cache'. Set FILE to `/dev/null' to disable caching, for + debugging `configure'. + +`--help' + Print a summary of the options to `configure', and exit. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--version' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`configure' also accepts some other, not widely useful, options. + diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..d2ff916 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,13 @@ +## (C) 1997 Stephan Kulow + +AUTOMAKE_OPTIONS = foreign +DISTCLEANFILES = inst-apps + +dist-hook: + cd $(top_distdir) && perl $(top_srcdir)/admin/am_edit -padmin + +include admin/Doxyfile.am +include admin/deps.am + + +SUBDIRS=$(TOPSUBDIRS) diff --git a/Makefile.am.in b/Makefile.am.in new file mode 100644 index 0000000..3a8eafb --- /dev/null +++ b/Makefile.am.in @@ -0,0 +1,12 @@ +## (C) 1997 Stephan Kulow + +AUTOMAKE_OPTIONS = foreign +DISTCLEANFILES = inst-apps + +dist-hook: + cd $(top_distdir) && perl $(top_srcdir)/admin/am_edit -padmin + +include admin/Doxyfile.am +include admin/deps.am + + diff --git a/README b/README new file mode 100644 index 0000000..b50df7d --- /dev/null +++ b/README @@ -0,0 +1,3 @@ +Kerry is a KDE frontend for Beagle + +Homepage: http://en.opensuse.org/Kerry diff --git a/TODO b/TODO new file mode 100644 index 0000000..9cc71ae --- /dev/null +++ b/TODO @@ -0,0 +1,11 @@ +write (simple) replacement for beagle-imlogviewer + +fix Akregator backend (http://bugzilla.gnome.org/show_bug.cgi?id=331135) + +add Konversation backend (http://bugzilla.gnome.org/show_bug.cgi?id=331609) + +=== + +instant searching (?) + +grouped results view (?) diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..08c95f5 --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +kerry version 0.2.1 diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000..e29977a --- /dev/null +++ b/acinclude.m4 @@ -0,0 +1,11919 @@ +## -*- autoconf -*- + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 1997 Janos Farkas (chexum@shadow.banki.hu) +dnl (C) 1997,98,99 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +dnl Boston, MA 02110-1301, USA. + +dnl IMPORTANT NOTE: +dnl Please do not modify this file unless you expect your modifications to be +dnl carried into every other module in the repository. +dnl +dnl Single-module modifications are best placed in configure.in for kdelibs +dnl and kdebase or configure.in.in if present. + +# KDE_PATH_X_DIRECT +dnl Internal subroutine of AC_PATH_X. +dnl Set ac_x_includes and/or ac_x_libraries. +AC_DEFUN([KDE_PATH_X_DIRECT], +[ +AC_REQUIRE([KDE_CHECK_LIB64]) + +if test "$ac_x_includes" = NO; then + # Guess where to find include files, by looking for this one X11 .h file. + test -z "$x_direct_test_include" && x_direct_test_include=X11/Intrinsic.h + + # First, try using that file with no special directory specified. +AC_TRY_CPP([#include <$x_direct_test_include>], +[# We can compile using X headers with no special include directory. +ac_x_includes=], +[# Look for the header file in a standard set of common directories. +# Check X11 before X11Rn because it is often a symlink to the current release. + for ac_dir in \ + /usr/X11/include \ + /usr/X11R6/include \ + /usr/X11R5/include \ + /usr/X11R4/include \ + \ + /usr/include/X11 \ + /usr/include/X11R6 \ + /usr/include/X11R5 \ + /usr/include/X11R4 \ + \ + /usr/local/X11/include \ + /usr/local/X11R6/include \ + /usr/local/X11R5/include \ + /usr/local/X11R4/include \ + \ + /usr/local/include/X11 \ + /usr/local/include/X11R6 \ + /usr/local/include/X11R5 \ + /usr/local/include/X11R4 \ + \ + /usr/X386/include \ + /usr/x386/include \ + /usr/XFree86/include/X11 \ + \ + /usr/include \ + /usr/local/include \ + /usr/unsupported/include \ + /usr/athena/include \ + /usr/local/x11r5/include \ + /usr/lpp/Xamples/include \ + \ + /usr/openwin/include \ + /usr/openwin/share/include \ + ; \ + do + if test -r "$ac_dir/$x_direct_test_include"; then + ac_x_includes=$ac_dir + break + fi + done]) +fi # $ac_x_includes = NO + +if test "$ac_x_libraries" = NO; then + # Check for the libraries. + + test -z "$x_direct_test_library" && x_direct_test_library=Xt + test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc + + # See if we find them without any special options. + # Don't add to $LIBS permanently. + ac_save_LIBS="$LIBS" + LIBS="-l$x_direct_test_library $LIBS" +AC_TRY_LINK([#include ], [${x_direct_test_function}(1)], +[LIBS="$ac_save_LIBS" +# We can link X programs with no special library path. +ac_x_libraries=], +[LIBS="$ac_save_LIBS" +# First see if replacing the include by lib works. +# Check X11 before X11Rn because it is often a symlink to the current release. +for ac_dir in `echo "$ac_x_includes" | sed s/include/lib${kdelibsuff}/` \ + /usr/X11/lib${kdelibsuff} \ + /usr/X11R6/lib${kdelibsuff} \ + /usr/X11R5/lib${kdelibsuff} \ + /usr/X11R4/lib${kdelibsuff} \ + \ + /usr/lib${kdelibsuff}/X11 \ + /usr/lib${kdelibsuff}/X11R6 \ + /usr/lib${kdelibsuff}/X11R5 \ + /usr/lib${kdelibsuff}/X11R4 \ + \ + /usr/local/X11/lib${kdelibsuff} \ + /usr/local/X11R6/lib${kdelibsuff} \ + /usr/local/X11R5/lib${kdelibsuff} \ + /usr/local/X11R4/lib${kdelibsuff} \ + \ + /usr/local/lib${kdelibsuff}/X11 \ + /usr/local/lib${kdelibsuff}/X11R6 \ + /usr/local/lib${kdelibsuff}/X11R5 \ + /usr/local/lib${kdelibsuff}/X11R4 \ + \ + /usr/X386/lib${kdelibsuff} \ + /usr/x386/lib${kdelibsuff} \ + /usr/XFree86/lib${kdelibsuff}/X11 \ + \ + /usr/lib${kdelibsuff} \ + /usr/local/lib${kdelibsuff} \ + /usr/unsupported/lib${kdelibsuff} \ + /usr/athena/lib${kdelibsuff} \ + /usr/local/x11r5/lib${kdelibsuff} \ + /usr/lpp/Xamples/lib${kdelibsuff} \ + /lib/usr/lib${kdelibsuff}/X11 \ + \ + /usr/openwin/lib${kdelibsuff} \ + /usr/openwin/share/lib${kdelibsuff} \ + ; \ +do +dnl Don't even attempt the hair of trying to link an X program! + for ac_extension in a so sl; do + if test -r $ac_dir/lib${x_direct_test_library}.$ac_extension; then + ac_x_libraries=$ac_dir + break 2 + fi + done +done]) +fi # $ac_x_libraries = NO +]) + + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_FIND_FILE], +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) + +dnl KDE_FIND_PATH(program-name, variable-name, list-of-dirs, +dnl if-not-found, test-parameter, prepend-path) +dnl +dnl Look for program-name in list-of-dirs+$PATH. +dnl If prepend-path is set, look in $PATH+list-of-dirs instead. +dnl If found, $variable-name is set. If not, if-not-found is evaluated. +dnl test-parameter: if set, the program is executed with this arg, +dnl and only a successful exit code is required. +AC_DEFUN([KDE_FIND_PATH], +[ + AC_MSG_CHECKING([for $1]) + if test -n "$$2"; then + kde_cv_path="$$2"; + else + kde_cache=`echo $1 | sed 'y%./+-%__p_%'` + + AC_CACHE_VAL(kde_cv_path_$kde_cache, + [ + kde_cv_path="NONE" + kde_save_IFS=$IFS + IFS=':' + dirs="" + for dir in $PATH; do + dirs="$dirs $dir" + done + if test -z "$6"; then dnl Append dirs in PATH (default) + dirs="$3 $dirs" + else dnl Prepend dirs in PATH (if 6th arg is set) + dirs="$dirs $3" + fi + IFS=$kde_save_IFS + + for dir in $dirs; do + if test -x "$dir/$1"; then + if test -n "$5" + then + evalstr="$dir/$1 $5 2>&1 " + if eval $evalstr; then + kde_cv_path="$dir/$1" + break + fi + else + kde_cv_path="$dir/$1" + break + fi + fi + done + + eval "kde_cv_path_$kde_cache=$kde_cv_path" + + ]) + + eval "kde_cv_path=\"`echo '$kde_cv_path_'$kde_cache`\"" + + fi + + if test -z "$kde_cv_path" || test "$kde_cv_path" = NONE; then + AC_MSG_RESULT(not found) + $4 + else + AC_MSG_RESULT($kde_cv_path) + $2=$kde_cv_path + + fi +]) + +AC_DEFUN([KDE_MOC_ERROR_MESSAGE], +[ + AC_MSG_ERROR([No Qt meta object compiler (moc) found! +Please check whether you installed Qt correctly. +You need to have a running moc binary. +configure tried to run $ac_cv_path_moc and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable MOC to the right one before running +configure. +]) +]) + +AC_DEFUN([KDE_UIC_ERROR_MESSAGE], +[ + AC_MSG_WARN([No Qt ui compiler (uic) found! +Please check whether you installed Qt correctly. +You need to have a running uic binary. +configure tried to run $ac_cv_path_uic and the test didn't +succeed. If configure shouldn't have tried this one, set +the environment variable UIC to the right one before running +configure. +]) +]) + + +AC_DEFUN([KDE_CHECK_UIC_FLAG], +[ + AC_MSG_CHECKING([whether uic supports -$1 ]) + kde_cache=`echo $1 | sed 'y% .=/+-%____p_%'` + AC_CACHE_VAL(kde_cv_prog_uic_$kde_cache, + [ + cat >conftest.ui < +EOT + ac_uic_testrun="$UIC_PATH -$1 $2 conftest.ui >/dev/null" + if AC_TRY_EVAL(ac_uic_testrun); then + eval "kde_cv_prog_uic_$kde_cache=yes" + else + eval "kde_cv_prog_uic_$kde_cache=no" + fi + rm -f conftest* + ]) + + if eval "test \"`echo '$kde_cv_prog_uic_'$kde_cache`\" = yes"; then + AC_MSG_RESULT([yes]) + : + $3 + else + AC_MSG_RESULT([no]) + : + $4 + fi +]) + + +dnl ------------------------------------------------------------------------ +dnl Find the meta object compiler and the ui compiler in the PATH, +dnl in $QTDIR/bin, and some more usual places +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_PATH_QT_MOC_UIC], +[ + AC_REQUIRE([KDE_CHECK_PERL]) + qt_bindirs="" + for dir in $kde_qt_dirs; do + qt_bindirs="$qt_bindirs $dir/bin $dir/src/moc" + done + qt_bindirs="$qt_bindirs /usr/bin /usr/X11R6/bin /usr/local/qt/bin" + if test ! "$ac_qt_bindir" = "NO"; then + qt_bindirs="$ac_qt_bindir $qt_bindirs" + fi + + KDE_FIND_PATH(moc, MOC, [$qt_bindirs], [KDE_MOC_ERROR_MESSAGE]) + if test -z "$UIC_NOT_NEEDED"; then + KDE_FIND_PATH(uic, UIC_PATH, [$qt_bindirs], [UIC_PATH=""]) + if test -z "$UIC_PATH" ; then + KDE_UIC_ERROR_MESSAGE + exit 1 + else + UIC=$UIC_PATH + + if test $kde_qtver = 3; then + KDE_CHECK_UIC_FLAG(L,[/nonexistent],ac_uic_supports_libpath=yes,ac_uic_supports_libpath=no) + KDE_CHECK_UIC_FLAG(nounload,,ac_uic_supports_nounload=yes,ac_uic_supports_nounload=no) + + if test x$ac_uic_supports_libpath = xyes; then + UIC="$UIC -L \$(kde_widgetdir)" + fi + if test x$ac_uic_supports_nounload = xyes; then + UIC="$UIC -nounload" + fi + fi + fi + else + UIC="echo uic not available: " + fi + + AC_SUBST(MOC) + AC_SUBST(UIC) + + UIC_TR="i18n" + if test $kde_qtver = 3; then + UIC_TR="tr2i18n" + fi + + AC_SUBST(UIC_TR) +]) + +AC_DEFUN([KDE_1_CHECK_PATHS], +[ + KDE_1_CHECK_PATH_HEADERS + + KDE_TEST_RPATH= + + if test -n "$USE_RPATH"; then + + if test -n "$kde_libraries"; then + KDE_TEST_RPATH="-R $kde_libraries" + fi + + if test -n "$qt_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $qt_libraries" + fi + + if test -n "$x_libraries"; then + KDE_TEST_RPATH="$KDE_TEST_RPATH -R $x_libraries" + fi + + KDE_TEST_RPATH="$KDE_TEST_RPATH $KDE_EXTRA_RPATH" + fi + +AC_MSG_CHECKING([for KDE libraries installed]) +ac_link='$LIBTOOL_SHELL --silent --mode=link ${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS $all_libraries conftest.$ac_ext $LIBS -lkdecore $LIBQT $KDE_TEST_RPATH 1>&5' + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + AC_MSG_RESULT(yes) +else + AC_MSG_ERROR([your system fails at linking a small KDE application! +Check, if your compiler is installed correctly and if you have used the +same compiler to compile Qt and kdelibs as you did use now. +For more details about this problem, look at the end of config.log.]) +fi + +if eval `KDEDIR= ./conftest 2>&5`; then + kde_result=done +else + kde_result=problems +fi + +KDEDIR= ./conftest 2> /dev/null >&5 # make an echo for config.log +kde_have_all_paths=yes + +KDE_SET_PATHS($kde_result) + +]) + +AC_DEFUN([KDE_SET_PATHS], +[ + kde_cv_all_paths="kde_have_all_paths=\"yes\" \ + kde_htmldir=\"$kde_htmldir\" \ + kde_appsdir=\"$kde_appsdir\" \ + kde_icondir=\"$kde_icondir\" \ + kde_sounddir=\"$kde_sounddir\" \ + kde_datadir=\"$kde_datadir\" \ + kde_locale=\"$kde_locale\" \ + kde_cgidir=\"$kde_cgidir\" \ + kde_confdir=\"$kde_confdir\" \ + kde_kcfgdir=\"$kde_kcfgdir\" \ + kde_mimedir=\"$kde_mimedir\" \ + kde_toolbardir=\"$kde_toolbardir\" \ + kde_wallpaperdir=\"$kde_wallpaperdir\" \ + kde_templatesdir=\"$kde_templatesdir\" \ + kde_bindir=\"$kde_bindir\" \ + kde_servicesdir=\"$kde_servicesdir\" \ + kde_servicetypesdir=\"$kde_servicetypesdir\" \ + kde_moduledir=\"$kde_moduledir\" \ + kde_styledir=\"$kde_styledir\" \ + kde_widgetdir=\"$kde_widgetdir\" \ + xdg_appsdir=\"$xdg_appsdir\" \ + xdg_menudir=\"$xdg_menudir\" \ + xdg_directorydir=\"$xdg_directorydir\" \ + kde_result=$1" +]) + +AC_DEFUN([KDE_SET_DEFAULT_PATHS], +[ +if test "$1" = "default"; then + + if test -z "$kde_htmldir"; then + kde_htmldir='\${datadir}/doc/HTML' + fi + if test -z "$kde_appsdir"; then + kde_appsdir='\${datadir}/applnk' + fi + if test -z "$kde_icondir"; then + kde_icondir='\${datadir}/icons' + fi + if test -z "$kde_sounddir"; then + kde_sounddir='\${datadir}/sounds' + fi + if test -z "$kde_datadir"; then + kde_datadir='\${datadir}/apps' + fi + if test -z "$kde_locale"; then + kde_locale='\${datadir}/locale' + fi + if test -z "$kde_cgidir"; then + kde_cgidir='\${exec_prefix}/cgi-bin' + fi + if test -z "$kde_confdir"; then + kde_confdir='\${datadir}/config' + fi + if test -z "$kde_kcfgdir"; then + kde_kcfgdir='\${datadir}/config.kcfg' + fi + if test -z "$kde_mimedir"; then + kde_mimedir='\${datadir}/mimelnk' + fi + if test -z "$kde_toolbardir"; then + kde_toolbardir='\${datadir}/toolbar' + fi + if test -z "$kde_wallpaperdir"; then + kde_wallpaperdir='\${datadir}/wallpapers' + fi + if test -z "$kde_templatesdir"; then + kde_templatesdir='\${datadir}/templates' + fi + if test -z "$kde_bindir"; then + kde_bindir='\${exec_prefix}/bin' + fi + if test -z "$kde_servicesdir"; then + kde_servicesdir='\${datadir}/services' + fi + if test -z "$kde_servicetypesdir"; then + kde_servicetypesdir='\${datadir}/servicetypes' + fi + if test -z "$kde_moduledir"; then + if test "$kde_qtver" = "2"; then + kde_moduledir='\${libdir}/kde2' + else + kde_moduledir='\${libdir}/kde3' + fi + fi + if test -z "$kde_styledir"; then + kde_styledir='\${libdir}/kde3/plugins/styles' + fi + if test -z "$kde_widgetdir"; then + kde_widgetdir='\${libdir}/kde3/plugins/designer' + fi + if test -z "$xdg_appsdir"; then + xdg_appsdir='\${datadir}/applications/kde' + fi + if test -z "$xdg_menudir"; then + xdg_menudir='\${sysconfdir}/xdg/menus' + fi + if test -z "$xdg_directorydir"; then + xdg_directorydir='\${datadir}/desktop-directories' + fi + + KDE_SET_PATHS(defaults) + +else + + if test $kde_qtver = 1; then + AC_MSG_RESULT([compiling]) + KDE_1_CHECK_PATHS + else + AC_MSG_ERROR([path checking not yet supported for KDE 2]) + fi + +fi +]) + +AC_DEFUN([KDE_CHECK_PATHS_FOR_COMPLETENESS], +[ if test -z "$kde_htmldir" || test -z "$kde_appsdir" || + test -z "$kde_icondir" || test -z "$kde_sounddir" || + test -z "$kde_datadir" || test -z "$kde_locale" || + test -z "$kde_cgidir" || test -z "$kde_confdir" || + test -z "$kde_kcfgdir" || + test -z "$kde_mimedir" || test -z "$kde_toolbardir" || + test -z "$kde_wallpaperdir" || test -z "$kde_templatesdir" || + test -z "$kde_bindir" || test -z "$kde_servicesdir" || + test -z "$kde_servicetypesdir" || test -z "$kde_moduledir" || + test -z "$kde_styledir" || test -z "kde_widgetdir" || + test -z "$xdg_appsdir" || test -z "$xdg_menudir" || test -z "$xdg_directorydir" || + test "x$kde_have_all_paths" != "xyes"; then + kde_have_all_paths=no + fi +]) + +AC_DEFUN([KDE_MISSING_PROG_ERROR], +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed KDE correctly. +]) +]) + +AC_DEFUN([KDE_MISSING_ARTS_ERROR], +[ + AC_MSG_ERROR([The important program $1 was not found! +Please check whether you installed aRts correctly or use +--without-arts to compile without aRts support (this will remove functionality). +]) +]) + +AC_DEFUN([KDE_SET_DEFAULT_BINDIRS], +[ + kde_default_bindirs="/usr/bin /usr/local/bin /opt/local/bin /usr/X11R6/bin /opt/kde/bin /opt/kde3/bin /usr/kde/bin /usr/local/kde/bin" + test -n "$KDEDIR" && kde_default_bindirs="$KDEDIR/bin $kde_default_bindirs" + if test -n "$KDEDIRS"; then + kde_save_IFS=$IFS + IFS=: + for dir in $KDEDIRS; do + kde_default_bindirs="$dir/bin $kde_default_bindirs " + done + IFS=$kde_save_IFS + fi +]) + +AC_DEFUN([KDE_SUBST_PROGRAMS], +[ + AC_ARG_WITH(arts, + AC_HELP_STRING([--without-arts],[build without aRts [default=no]]), + [build_arts=$withval], + [build_arts=yes] + ) + AM_CONDITIONAL(include_ARTS, test "$build_arts" '!=' "no") + if test "$build_arts" = "no"; then + AC_DEFINE(WITHOUT_ARTS, 1, [Defined if compiling without arts]) + fi + + KDE_SET_DEFAULT_BINDIRS + kde_default_bindirs="$exec_prefix/bin $prefix/bin $kde_libs_prefix/bin $kde_default_bindirs" + KDE_FIND_PATH(dcopidl, DCOPIDL, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl)]) + KDE_FIND_PATH(dcopidl2cpp, DCOPIDL2CPP, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidl2cpp)]) + if test "$build_arts" '!=' "no"; then + KDE_FIND_PATH(mcopidl, MCOPIDL, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(mcopidl)]) + KDE_FIND_PATH(artsc-config, ARTSCCONFIG, [$kde_default_bindirs], [KDE_MISSING_ARTS_ERROR(artsc-config)]) + fi + KDE_FIND_PATH(meinproc, MEINPROC, [$kde_default_bindirs]) + + kde32ornewer=1 + kde33ornewer=1 + if test -n "$kde_qtver" && test "$kde_qtver" -lt 3; then + kde32ornewer= + kde33ornewer= + else + if test "$kde_qtver" = "3"; then + if test "$kde_qtsubver" -le 1; then + kde32ornewer= + fi + if test "$kde_qtsubver" -le 2; then + kde33ornewer= + fi + if test "$KDECONFIG" != "compiled"; then + if test `$KDECONFIG --version | grep KDE | sed 's/KDE: \(...\).*/\1/'` = 3.2; then + kde33ornewer= + fi + fi + fi + fi + + if test -n "$kde32ornewer"; then + KDE_FIND_PATH(kconfig_compiler, KCONFIG_COMPILER, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kconfig_compiler)]) + KDE_FIND_PATH(dcopidlng, DCOPIDLNG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(dcopidlng)]) + fi + if test -n "$kde33ornewer"; then + KDE_FIND_PATH(makekdewidgets, MAKEKDEWIDGETS, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(makekdewidgets)]) + AC_SUBST(MAKEKDEWIDGETS) + fi + KDE_FIND_PATH(xmllint, XMLLINT, [${prefix}/bin ${exec_prefix}/bin], [XMLLINT=""]) + + if test -n "$MEINPROC" -a "$MEINPROC" != "compiled"; then + kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/kde3/share /opt/kde/share $prefix/share" + test -n "$KDEDIR" && kde_sharedirs="$KDEDIR/share $kde_sharedirs" + AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET) + if test "$KDE_XSL_STYLESHEET" = "NO"; then + KDE_XSL_STYLESHEET="" + else + KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl" + fi + fi + + DCOP_DEPENDENCIES='$(DCOPIDL)' + if test -n "$kde32ornewer"; then + KCFG_DEPENDENCIES='$(KCONFIG_COMPILER)' + DCOP_DEPENDENCIES='$(DCOPIDL) $(DCOPIDLNG)' + AC_SUBST(KCONFIG_COMPILER) + AC_SUBST(KCFG_DEPENDENCIES) + AC_SUBST(DCOPIDLNG) + fi + AC_SUBST(DCOPIDL) + AC_SUBST(DCOPIDL2CPP) + AC_SUBST(DCOP_DEPENDENCIES) + AC_SUBST(MCOPIDL) + AC_SUBST(ARTSCCONFIG) + AC_SUBST(MEINPROC) + AC_SUBST(KDE_XSL_STYLESHEET) + AC_SUBST(XMLLINT) +])dnl + +AC_DEFUN([AC_CREATE_KFSSTND], +[ +AC_REQUIRE([AC_CHECK_RPATH]) + +AC_MSG_CHECKING([for KDE paths]) +kde_result="" +kde_cached_paths=yes +AC_CACHE_VAL(kde_cv_all_paths, +[ + KDE_SET_DEFAULT_PATHS($1) + kde_cached_paths=no +]) +eval "$kde_cv_all_paths" +KDE_CHECK_PATHS_FOR_COMPLETENESS +if test "$kde_have_all_paths" = "no" && test "$kde_cached_paths" = "yes"; then + # wrong values were cached, may be, we can set better ones + kde_result= + kde_htmldir= kde_appsdir= kde_icondir= kde_sounddir= + kde_datadir= kde_locale= kde_cgidir= kde_confdir= kde_kcfgdir= + kde_mimedir= kde_toolbardir= kde_wallpaperdir= kde_templatesdir= + kde_bindir= kde_servicesdir= kde_servicetypesdir= kde_moduledir= + kde_have_all_paths= + kde_styledir= + kde_widgetdir= + xdg_appsdir = xdg_menudir= xdg_directorydir= + KDE_SET_DEFAULT_PATHS($1) + eval "$kde_cv_all_paths" + KDE_CHECK_PATHS_FOR_COMPLETENESS + kde_result="$kde_result (cache overridden)" +fi +if test "$kde_have_all_paths" = "no"; then + AC_MSG_ERROR([configure could not run a little KDE program to test the environment. +Since it had compiled and linked before, it must be a strange problem on your system. +Look at config.log for details. If you are not able to fix this, look at +http://www.kde.org/faq/installation.html or any www.kde.org mirror. +(If you're using an egcs version on Linux, you may update binutils!) +]) +else + rm -f conftest* + AC_MSG_RESULT($kde_result) +fi + +bindir=$kde_bindir + +KDE_SUBST_PROGRAMS + +]) + +AC_DEFUN([AC_SUBST_KFSSTND], +[ +AC_SUBST(kde_htmldir) +AC_SUBST(kde_appsdir) +AC_SUBST(kde_icondir) +AC_SUBST(kde_sounddir) +AC_SUBST(kde_datadir) +AC_SUBST(kde_locale) +AC_SUBST(kde_confdir) +AC_SUBST(kde_kcfgdir) +AC_SUBST(kde_mimedir) +AC_SUBST(kde_wallpaperdir) +AC_SUBST(kde_bindir) +dnl X Desktop Group standards +AC_SUBST(xdg_appsdir) +AC_SUBST(xdg_menudir) +AC_SUBST(xdg_directorydir) +dnl for KDE 2 +AC_SUBST(kde_templatesdir) +AC_SUBST(kde_servicesdir) +AC_SUBST(kde_servicetypesdir) +AC_SUBST(kde_moduledir) +AC_SUBST(kdeinitdir, '$(kde_moduledir)') +AC_SUBST(kde_styledir) +AC_SUBST(kde_widgetdir) +if test "$kde_qtver" = 1; then + kde_minidir="$kde_icondir/mini" +else +# for KDE 1 - this breaks KDE2 apps using minidir, but +# that's the plan ;-/ + kde_minidir="/dev/null" +fi +dnl AC_SUBST(kde_minidir) +dnl AC_SUBST(kde_cgidir) +dnl AC_SUBST(kde_toolbardir) +]) + +AC_DEFUN([KDE_MISC_TESTS], +[ + dnl Checks for libraries. + AC_CHECK_LIB(util, main, [LIBUTIL="-lutil"]) dnl for *BSD + AC_SUBST(LIBUTIL) + AC_CHECK_LIB(compat, main, [LIBCOMPAT="-lcompat"]) dnl for *BSD + AC_SUBST(LIBCOMPAT) + kde_have_crypt= + AC_CHECK_LIB(crypt, crypt, [LIBCRYPT="-lcrypt"; kde_have_crypt=yes], + AC_CHECK_LIB(c, crypt, [kde_have_crypt=yes], [ + AC_MSG_WARN([you have no crypt in either libcrypt or libc. +You should install libcrypt from another source or configure with PAM +support]) + kde_have_crypt=no + ])) + AC_SUBST(LIBCRYPT) + if test $kde_have_crypt = yes; then + AC_DEFINE_UNQUOTED(HAVE_CRYPT, 1, [Defines if your system has the crypt function]) + fi + AC_CHECK_SOCKLEN_T + AC_CHECK_LIB(dnet, dnet_ntoa, [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet"]) + if test $ac_cv_lib_dnet_dnet_ntoa = no; then + AC_CHECK_LIB(dnet_stub, dnet_ntoa, + [X_EXTRA_LIBS="$X_EXTRA_LIBS -ldnet_stub"]) + fi + AC_CHECK_FUNC(inet_ntoa) + if test $ac_cv_func_inet_ntoa = no; then + AC_CHECK_LIB(nsl, inet_ntoa, X_EXTRA_LIBS="$X_EXTRA_LIBS -lnsl") + fi + AC_CHECK_FUNC(connect) + if test $ac_cv_func_connect = no; then + AC_CHECK_LIB(socket, connect, X_EXTRA_LIBS="-lsocket $X_EXTRA_LIBS", , + $X_EXTRA_LIBS) + fi + + AC_CHECK_FUNC(remove) + if test $ac_cv_func_remove = no; then + AC_CHECK_LIB(posix, remove, X_EXTRA_LIBS="$X_EXTRA_LIBS -lposix") + fi + + # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. + AC_CHECK_FUNC(shmat, , + AC_CHECK_LIB(ipc, shmat, X_EXTRA_LIBS="$X_EXTRA_LIBS -lipc")) + + # more headers that need to be explicitly included on darwin + AC_CHECK_HEADERS(sys/types.h stdint.h) + + # sys/bitypes.h is needed for uint32_t and friends on Tru64 + AC_CHECK_HEADERS(sys/bitypes.h) + + # darwin requires a poll emulation library + AC_CHECK_LIB(poll, poll, LIB_POLL="-lpoll") + + # for some image handling on Mac OS X + AC_CHECK_HEADERS(Carbon/Carbon.h) + + # CoreAudio framework + AC_CHECK_HEADER(CoreAudio/CoreAudio.h, [ + AC_DEFINE(HAVE_COREAUDIO, 1, [Define if you have the CoreAudio API]) + FRAMEWORK_COREAUDIO="-Wl,-framework,CoreAudio" + ]) + + AC_CHECK_RES_INIT + AC_SUBST(LIB_POLL) + AC_SUBST(FRAMEWORK_COREAUDIO) + LIBSOCKET="$X_EXTRA_LIBS" + AC_SUBST(LIBSOCKET) + AC_SUBST(X_EXTRA_LIBS) + AC_CHECK_LIB(ucb, killpg, [LIBUCB="-lucb"]) dnl for Solaris2.4 + AC_SUBST(LIBUCB) + + case $host in dnl this *is* LynxOS specific + *-*-lynxos* ) + AC_MSG_CHECKING([LynxOS header file wrappers]) + [CFLAGS="$CFLAGS -D__NO_INCLUDE_WARN__"] + AC_MSG_RESULT(disabled) + AC_CHECK_LIB(bsd, gethostbyname, [LIBSOCKET="-lbsd"]) dnl for LynxOS + ;; + esac + + KDE_CHECK_TYPES + KDE_CHECK_LIBDL + KDE_CHECK_STRLCPY + KDE_CHECK_PIE_SUPPORT + +# darwin needs this to initialize the environment +AC_CHECK_HEADERS(crt_externs.h) +AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) + +AH_VERBATIM(_DARWIN_ENVIRON, +[ +#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) +# include +# include +# define environ (*_NSGetEnviron()) +#endif +]) + +AH_VERBATIM(_AIX_STRINGS_H_BZERO, +[ +/* + * AIX defines FD_SET in terms of bzero, but fails to include + * that defines bzero. + */ + +#if defined(_AIX) +#include +#endif +]) + +AC_CHECK_FUNCS([vsnprintf snprintf]) + +AH_VERBATIM(_TRU64,[ +/* + * On HP-UX, the declaration of vsnprintf() is needed every time ! + */ + +#if !defined(HAVE_VSNPRINTF) || defined(hpux) +#if __STDC__ +#include +#include +#else +#include +#endif +#ifdef __cplusplus +extern "C" +#endif +int vsnprintf(char *str, size_t n, char const *fmt, va_list ap); +#ifdef __cplusplus +extern "C" +#endif +int snprintf(char *str, size_t n, char const *fmt, ...); +#endif +]) + +]) + +dnl ------------------------------------------------------------------------ +dnl Find the header files and libraries for X-Windows. Extended the +dnl macro AC_PATH_X +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([K_PATH_X], +[ +AC_REQUIRE([KDE_MISC_TESTS])dnl +AC_REQUIRE([KDE_CHECK_LIB64]) + +AC_ARG_ENABLE( + embedded, + AC_HELP_STRING([--enable-embedded],[link to Qt-embedded, don't use X]), + kde_use_qt_emb=$enableval, + kde_use_qt_emb=no +) + +AC_ARG_ENABLE( + qtopia, + AC_HELP_STRING([--enable-qtopia],[link to Qt-embedded, link to the Qtopia Environment]), + kde_use_qt_emb_palm=$enableval, + kde_use_qt_emb_palm=no +) + +AC_ARG_ENABLE( + mac, + AC_HELP_STRING([--enable-mac],[link to Qt/Mac (don't use X)]), + kde_use_qt_mac=$enableval, + kde_use_qt_mac=no +) + +# used to disable x11-specific stuff on special platforms +AM_CONDITIONAL(include_x11, test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no") + +if test "$kde_use_qt_emb" = "no" && test "$kde_use_qt_mac" = "no"; then + +AC_MSG_CHECKING(for X) + +AC_CACHE_VAL(kde_cv_have_x, +[# One or both of the vars are not set, and there is no cached value. +if test "{$x_includes+set}" = set || test "$x_includes" = NONE; then + kde_x_includes=NO +else + kde_x_includes=$x_includes +fi +if test "{$x_libraries+set}" = set || test "$x_libraries" = NONE; then + kde_x_libraries=NO +else + kde_x_libraries=$x_libraries +fi + +# below we use the standard autoconf calls +ac_x_libraries=$kde_x_libraries +ac_x_includes=$kde_x_includes + +KDE_PATH_X_DIRECT +dnl AC_PATH_X_XMKMF picks /usr/lib as the path for the X libraries. +dnl Unfortunately, if compiling with the N32 ABI, this is not the correct +dnl location. The correct location is /usr/lib32 or an undefined value +dnl (the linker is smart enough to pick the correct default library). +dnl Things work just fine if you use just AC_PATH_X_DIRECT. +dnl Solaris has a similar problem. AC_PATH_X_XMKMF forces x_includes to +dnl /usr/openwin/include, which doesn't work. /usr/include does work, so +dnl x_includes should be left alone. +case "$host" in +mips-sgi-irix6*) + ;; +*-*-solaris*) + ;; +*) + _AC_PATH_X_XMKMF + if test -z "$ac_x_includes"; then + ac_x_includes="." + fi + if test -z "$ac_x_libraries"; then + ac_x_libraries="/usr/lib${kdelibsuff}" + fi +esac +#from now on we use our own again + +# when the user already gave --x-includes, we ignore +# what the standard autoconf macros told us. +if test "$kde_x_includes" = NO; then + kde_x_includes=$ac_x_includes +fi + +# for --x-libraries too +if test "$kde_x_libraries" = NO; then + kde_x_libraries=$ac_x_libraries +fi + +if test "$kde_x_includes" = NO; then + AC_MSG_ERROR([Can't find X includes. Please check your installation and add the correct paths!]) +fi + +if test "$kde_x_libraries" = NO; then + AC_MSG_ERROR([Can't find X libraries. Please check your installation and add the correct paths!]) +fi + +# Record where we found X for the cache. +kde_cv_have_x="have_x=yes \ + kde_x_includes=$kde_x_includes kde_x_libraries=$kde_x_libraries" +])dnl + +eval "$kde_cv_have_x" + +if test "$have_x" != yes; then + AC_MSG_RESULT($have_x) + no_x=yes +else + AC_MSG_RESULT([libraries $kde_x_libraries, headers $kde_x_includes]) +fi + +if test -z "$kde_x_includes" || test "x$kde_x_includes" = xNONE; then + X_INCLUDES="" + x_includes="."; dnl better than nothing :- + else + x_includes=$kde_x_includes + X_INCLUDES="-I$x_includes" +fi + +if test -z "$kde_x_libraries" || test "x$kde_x_libraries" = xNONE; then + X_LDFLAGS="" + x_libraries="/usr/lib"; dnl better than nothing :- + else + x_libraries=$kde_x_libraries + X_LDFLAGS="-L$x_libraries" +fi +all_includes="$X_INCLUDES" +all_libraries="$X_LDFLAGS $LDFLAGS_AS_NEEDED $LDFLAGS_NEW_DTAGS" + +# Check for libraries that X11R6 Xt/Xaw programs need. +ac_save_LDFLAGS="$LDFLAGS" +LDFLAGS="$LDFLAGS $X_LDFLAGS" +# SM needs ICE to (dynamically) link under SunOS 4.x (so we have to +# check for ICE first), but we must link in the order -lSM -lICE or +# we get undefined symbols. So assume we have SM if we have ICE. +# These have to be linked with before -lX11, unlike the other +# libraries we check for below, so use a different variable. +# --interran@uluru.Stanford.EDU, kb@cs.umb.edu. +AC_CHECK_LIB(ICE, IceConnectionNumber, + [LIBSM="-lSM -lICE"], , $X_EXTRA_LIBS) +LDFLAGS="$ac_save_LDFLAGS" + +LIB_X11='-lX11 $(LIBSOCKET)' + +AC_MSG_CHECKING(for libXext) +AC_CACHE_VAL(kde_cv_have_libXext, +[ +kde_ldflags_safe="$LDFLAGS" +kde_libs_safe="$LIBS" + +LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS" +LIBS="-lXext -lX11 $LIBSOCKET" + +AC_TRY_LINK([ +#include +#ifdef STDC_HEADERS +# include +#endif +], +[ +printf("hello Xext\n"); +], +kde_cv_have_libXext=yes, +kde_cv_have_libXext=no +) + +LDFLAGS=$kde_ldflags_safe +LIBS=$kde_libs_safe +]) + +AC_MSG_RESULT($kde_cv_have_libXext) + +if test "$kde_cv_have_libXext" = "no"; then + AC_MSG_ERROR([We need a working libXext to proceed. Since configure +can't find it itself, we stop here assuming that make wouldn't find +them either.]) +fi + +LIB_XEXT="-lXext" +QTE_NORTTI="" + +elif test "$kde_use_qt_emb" = "yes"; then + dnl We're using QT Embedded + CPPFLAGS=-DQWS + CXXFLAGS="$CXXFLAGS -fno-rtti" + QTE_NORTTI="-fno-rtti -DQWS" + X_PRE_LIBS="" + LIB_X11="" + LIB_XEXT="" + LIB_XRENDER="" + LIBSM="" + X_INCLUDES="" + X_LDFLAGS="" + x_includes="" + x_libraries="" +elif test "$kde_use_qt_mac" = "yes"; then + dnl We're using QT/Mac (I use QT_MAC so that qglobal.h doesn't *have* to + dnl be included to get the information) --Sam + CXXFLAGS="$CXXFLAGS -DQT_MAC -no-cpp-precomp" + CFLAGS="$CFLAGS -DQT_MAC -no-cpp-precomp" + X_PRE_LIBS="" + LIB_X11="" + LIB_XEXT="" + LIB_XRENDER="" + LIBSM="" + X_INCLUDES="" + X_LDFLAGS="" + x_includes="" + x_libraries="" +fi +AC_SUBST(X_PRE_LIBS) +AC_SUBST(LIB_X11) +AC_SUBST(LIB_XRENDER) +AC_SUBST(LIBSM) +AC_SUBST(X_INCLUDES) +AC_SUBST(X_LDFLAGS) +AC_SUBST(x_includes) +AC_SUBST(x_libraries) +AC_SUBST(QTE_NORTTI) +AC_SUBST(LIB_XEXT) + +]) + +AC_DEFUN([KDE_PRINT_QT_PROGRAM], +[ +AC_REQUIRE([KDE_USE_QT]) +cat > conftest.$ac_ext < +#include +EOF +if test "$kde_qtver" = "2"; then +cat >> conftest.$ac_ext < +#include +#include +EOF + +if test $kde_qtsubver -gt 0; then +cat >> conftest.$ac_ext <> conftest.$ac_ext < +#include +#include +EOF +fi + +echo "#if ! ($kde_qt_verstring)" >> conftest.$ac_ext +cat >> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <> conftest.$ac_ext <&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +if test "$kde_cv_qt_direct" = "yes"; then + AC_MSG_RESULT(yes) + $1 +else + AC_MSG_RESULT(no) + $2 +fi +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the Qt headers and libraries. +dnl $(QT_LDFLAGS) will be -Lqtliblocation (if needed) +dnl and $(QT_INCLUDES) will be -Iqthdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_PATH_QT_1_3], +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([KDE_USE_QT]) +AC_REQUIRE([KDE_CHECK_LIB64]) + +dnl ------------------------------------------------------------------------ +dnl Add configure flag to enable linking to MT version of Qt library. +dnl ------------------------------------------------------------------------ + +AC_ARG_ENABLE( + mt, + AC_HELP_STRING([--disable-mt],[link to non-threaded Qt (deprecated)]), + kde_use_qt_mt=$enableval, + [ + if test $kde_qtver = 3; then + kde_use_qt_mt=yes + else + kde_use_qt_mt=no + fi + ] +) + +USING_QT_MT="" + +dnl ------------------------------------------------------------------------ +dnl If we not get --disable-qt-mt then adjust some vars for the host. +dnl ------------------------------------------------------------------------ + +KDE_MT_LDFLAGS= +KDE_MT_LIBS= +if test "x$kde_use_qt_mt" = "xyes"; then + KDE_CHECK_THREADING + if test "x$kde_use_threading" = "xyes"; then + CPPFLAGS="$USE_THREADS -DQT_THREAD_SUPPORT $CPPFLAGS" + KDE_MT_LDFLAGS="$USE_THREADS" + KDE_MT_LIBS="$LIBPTHREAD" + else + kde_use_qt_mt=no + fi +fi +AC_SUBST(KDE_MT_LDFLAGS) +AC_SUBST(KDE_MT_LIBS) + +kde_qt_was_given=yes + +dnl ------------------------------------------------------------------------ +dnl If we haven't been told how to link to Qt, we work it out for ourselves. +dnl ------------------------------------------------------------------------ +if test -z "$LIBQT_GLOB"; then + if test "x$kde_use_qt_emb" = "xyes"; then + LIBQT_GLOB="libqte.*" + else + LIBQT_GLOB="libqt.*" + fi +fi + +dnl ------------------------------------------------------------ +dnl If we got --enable-embedded then adjust the Qt library name. +dnl ------------------------------------------------------------ +if test "x$kde_use_qt_emb" = "xyes"; then + qtlib="qte" +else + qtlib="qt" +fi + +kde_int_qt="-l$qtlib" + +if test -z "$LIBQPE"; then +dnl ------------------------------------------------------------ +dnl If we got --enable-palmtop then add -lqpe to the link line +dnl ------------------------------------------------------------ + if test "x$kde_use_qt_emb" = "xyes"; then + if test "x$kde_use_qt_emb_palm" = "xyes"; then + LIB_QPE="-lqpe" + else + LIB_QPE="" + fi + else + LIB_QPE="" + fi +fi + +dnl ------------------------------------------------------------------------ +dnl If we got --enable-qt-mt then adjust the Qt library name for the host. +dnl ------------------------------------------------------------------------ + +if test "x$kde_use_qt_mt" = "xyes"; then + LIBQT="-l$qtlib-mt" + kde_int_qt="-l$qtlib-mt" + LIBQT_GLOB="lib$qtlib-mt.*" + USING_QT_MT="using -mt" +else + LIBQT="-l$qtlib" +fi + +if test $kde_qtver != 1; then + + AC_REQUIRE([AC_FIND_PNG]) + AC_REQUIRE([AC_FIND_JPEG]) + LIBQT="$LIBQT $LIBPNG $LIBJPEG" +fi + +if test $kde_qtver = 3; then + AC_REQUIRE([KDE_CHECK_LIBDL]) + LIBQT="$LIBQT $LIBDL" +fi + +AC_MSG_CHECKING([for Qt]) + +if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then +LIBQT="$LIBQT $X_PRE_LIBS -lXext -lX11 $LIBSM $LIBSOCKET" +fi +ac_qt_includes=NO ac_qt_libraries=NO ac_qt_bindir=NO +qt_libraries="" +qt_includes="" +AC_ARG_WITH(qt-dir, + AC_HELP_STRING([--with-qt-dir=DIR],[where the root of Qt is installed ]), + [ ac_qt_includes="$withval"/include + ac_qt_libraries="$withval"/lib${kdelibsuff} + ac_qt_bindir="$withval"/bin + ]) + +AC_ARG_WITH(qt-includes, + AC_HELP_STRING([--with-qt-includes=DIR],[where the Qt includes are. ]), + [ + ac_qt_includes="$withval" + ]) + +kde_qt_libs_given=no + +AC_ARG_WITH(qt-libraries, + AC_HELP_STRING([--with-qt-libraries=DIR],[where the Qt library is installed.]), + [ ac_qt_libraries="$withval" + kde_qt_libs_given=yes + ]) + +AC_CACHE_VAL(ac_cv_have_qt, +[#try to guess Qt locations + +qt_incdirs="" +for dir in $kde_qt_dirs; do + qt_incdirs="$qt_incdirs $dir/include $dir" +done +qt_incdirs="$QTINC $qt_incdirs /usr/local/qt/include /usr/include/qt /usr/include /usr/X11R6/include/X11/qt /usr/X11R6/include/qt /usr/X11R6/include/qt2 /usr/include/qt3 $x_includes" +if test ! "$ac_qt_includes" = "NO"; then + qt_incdirs="$ac_qt_includes $qt_incdirs" +fi + +if test "$kde_qtver" != "1"; then + kde_qt_header=qstyle.h +else + kde_qt_header=qglobal.h +fi + +AC_FIND_FILE($kde_qt_header, $qt_incdirs, qt_incdir) +ac_qt_includes="$qt_incdir" + +qt_libdirs="" +for dir in $kde_qt_dirs; do + qt_libdirs="$qt_libdirs $dir/lib${kdelibsuff} $dir" +done +qt_libdirs="$QTLIB $qt_libdirs /usr/X11R6/lib /usr/lib /usr/local/qt/lib $x_libraries" +if test ! "$ac_qt_libraries" = "NO"; then + qt_libdir=$ac_qt_libraries +else + qt_libdirs="$ac_qt_libraries $qt_libdirs" + # if the Qt was given, the chance is too big that libqt.* doesn't exist + qt_libdir=NONE + for dir in $qt_libdirs; do + try="ls -1 $dir/${LIBQT_GLOB}" + if test -n "`$try 2> /dev/null`"; then qt_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done +fi +for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do + if test -e "$a"; then + LIBQT="$LIBQT ${kde_int_qt}_incremental" + break + fi +done + +ac_qt_libraries="$qt_libdir" + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +LDFLAGS="$LDFLAGS -L$qt_libdir $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" +LIBS="$LIBS $LIBQT $KDE_MT_LIBS" + +KDE_PRINT_QT_PROGRAM + +if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC + ac_qt_libraries="NO" +fi +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +AC_LANG_RESTORE +if test "$ac_qt_includes" = NO || test "$ac_qt_libraries" = NO; then + ac_cv_have_qt="have_qt=no" + ac_qt_notfound="" + missing_qt_mt="" + if test "$ac_qt_includes" = NO; then + if test "$ac_qt_libraries" = NO; then + ac_qt_notfound="(headers and libraries)"; + else + ac_qt_notfound="(headers)"; + fi + else + if test "x$kde_use_qt_mt" = "xyes"; then + missing_qt_mt=" +Make sure that you have compiled Qt with thread support!" + ac_qt_notfound="(library $qtlib-mt)"; + else + ac_qt_notfound="(library $qtlib)"; + fi + fi + + AC_MSG_ERROR([Qt ($kde_qt_minversion) $ac_qt_notfound not found. Please check your installation! +For more details about this problem, look at the end of config.log.$missing_qt_mt]) +else + have_qt="yes" +fi +]) + +eval "$ac_cv_have_qt" + +if test "$have_qt" != yes; then + AC_MSG_RESULT([$have_qt]); +else + ac_cv_have_qt="have_qt=yes \ + ac_qt_includes=$ac_qt_includes ac_qt_libraries=$ac_qt_libraries" + AC_MSG_RESULT([libraries $ac_qt_libraries, headers $ac_qt_includes $USING_QT_MT]) + + qt_libraries="$ac_qt_libraries" + qt_includes="$ac_qt_includes" +fi + +if test ! "$kde_qt_libs_given" = "yes" && test ! "$kde_qtver" = 3; then + KDE_CHECK_QT_DIRECT(qt_libraries= ,[]) +fi + +AC_SUBST(qt_libraries) +AC_SUBST(qt_includes) + +if test "$qt_includes" = "$x_includes" || test -z "$qt_includes"; then + QT_INCLUDES="" +else + QT_INCLUDES="-I$qt_includes" + all_includes="$QT_INCLUDES $all_includes" +fi + +if test "$qt_libraries" = "$x_libraries" || test -z "$qt_libraries"; then + QT_LDFLAGS="" +else + QT_LDFLAGS="-L$qt_libraries" + all_libraries="$QT_LDFLAGS $all_libraries" +fi +test -z "$KDE_MT_LDFLAGS" || all_libraries="$all_libraries $KDE_MT_LDFLAGS" + +AC_SUBST(QT_INCLUDES) +AC_SUBST(QT_LDFLAGS) +AC_PATH_QT_MOC_UIC + +KDE_CHECK_QT_JPEG + +if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then +LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG) -lXext $(LIB_X11) $(LIBSM)' +else +LIB_QT="$kde_int_qt $LIBJPEG_QT "'$(LIBZ) $(LIBPNG)' +fi +test -z "$KDE_MT_LIBS" || LIB_QT="$LIB_QT $KDE_MT_LIBS" +for a in $qt_libdir/lib`echo ${kde_int_qt} | sed 's,^-l,,'`_incremental.*; do + if test -e "$a"; then + LIB_QT="$LIB_QT ${kde_int_qt}_incremental" + break + fi +done + +AC_SUBST(LIB_QT) +AC_SUBST(LIB_QPE) + +AC_SUBST(kde_qtver) +]) + +AC_DEFUN([AC_PATH_QT], +[ +AC_PATH_QT_1_3 +]) + +AC_DEFUN([KDE_CHECK_UIC_PLUGINS], +[ +AC_REQUIRE([AC_PATH_QT_MOC_UIC]) + +if test x$ac_uic_supports_libpath = xyes; then + +AC_MSG_CHECKING([if UIC has KDE plugins available]) +AC_CACHE_VAL(kde_cv_uic_plugins, +[ +cat > actest.ui << EOF + +NewConnectionDialog + + + + testInput + + + + +EOF + + + +kde_cv_uic_plugins=no +kde_line="$UIC_PATH -L $kde_widgetdir" +if test x$ac_uic_supports_nounload = xyes; then + kde_line="$kde_line -nounload" +fi +kde_line="$kde_line -impl actest.h actest.ui > actest.cpp" +if AC_TRY_EVAL(kde_line); then + # if you're trying to debug this check and think it's incorrect, + # better check your installation. The check _is_ correct - your + # installation is not. + if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then + kde_cv_uic_plugins=yes + fi +fi +rm -f actest.ui actest.cpp +]) + +AC_MSG_RESULT([$kde_cv_uic_plugins]) +if test "$kde_cv_uic_plugins" != yes; then + AC_MSG_ERROR([ +you need to install kdelibs first. + +If you did install kdelibs, then the Qt version that is picked up by +this configure is not the same version you used to compile kdelibs. +The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the +_same Qt version_, compiled with the _same compiler_ and the same Qt +configuration settings. +]) +fi +fi +]) + +AC_DEFUN([KDE_CHECK_FINAL], +[ + AC_ARG_ENABLE(final, + AC_HELP_STRING([--enable-final], + [build size optimized apps (experimental - needs lots of memory)]), + kde_use_final=$enableval, kde_use_final=no) + + if test "x$kde_use_final" = "xyes"; then + KDE_USE_FINAL_TRUE="" + KDE_USE_FINAL_FALSE="#" + else + KDE_USE_FINAL_TRUE="#" + KDE_USE_FINAL_FALSE="" + fi + AC_SUBST(KDE_USE_FINAL_TRUE) + AC_SUBST(KDE_USE_FINAL_FALSE) +]) + +AC_DEFUN([KDE_CHECK_CLOSURE], +[ + AC_ARG_ENABLE(closure, + AC_HELP_STRING([--enable-closure],[delay template instantiation]), + kde_use_closure=$enableval, kde_use_closure=no) + + KDE_NO_UNDEFINED="" + if test "x$kde_use_closure" = "xyes"; then + KDE_USE_CLOSURE_TRUE="" + KDE_USE_CLOSURE_FALSE="#" +# CXXFLAGS="$CXXFLAGS $REPO" + else + KDE_USE_CLOSURE_TRUE="#" + KDE_USE_CLOSURE_FALSE="" + KDE_NO_UNDEFINED="" + case $host in + *-*-linux-gnu) + KDE_CHECK_COMPILER_FLAG([Wl,--no-undefined], + [KDE_CHECK_COMPILER_FLAG([Wl,--allow-shlib-undefined], + [KDE_NO_UNDEFINED="-Wl,--no-undefined -Wl,--allow-shlib-undefined"], + [KDE_NO_UNDEFINED=""])], + [KDE_NO_UNDEFINED=""]) + ;; + esac + fi + AC_SUBST(KDE_USE_CLOSURE_TRUE) + AC_SUBST(KDE_USE_CLOSURE_FALSE) + AC_SUBST(KDE_NO_UNDEFINED) +]) + +dnl Check if the linker supports --enable-new-dtags and --as-needed +AC_DEFUN([KDE_CHECK_NEW_LDFLAGS], +[ + AC_ARG_ENABLE(new_ldflags, + AC_HELP_STRING([--enable-new-ldflags], + [enable the new linker flags]), + kde_use_new_ldflags=$enableval, + kde_use_new_ldflags=no) + + LDFLAGS_AS_NEEDED="" + LDFLAGS_NEW_DTAGS="" + if test "x$kde_use_new_ldflags" = "xyes"; then + LDFLAGS_NEW_DTAGS="" + KDE_CHECK_COMPILER_FLAG([Wl,--enable-new-dtags], + [LDFLAGS_NEW_DTAGS="-Wl,--enable-new-dtags"],) + + KDE_CHECK_COMPILER_FLAG([Wl,--as-needed], + [LDFLAGS_AS_NEEDED="-Wl,--as-needed"],) + fi + AC_SUBST(LDFLAGS_AS_NEEDED) + AC_SUBST(LDFLAGS_NEW_DTAGS) +]) + +AC_DEFUN([KDE_CHECK_NMCHECK], +[ + AC_ARG_ENABLE(nmcheck,AC_HELP_STRING([--enable-nmcheck],[enable automatic namespace cleanness check]), + kde_use_nmcheck=$enableval, kde_use_nmcheck=no) + + if test "$kde_use_nmcheck" = "yes"; then + KDE_USE_NMCHECK_TRUE="" + KDE_USE_NMCHECK_FALSE="#" + else + KDE_USE_NMCHECK_TRUE="#" + KDE_USE_NMCHECK_FALSE="" + fi + AC_SUBST(KDE_USE_NMCHECK_TRUE) + AC_SUBST(KDE_USE_NMCHECK_FALSE) +]) + +AC_DEFUN([KDE_EXPAND_MAKEVAR], [ +savex=$exec_prefix +test "x$exec_prefix" = xNONE && exec_prefix=$prefix +tmp=$$2 +while $1=`eval echo "$tmp"`; test "x$$1" != "x$tmp"; do tmp=$$1; done +exec_prefix=$savex +]) + +dnl ------------------------------------------------------------------------ +dnl Now, the same with KDE +dnl $(KDE_LDFLAGS) will be the kdeliblocation (if needed) +dnl and $(kde_includes) will be the kdehdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_BASE_PATH_KDE], +[ +AC_REQUIRE([KDE_CHECK_STL]) +AC_REQUIRE([AC_PATH_QT])dnl +AC_REQUIRE([KDE_CHECK_LIB64]) + +AC_CHECK_RPATH +AC_MSG_CHECKING([for KDE]) + +if test "${prefix}" != NONE; then + kde_includes=${includedir} + KDE_EXPAND_MAKEVAR(ac_kde_includes, includedir) + + kde_libraries=${libdir} + KDE_EXPAND_MAKEVAR(ac_kde_libraries, libdir) + +else + ac_kde_includes= + ac_kde_libraries= + kde_libraries="" + kde_includes="" +fi + +AC_CACHE_VAL(ac_cv_have_kde, +[#try to guess kde locations + +if test "$kde_qtver" = 1; then + kde_check_header="ksock.h" + kde_check_lib="libkdecore.la" +else + kde_check_header="ksharedptr.h" + kde_check_lib="libkio.la" +fi + +if test -z "$1"; then + +kde_incdirs="$kde_libs_prefix/include /usr/lib/kde/include /usr/local/kde/include /usr/local/include /usr/kde/include /usr/include/kde /usr/include /opt/kde3/include /opt/kde/include $x_includes $qt_includes" +test -n "$KDEDIR" && kde_incdirs="$KDEDIR/include $KDEDIR/include/kde $KDEDIR $kde_incdirs" +kde_incdirs="$ac_kde_includes $kde_incdirs" +AC_FIND_FILE($kde_check_header, $kde_incdirs, kde_incdir) +ac_kde_includes="$kde_incdir" + +if test -n "$ac_kde_includes" && test ! -r "$ac_kde_includes/$kde_check_header"; then + AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE headers installed. This will fail. +So, check this please and use another prefix!]) +fi + +kde_libdirs="$kde_libs_prefix/lib${kdelibsuff} /usr/lib/kde/lib${kdelibsuff} /usr/local/kde/lib${kdelibsuff} /usr/kde/lib${kdelibsuff} /usr/lib${kdelibsuff}/kde /usr/lib${kdelibsuff}/kde3 /usr/lib${kdelibsuff} /usr/X11R6/lib${kdelibsuff} /usr/local/lib${kdelibsuff} /opt/kde3/lib${kdelibsuff} /opt/kde/lib${kdelibsuff} /usr/X11R6/kde/lib${kdelibsuff}" +test -n "$KDEDIR" && kde_libdirs="$KDEDIR/lib${kdelibsuff} $KDEDIR $kde_libdirs" +kde_libdirs="$ac_kde_libraries $libdir $kde_libdirs" +AC_FIND_FILE($kde_check_lib, $kde_libdirs, kde_libdir) +ac_kde_libraries="$kde_libdir" + +kde_widgetdir=NO +dnl this might be somewhere else +AC_FIND_FILE("kde3/plugins/designer/kdewidgets.la", $kde_libdirs, kde_widgetdir) + +if test -n "$ac_kde_libraries" && test ! -r "$ac_kde_libraries/$kde_check_lib"; then +AC_MSG_ERROR([ +in the prefix, you've chosen, are no KDE libraries installed. This will fail. +So, check this please and use another prefix!]) +fi + +if test -n "$kde_widgetdir" && test ! -r "$kde_widgetdir/kde3/plugins/designer/kdewidgets.la"; then +AC_MSG_ERROR([ +I can't find the designer plugins. These are required and should have been installed +by kdelibs]) +fi + +if test -n "$kde_widgetdir"; then + kde_widgetdir="$kde_widgetdir/kde3/plugins/designer" +fi + + +if test "$ac_kde_includes" = NO || test "$ac_kde_libraries" = NO || test "$kde_widgetdir" = NO; then + ac_cv_have_kde="have_kde=no" +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" +fi + +else dnl test -z $1, e.g. from kdelibs + + ac_cv_have_kde="have_kde=no" + +fi +])dnl + +eval "$ac_cv_have_kde" + +if test "$have_kde" != "yes"; then + if test "${prefix}" = NONE; then + ac_kde_prefix="$ac_default_prefix" + else + ac_kde_prefix="$prefix" + fi + if test "$exec_prefix" = NONE; then + ac_kde_exec_prefix="$ac_kde_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix]) + else + ac_kde_exec_prefix="$exec_prefix" + AC_MSG_RESULT([will be installed in $ac_kde_prefix and $ac_kde_exec_prefix]) + fi + + kde_libraries="${libdir}" + kde_includes="${includedir}" + +else + ac_cv_have_kde="have_kde=yes \ + ac_kde_includes=$ac_kde_includes ac_kde_libraries=$ac_kde_libraries" + AC_MSG_RESULT([libraries $ac_kde_libraries, headers $ac_kde_includes]) + + kde_libraries="$ac_kde_libraries" + kde_includes="$ac_kde_includes" +fi +AC_SUBST(kde_libraries) +AC_SUBST(kde_includes) + +if test "$kde_includes" = "$x_includes" || test "$kde_includes" = "$qt_includes" || test "$kde_includes" = "/usr/include"; then + KDE_INCLUDES="" +else + KDE_INCLUDES="-I$kde_includes" + all_includes="$KDE_INCLUDES $all_includes" +fi + +KDE_DEFAULT_CXXFLAGS="-DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION" + +KDE_LDFLAGS="-L$kde_libraries" +if test ! "$kde_libraries" = "$x_libraries" && test ! "$kde_libraries" = "$qt_libraries" ; then + all_libraries="$KDE_LDFLAGS $all_libraries" +fi + +AC_SUBST(KDE_LDFLAGS) +AC_SUBST(KDE_INCLUDES) + +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +all_libraries="$all_libraries $USER_LDFLAGS" +all_includes="$all_includes $USER_INCLUDES" +AC_SUBST(all_includes) +AC_SUBST(all_libraries) + +if test -z "$1"; then +KDE_CHECK_UIC_PLUGINS +fi + +ac_kde_libraries="$kde_libdir" + +AC_SUBST(AUTODIRS) + + +]) + +AC_DEFUN([KDE_CHECK_EXTRA_LIBS], +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes,AC_HELP_STRING([--with-extra-includes=DIR],[adds non standard include paths]), + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs,AC_HELP_STRING([--with-extra-libs=DIR],[adds non standard library paths]), + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +AC_DEFUN([KDE_1_CHECK_PATH_HEADERS], +[ + AC_MSG_CHECKING([for KDE headers installed]) + AC_LANG_SAVE + AC_LANG_CPLUSPLUS +cat > conftest.$ac_ext < +#endif +#include +#include "confdefs.h" +#include + +int main() { + printf("kde_htmldir=\\"%s\\"\n", KApplication::kde_htmldir().data()); + printf("kde_appsdir=\\"%s\\"\n", KApplication::kde_appsdir().data()); + printf("kde_icondir=\\"%s\\"\n", KApplication::kde_icondir().data()); + printf("kde_sounddir=\\"%s\\"\n", KApplication::kde_sounddir().data()); + printf("kde_datadir=\\"%s\\"\n", KApplication::kde_datadir().data()); + printf("kde_locale=\\"%s\\"\n", KApplication::kde_localedir().data()); + printf("kde_cgidir=\\"%s\\"\n", KApplication::kde_cgidir().data()); + printf("kde_confdir=\\"%s\\"\n", KApplication::kde_configdir().data()); + printf("kde_mimedir=\\"%s\\"\n", KApplication::kde_mimedir().data()); + printf("kde_toolbardir=\\"%s\\"\n", KApplication::kde_toolbardir().data()); + printf("kde_wallpaperdir=\\"%s\\"\n", + KApplication::kde_wallpaperdir().data()); + printf("kde_bindir=\\"%s\\"\n", KApplication::kde_bindir().data()); + printf("kde_partsdir=\\"%s\\"\n", KApplication::kde_partsdir().data()); + printf("kde_servicesdir=\\"/tmp/dummy\\"\n"); + printf("kde_servicetypesdir=\\"/tmp/dummy\\"\n"); + printf("kde_moduledir=\\"/tmp/dummy\\"\n"); + printf("kde_styledir=\\"/tmp/dummy\\"\n"); + printf("kde_widgetdir=\\"/tmp/dummy\\"\n"); + printf("xdg_appsdir=\\"/tmp/dummy\\"\n"); + printf("xdg_menudir=\\"/tmp/dummy\\"\n"); + printf("xdg_directorydir=\\"/tmp/dummy\\"\n"); + printf("kde_kcfgdir=\\"/tmp/dummy\\"\n"); + return 0; + } +EOF + + ac_save_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$all_includes $CPPFLAGS" + if AC_TRY_EVAL(ac_compile); then + AC_MSG_RESULT(yes) + else + AC_MSG_ERROR([your system is not able to compile a small KDE application! +Check, if you installed the KDE header files correctly. +For more details about this problem, look at the end of config.log.]) + fi + CPPFLAGS=$ac_save_CPPFLAGS + + AC_LANG_RESTORE +]) + +AC_DEFUN([KDE_CHECK_KDEQTADDON], +[ +AC_MSG_CHECKING(for kde-qt-addon) +AC_CACHE_VAL(kde_cv_have_kdeqtaddon, +[ + kde_ldflags_safe="$LDFLAGS" + kde_libs_safe="$LIBS" + kde_cxxflags_safe="$CXXFLAGS" + + LIBS="-lkde-qt-addon $LIBQT $LIBS" + CXXFLAGS="$CXXFLAGS -I$prefix/include -I$prefix/include/kde $all_includes" + LDFLAGS="$LDFLAGS $all_libraries $USER_LDFLAGS" + + AC_TRY_LINK([ + #include + ], + [ + QDomDocument doc; + ], + kde_cv_have_kdeqtaddon=yes, + kde_cv_have_kdeqtaddon=no + ) + + LDFLAGS=$kde_ldflags_safe + LIBS=$kde_libs_safe + CXXFLAGS=$kde_cxxflags_safe +]) + +AC_MSG_RESULT($kde_cv_have_kdeqtaddon) + +if test "$kde_cv_have_kdeqtaddon" = "no"; then + AC_MSG_ERROR([Can't find libkde-qt-addon. You need to install it first. +It is a separate package (and CVS module) named kde-qt-addon.]) +fi +]) + +AC_DEFUN([KDE_CREATE_LIBS_ALIASES], +[ + AC_REQUIRE([KDE_MISC_TESTS]) + AC_REQUIRE([KDE_CHECK_LIBDL]) + AC_REQUIRE([K_PATH_X]) + +if test $kde_qtver = 3; then + case $host in + *cygwin*) lib_kded="-lkdeinit_kded" ;; + *) lib_kded="" ;; + esac + AC_SUBST(LIB_KDED, $lib_kded) + AC_SUBST(LIB_KDECORE, "-lkdecore") + AC_SUBST(LIB_KDEUI, "-lkdeui") + AC_SUBST(LIB_KIO, "-lkio") + AC_SUBST(LIB_KJS, "-lkjs") + AC_SUBST(LIB_SMB, "-lsmb") + AC_SUBST(LIB_KAB, "-lkab") + AC_SUBST(LIB_KABC, "-lkabc") + AC_SUBST(LIB_KHTML, "-lkhtml") + AC_SUBST(LIB_KSPELL, "-lkspell") + AC_SUBST(LIB_KPARTS, "-lkparts") + AC_SUBST(LIB_KDEPRINT, "-lkdeprint") + AC_SUBST(LIB_KUTILS, "-lkutils") + AC_SUBST(LIB_KDEPIM, "-lkdepim") + AC_SUBST(LIB_KIMPROXY, "-lkimproxy") + AC_SUBST(LIB_KNEWSTUFF, "-lknewstuff") + AC_SUBST(LIB_KDNSSD, "-lkdnssd") + AC_SUBST(LIB_KUNITTEST, "-lkunittest") +# these are for backward compatibility + AC_SUBST(LIB_KSYCOCA, "-lkio") + AC_SUBST(LIB_KFILE, "-lkio") +elif test $kde_qtver = 2; then + AC_SUBST(LIB_KDECORE, "-lkdecore") + AC_SUBST(LIB_KDEUI, "-lkdeui") + AC_SUBST(LIB_KIO, "-lkio") + AC_SUBST(LIB_KSYCOCA, "-lksycoca") + AC_SUBST(LIB_SMB, "-lsmb") + AC_SUBST(LIB_KFILE, "-lkfile") + AC_SUBST(LIB_KAB, "-lkab") + AC_SUBST(LIB_KHTML, "-lkhtml") + AC_SUBST(LIB_KSPELL, "-lkspell") + AC_SUBST(LIB_KPARTS, "-lkparts") + AC_SUBST(LIB_KDEPRINT, "-lkdeprint") +else + AC_SUBST(LIB_KDECORE, "-lkdecore -lXext $(LIB_QT)") + AC_SUBST(LIB_KDEUI, "-lkdeui $(LIB_KDECORE)") + AC_SUBST(LIB_KFM, "-lkfm $(LIB_KDECORE)") + AC_SUBST(LIB_KFILE, "-lkfile $(LIB_KFM) $(LIB_KDEUI)") + AC_SUBST(LIB_KAB, "-lkab $(LIB_KIMGIO) $(LIB_KDECORE)") +fi +]) + +AC_DEFUN([AC_PATH_KDE], +[ + AC_BASE_PATH_KDE + AC_ARG_ENABLE(path-check,AC_HELP_STRING([--disable-path-check],[don't try to find out, where to install]), + [ + if test "$enableval" = "no"; + then ac_use_path_checking="default" + else ac_use_path_checking="" + fi + ], + [ + if test "$kde_qtver" = 1; + then ac_use_path_checking="" + else ac_use_path_checking="default" + fi + ] + ) + + AC_CREATE_KFSSTND($ac_use_path_checking) + + AC_SUBST_KFSSTND + KDE_CREATE_LIBS_ALIASES +]) + +dnl KDE_CHECK_FUNC_EXT(, [headers], [sample-use], [C prototype], [autoheader define], [call if found]) +AC_DEFUN([KDE_CHECK_FUNC_EXT], +[ +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(kde_cv_func_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +save_CXXFLAGS="$CXXFLAGS" +kde_safe_LIBS="$LIBS" +LIBS="$LIBS $X_EXTRA_LIBS" +if test "$GXX" = "yes"; then +CXXFLAGS="$CXXFLAGS -pedantic-errors" +fi +AC_TRY_COMPILE([ +$2 +], +[ +$3 +], +kde_cv_func_$1=yes, +kde_cv_func_$1=no) +CXXFLAGS="$save_CXXFLAGS" +LIBS="$kde_safe_LIBS" +AC_LANG_RESTORE +]) + +AC_MSG_RESULT($kde_cv_func_$1) + +AC_MSG_CHECKING([if $1 needs custom prototype]) +AC_CACHE_VAL(kde_cv_proto_$1, +[ +if test "x$kde_cv_func_$1" = xyes; then + kde_cv_proto_$1=no +else + case "$1" in + setenv|unsetenv|usleep|random|srandom|seteuid|mkstemps|mkstemp|revoke|vsnprintf|strlcpy|strlcat) + kde_cv_proto_$1="yes - in libkdefakes" + ;; + *) + kde_cv_proto_$1=unknown + ;; + esac +fi + +if test "x$kde_cv_proto_$1" = xunknown; then + +AC_LANG_SAVE +AC_LANG_CPLUSPLUS + kde_safe_libs=$LIBS + LIBS="$LIBS $X_EXTRA_LIBS" + AC_TRY_LINK([ +$2 + +extern "C" $4; +], +[ +$3 +], +[ kde_cv_func_$1=yes + kde_cv_proto_$1=yes ], + [kde_cv_proto_$1="$1 unavailable"] +) +LIBS=$kde_safe_libs +AC_LANG_RESTORE +fi +]) +AC_MSG_RESULT($kde_cv_proto_$1) + +if test "x$kde_cv_func_$1" = xyes; then + AC_DEFINE(HAVE_$5, 1, [Define if you have $1]) + $6 +fi +if test "x$kde_cv_proto_$1" = xno; then + AC_DEFINE(HAVE_$5_PROTO, 1, + [Define if you have the $1 prototype]) +fi + +AH_VERBATIM([_HAVE_$5_PROTO], +[ +#if !defined(HAVE_$5_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +$4; +#ifdef __cplusplus +} +#endif +#endif +]) +]) + +AC_DEFUN([AC_CHECK_SETENV], +[ + KDE_CHECK_FUNC_EXT(setenv, [ +#include +], + [setenv("VAR", "VALUE", 1);], + [int setenv (const char *, const char *, int)], + [SETENV]) +]) + +AC_DEFUN([AC_CHECK_UNSETENV], +[ + KDE_CHECK_FUNC_EXT(unsetenv, [ +#include +], + [unsetenv("VAR");], + [void unsetenv (const char *)], + [UNSETENV]) +]) + +AC_DEFUN([AC_CHECK_GETDOMAINNAME], +[ + KDE_CHECK_FUNC_EXT(getdomainname, [ +#include +#include +#include +], + [ +char buffer[200]; +getdomainname(buffer, 200); +], + [#include + int getdomainname (char *, size_t)], + [GETDOMAINNAME]) +]) + +AC_DEFUN([AC_CHECK_GETHOSTNAME], +[ + KDE_CHECK_FUNC_EXT(gethostname, [ +#include +#include +], + [ +char buffer[200]; +gethostname(buffer, 200); +], + [int gethostname (char *, unsigned int)], + [GETHOSTNAME]) +]) + +AC_DEFUN([AC_CHECK_USLEEP], +[ + KDE_CHECK_FUNC_EXT(usleep, [ +#include +], + [ +usleep(200); +], + [int usleep (unsigned int)], + [USLEEP]) +]) + + +AC_DEFUN([AC_CHECK_RANDOM], +[ + KDE_CHECK_FUNC_EXT(random, [ +#include +], + [ +random(); +], + [long int random(void)], + [RANDOM]) + + KDE_CHECK_FUNC_EXT(srandom, [ +#include +], + [ +srandom(27); +], + [void srandom(unsigned int)], + [SRANDOM]) + +]) + +AC_DEFUN([AC_CHECK_INITGROUPS], +[ + KDE_CHECK_FUNC_EXT(initgroups, [ +#include +#include +#include +], + [ +char buffer[200]; +initgroups(buffer, 27); +], + [int initgroups(const char *, gid_t)], + [INITGROUPS]) +]) + +AC_DEFUN([AC_CHECK_MKSTEMPS], +[ + KDE_CHECK_FUNC_EXT(mkstemps, [ +#include +#include +], + [ +mkstemps("/tmp/aaaXXXXXX", 6); +], + [int mkstemps(char *, int)], + [MKSTEMPS]) +]) + +AC_DEFUN([AC_CHECK_MKSTEMP], +[ + KDE_CHECK_FUNC_EXT(mkstemp, [ +#include +#include +], + [ +mkstemp("/tmp/aaaXXXXXX"); +], + [int mkstemp(char *)], + [MKSTEMP]) +]) + +AC_DEFUN([AC_CHECK_MKDTEMP], +[ + KDE_CHECK_FUNC_EXT(mkdtemp, [ +#include +#include +], + [ +mkdtemp("/tmp/aaaXXXXXX"); +], + [char *mkdtemp(char *)], + [MKDTEMP]) +]) + + +AC_DEFUN([AC_CHECK_RES_INIT], +[ + AC_MSG_CHECKING([if res_init needs -lresolv]) + kde_libs_safe="$LIBS" + LIBS="$LIBS $X_EXTRA_LIBS -lresolv" + AC_TRY_LINK( + [ +#include +#include +#include +#include + ], + [ + res_init(); + ], + [ + LIBRESOLV="-lresolv" + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_RES_INIT, 1, [Define if you have the res_init function]) + ], + [ AC_MSG_RESULT(no) ] + ) + LIBS=$kde_libs_safe + AC_SUBST(LIBRESOLV) + + KDE_CHECK_FUNC_EXT(res_init, + [ +#include +#include +#include +#include + ], + [res_init()], + [int res_init(void)], + [RES_INIT]) +]) + +AC_DEFUN([AC_CHECK_STRLCPY], +[ + KDE_CHECK_FUNC_EXT(strlcpy, [ +#include +], +[ char buf[20]; + strlcpy(buf, "KDE function test", sizeof(buf)); +], + [unsigned long strlcpy(char*, const char*, unsigned long)], + [STRLCPY]) +]) + +AC_DEFUN([AC_CHECK_STRLCAT], +[ + KDE_CHECK_FUNC_EXT(strlcat, [ +#include +], +[ char buf[20]; + buf[0]='\0'; + strlcat(buf, "KDE function test", sizeof(buf)); +], + [unsigned long strlcat(char*, const char*, unsigned long)], + [STRLCAT]) +]) + +AC_DEFUN([AC_CHECK_RES_QUERY], +[ + KDE_CHECK_FUNC_EXT(res_query, [ +#include +#include +#include +#include +#include +], +[ +res_query(NULL, 0, 0, NULL, 0); +], + [int res_query(const char *, int, int, unsigned char *, int)], + [RES_QUERY]) +]) + +AC_DEFUN([AC_CHECK_DN_SKIPNAME], +[ + KDE_CHECK_FUNC_EXT(dn_skipname, [ +#include +#include +#include +#include +], +[ +dn_skipname (NULL, NULL); +], + [int dn_skipname (unsigned char *, unsigned char *)], + [DN_SKIPNAME]) +]) + + +AC_DEFUN([AC_FIND_GIF], + [AC_MSG_CHECKING([for giflib]) +AC_CACHE_VAL(ac_cv_lib_gif, +[ac_save_LIBS="$LIBS" +if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then +LIBS="$all_libraries -lgif -lX11 $LIBSOCKET" +else +LIBS="$all_libraries -lgif" +fi +AC_TRY_LINK(dnl +[ +#ifdef __cplusplus +extern "C" { +#endif +int GifLastError(void); +#ifdef __cplusplus +} +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +], + [return GifLastError();], + eval "ac_cv_lib_gif=yes", + eval "ac_cv_lib_gif=no") +LIBS="$ac_save_LIBS" +])dnl +if eval "test \"`echo $ac_cv_lib_gif`\" = yes"; then + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBGIF, 1, [Define if you have libgif]) +else + AC_MSG_ERROR(You need giflib30. Please install the kdesupport package) +fi +]) + +AC_DEFUN([KDE_FIND_JPEG_HELPER], +[ +AC_MSG_CHECKING([for libjpeg$2]) +AC_CACHE_VAL(ac_cv_lib_jpeg_$1, +[ +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm" +ac_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[ +#ifdef __cplusplus +extern "C" { +#endif +void jpeg_CreateDecompress(); +#ifdef __cplusplus +} +#endif +], +[jpeg_CreateDecompress();], + eval "ac_cv_lib_jpeg_$1=-ljpeg$2", + eval "ac_cv_lib_jpeg_$1=no") +LIBS="$ac_save_LIBS" +CFLAGS="$ac_save_CFLAGS" +]) + +if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then + LIBJPEG="$ac_cv_lib_jpeg_$1" + AC_MSG_RESULT($ac_cv_lib_jpeg_$1) +else + AC_MSG_RESULT(no) + $3 +fi + +]) + +AC_DEFUN([AC_FIND_JPEG], +[ +dnl first look for libraries +KDE_FIND_JPEG_HELPER(6b, 6b, + KDE_FIND_JPEG_HELPER(normal, [], + [ + LIBJPEG= + ] + ) +) + +dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h +dnl requires system dependent includes loaded before it) +jpeg_incdirs="$includedir /usr/include /usr/local/include $kde_extra_includes" +AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir) +test "x$jpeg_incdir" = xNO && jpeg_incdir= + +dnl if headers _and_ libraries are missing, this is no error, and we +dnl continue with a warning (the user will get no jpeg support in khtml) +dnl if only one is missing, it means a configuration error, but we still +dnl only warn +if test -n "$jpeg_incdir" && test -n "$LIBJPEG" ; then + AC_DEFINE_UNQUOTED(HAVE_LIBJPEG, 1, [Define if you have libjpeg]) +else + if test -n "$jpeg_incdir" || test -n "$LIBJPEG" ; then + AC_MSG_WARN([ +There is an installation error in jpeg support. You seem to have only one +of either the headers _or_ the libraries installed. You may need to either +provide correct --with-extra-... options, or the development package of +libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/ +Disabling JPEG support. +]) + else + AC_MSG_WARN([libjpeg not found. disable JPEG support.]) + fi + jpeg_incdir= + LIBJPEG= +fi + +AC_SUBST(LIBJPEG) +AH_VERBATIM(_AC_CHECK_JPEG, +[/* + * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system + * headers and I'm too lazy to write a configure test as long as only + * unixware is related + */ +#ifdef _UNIXWARE +#define HAVE_BOOLEAN +#endif +]) +]) + +AC_DEFUN([KDE_CHECK_QT_JPEG], +[ +if test -n "$LIBJPEG"; then +AC_MSG_CHECKING([if Qt needs $LIBJPEG]) +AC_CACHE_VAL(kde_cv_qt_jpeg, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS $LIBQT" +LIBS=`echo $LIBS | sed "s/$LIBJPEG//"` +ac_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK( +[#include ], + [ + int argc; + char** argv; + QApplication app(argc, argv);], + eval "kde_cv_qt_jpeg=no", + eval "kde_cv_qt_jpeg=yes") +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +fi +]) + +if eval "test ! \"`echo $kde_cv_qt_jpeg`\" = no"; then + AC_MSG_RESULT(yes) + LIBJPEG_QT='$(LIBJPEG)' +else + AC_MSG_RESULT(no) + LIBJPEG_QT= +fi + +]) + +AC_DEFUN([AC_FIND_ZLIB], +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], +[ + char buf[42]; + gzFile f = (gzFile) 0; + /* this would segfault.. but we only link, don't run */ + (void) gzgets(f, buf, sizeof(buf)); + + return (zlibVersion() == ZLIB_VERSION); +], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. + Possibly configure picks up an outdated version + installed by XFree86. Remove it from your system. + + Check your installation and look into config.log) + LIBZ="" +fi +AC_SUBST(LIBZ) +]) + +AC_DEFUN([KDE_TRY_TIFFLIB], +[ +AC_MSG_CHECKING([for libtiff $1]) + +AC_CACHE_VAL(kde_cv_libtiff_$1, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lX11 $LIBSOCKET -lm" +else +LIBS="$all_libraries $USER_LDFLAGS -l$1 $LIBJPEG $LIBZ -lm" +fi +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl +[ +#include +], + [return (TIFFOpen( "", "r") == 0); ], +[ + kde_cv_libtiff_$1="-l$1 $LIBJPEG $LIBZ" +], [ + kde_cv_libtiff_$1=no +]) + +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +]) + +if test "$kde_cv_libtiff_$1" = "no"; then + AC_MSG_RESULT(no) + LIBTIFF="" + $3 +else + LIBTIFF="$kde_cv_libtiff_$1" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_LIBTIFF, 1, [Define if you have libtiff]) + $2 +fi + +]) + +AC_DEFUN([AC_FIND_TIFF], +[ +AC_REQUIRE([K_PATH_X]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + +KDE_TRY_TIFFLIB(tiff, [], + KDE_TRY_TIFFLIB(tiff34)) + +AC_SUBST(LIBTIFF) +]) + +AC_DEFUN([KDE_FIND_LIBEXR], +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_CACHE_VAL(ac_cv_libexr, +[ + if test -z "$PKG_CONFIG"; then + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + fi + + AC_MSG_CHECKING([for OpenEXR libraries]) + + if test "$PKG_CONFIG" = "no" ; then + AC_MSG_RESULT(no) + echo "*** The pkg-config script could not be found. Make sure it is" + echo "*** in your path, or set the PKG_CONFIG environment variable" + echo "*** to the full path to pkg-config." + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." + else + if !(`$PKG_CONFIG --exists OpenEXR`) ; then + AC_MSG_RESULT(no) + EXRSTATUS=no + else + if !(`$PKG_CONFIG --atleast-version="1.1.1" OpenEXR`) ; then + AC_MSG_RESULT(no) + EXRSTATUS=old + else + kde_save_LIBS="$LIBS" + LIBS="$LIBS $all_libraries $USER_LDFLAGS `pkg-config --libs OpenEXR` $LIBZ" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_CXXFLAGS="$CXXFLAGS" + EXR_FLAGS=`$PKG_CONFIG --cflags OpenEXR` + CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES $EXR_FLAGS" + + AC_TRY_LINK(dnl + [ + #include + ], + [ + using namespace Imf; + RgbaInputFile file ("dummy"); + return 0; + ], + eval "ac_cv_libexr='`pkg-config --libs OpenEXR`'", + eval "ac_cv_libexr=no" + ) + LIBS="$kde_save_LIBS" + CXXFLAGS="$kde_save_CXXFLAGS" + AC_LANG_RESTORE + ])dnl + if eval "test ! \"`echo $ac_cv_libexr`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_EXR, 1, [Define if you have OpenEXR]) + LIB_EXR="$ac_cv_libexr" + AC_MSG_RESULT($ac_cv_libexr) + else + AC_MSG_RESULT(no) + LIB_EXR="" + fi + fi + fi + fi + AC_SUBST(LIB_EXR) + AC_SUBST(EXR_FLAGS) +]) + + + +AC_DEFUN([AC_FIND_PNG], +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_ZLIB]) +AC_MSG_CHECKING([for libpng]) +AC_CACHE_VAL(ac_cv_lib_png, +[ +kde_save_LIBS="$LIBS" +if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm -lX11 $LIBSOCKET" +else +LIBS="$LIBS $all_libraries $USER_LDFLAGS -lpng $LIBZ -lm" +fi +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl + [ + #include + ], + [ + png_structp png_ptr = png_create_read_struct( /* image ptr */ + PNG_LIBPNG_VER_STRING, 0, 0, 0 ); + return( png_ptr != 0 ); + ], + eval "ac_cv_lib_png='-lpng $LIBZ -lm'", + eval "ac_cv_lib_png=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_lib_png`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_LIBPNG, 1, [Define if you have libpng]) + LIBPNG="$ac_cv_lib_png" + AC_SUBST(LIBPNG) + AC_MSG_RESULT($ac_cv_lib_png) +else + AC_MSG_RESULT(no) + LIBPNG="" + AC_SUBST(LIBPNG) +fi +]) + + +AC_DEFUN([AC_FIND_JASPER], +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_REQUIRE([AC_FIND_JPEG]) +AC_MSG_CHECKING([for jasper]) +AC_CACHE_VAL(ac_cv_jasper, +[ +kde_save_LIBS="$LIBS" +LIBS="$LIBS $all_libraries $USER_LDFLAGS -ljasper $LIBJPEG -lm" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" + +AC_TRY_LINK(dnl + [ + #include + ], + [ + return( jas_init() ); + ], + eval "ac_cv_jasper='-ljasper $LIBJPEG -lm'", + eval "ac_cv_jasper=no" +) +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if eval "test ! \"`echo $ac_cv_jasper`\" = no"; then + AC_DEFINE_UNQUOTED(HAVE_JASPER, 1, [Define if you have jasper]) + LIB_JASPER="$ac_cv_jasper" + AC_MSG_RESULT($ac_cv_jasper) +else + AC_MSG_RESULT(no) + LIB_JASPER="" +fi +AC_SUBST(LIB_JASPER) +]) + +AC_DEFUN([AC_CHECK_BOOL], +[ + AC_DEFINE_UNQUOTED(HAVE_BOOL, 1, [You _must_ have bool]) +]) + +AC_DEFUN([AC_CHECK_GNU_EXTENSIONS], +[ +AC_MSG_CHECKING(if you need GNU extensions) +AC_CACHE_VAL(ac_cv_gnu_extensions, +[ +cat > conftest.c << EOF +#include + +#ifdef __GNU_LIBRARY__ +yes +#endif +EOF + +if (eval "$ac_cpp conftest.c") 2>&5 | + egrep "yes" >/dev/null 2>&1; then + rm -rf conftest* + ac_cv_gnu_extensions=yes +else + ac_cv_gnu_extensions=no +fi +]) + +AC_MSG_RESULT($ac_cv_gnu_extensions) +if test "$ac_cv_gnu_extensions" = "yes"; then + AC_DEFINE_UNQUOTED(_GNU_SOURCE, 1, [Define if you need to use the GNU extensions]) +fi +]) + +AC_DEFUN([KDE_CHECK_COMPILER_FLAG], +[ +AC_MSG_CHECKING([whether $CXX supports -$1]) +kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` +AC_CACHE_VAL(kde_cv_prog_cxx_$kde_cache, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS -$1" + AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cxx_$kde_cache=yes"], []) + CXXFLAGS="$save_CXXFLAGS" + AC_LANG_RESTORE +]) +if eval "test \"`echo '$kde_cv_prog_cxx_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + +AC_DEFUN([KDE_CHECK_C_COMPILER_FLAG], +[ +AC_MSG_CHECKING([whether $CC supports -$1]) +kde_cache=`echo $1 | sed 'y% .=/+-,%____p__%'` +AC_CACHE_VAL(kde_cv_prog_cc_$kde_cache, +[ + AC_LANG_SAVE + AC_LANG_C + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -$1" + AC_TRY_LINK([],[ return 0; ], [eval "kde_cv_prog_cc_$kde_cache=yes"], []) + CFLAGS="$save_CFLAGS" + AC_LANG_RESTORE +]) +if eval "test \"`echo '$kde_cv_prog_cc_'$kde_cache`\" = yes"; then + AC_MSG_RESULT(yes) + : + $2 +else + AC_MSG_RESULT(no) + : + $3 +fi +]) + + +dnl AC_REMOVE_FORBIDDEN removes forbidden arguments from variables +dnl use: AC_REMOVE_FORBIDDEN(CC, [-forbid -bad-option whatever]) +dnl it's all white-space separated +AC_DEFUN([AC_REMOVE_FORBIDDEN], +[ __val=$$1 + __forbid=" $2 " + if test -n "$__val"; then + __new="" + ac_save_IFS=$IFS + IFS=" " + for i in $__val; do + case "$__forbid" in + *" $i "*) AC_MSG_WARN([found forbidden $i in $1, removing it]) ;; + *) # Careful to not add spaces, where there were none, because otherwise + # libtool gets confused, if we change e.g. CXX + if test -z "$__new" ; then __new=$i ; else __new="$__new $i" ; fi ;; + esac + done + IFS=$ac_save_IFS + $1=$__new + fi +]) + + +AC_DEFUN([KDE_CHECK_FOR_BAD_COMPILER], +[ + AC_MSG_CHECKING([whether $CC is blacklisted]) + + dnl In theory we have tu run this test against $CC and $CXX + dnl in C and in C++ mode, because its perfectly legal for + dnl the user to mix compiler versions, since C has a defined + dnl ABI. + dnl + dnl For now, we assume the user is not on crack. + + AC_TRY_COMPILE([ +#ifdef __GNUC__ +#if __GNUC__ == 4 && __GNUC_MINOR__ == 0 && __GNUC_PATCHLEVEL__ == 0 +choke me +#endif +#endif +], , + kde_bad_compiler=no, + kde_bad_compiler=yes +) + + AC_MSG_RESULT($kde_bad_compiler) + +if test "$kde_bad_compiler" = "yes"; then + AC_MSG_ERROR([ + +This particular compiler version is blacklisted because it +is known to miscompile KDE. Please use a newer version, or +if that is not yet available, choose an older version. + +Please do not report a bug or bother us reporting this +configure error. We know about it, and we introduced +it by intention to avoid untraceable bugs or crashes in KDE. + +]) +fi + +]) + + +AC_DEFUN([KDE_CHECK_FOR_OPT_NOINLINE_MATCH], +[ + AC_CACHE_CHECK([whether system headers can cope with -O2 -fno-inline], + kde_cv_opt_noinline_match, + [ + kde_cv_opt_noinline_match=irrelevant + dnl if we don't use both -O2 and -fno-inline, this check is moot + if echo "$CFLAGS" | grep -e -O2 >/dev/null 2>/dev/null \ + && echo "$CFLAGS" | grep -e -fno-inline >/dev/null 2>/dev/null ; then + + ac_cflags_save="$CFLAGS" + CFLAGS="$CFLAGS -D_USE_GNU" + + AC_TRY_LINK([ + #include +], [ const char *pt, *et; + et = __extension__ ({ char __a0, __a1, __a2; (__builtin_constant_p ( ";," ) && ((size_t)(const void *)(( ";," )+ 1) - (size_t)(const void *)( ";," ) == 1) ? ((__a0 =((__const char *) ( ";," ))[0], __a0 == '\0') ? ((void) ( pt ),((void *)0) ) : ((__a1 = ((__const char *) ( ";," ))[1], __a1== '\0') ? (__extension__ (__builtin_constant_p ( __a0 ) && ( __a0 ) == '\0' ? (char *) __rawmemchr ( pt , __a0) : strchr( pt , __a0 ))) : ((__a2 = ((__const char *) ( ";," ))[2], __a2 == '\0') ? __strpbrk_c2 ( pt , __a0, __a1) :(((__const char *) ( ";," ))[3] == '\0' ? __strpbrk_c3 ( pt ,__a0, __a1, __a2): strpbrk ( pt , ";," ))))) : strpbrk ( pt , ";," )); }) ; +], + kde_cv_opt_noinline_match=yes, + kde_cv_opt_noinline_match=no + ) + + CFLAGS="$ac_cflags_save" + fi + ]) +]) + + +dnl AC_VALIDIFY_CXXFLAGS checks for forbidden flags the user may have given +AC_DEFUN([AC_VALIDIFY_CXXFLAGS], +[dnl +if test "x$kde_use_qt_emb" != "xyes"; then + AC_REMOVE_FORBIDDEN(CXX, [-fno-rtti -rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-fno-rtti -rpath]) +else + AC_REMOVE_FORBIDDEN(CXX, [-rpath]) + AC_REMOVE_FORBIDDEN(CXXFLAGS, [-rpath]) +fi +]) + +AC_DEFUN([AC_CHECK_COMPILERS], +[ + AC_ARG_ENABLE(debug, + AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]), + [ + case $enableval in + yes) + kde_use_debug_code="yes" + kde_use_debug_define=no + ;; + full) + kde_use_debug_code="full" + kde_use_debug_define=no + ;; + *) + kde_use_debug_code="no" + kde_use_debug_define=yes + ;; + esac + ], + [kde_use_debug_code="no" + kde_use_debug_define=no + ]) + + dnl Just for configure --help + AC_ARG_ENABLE(dummyoption, + AC_HELP_STRING([--disable-debug], + [disables debug output and debug symbols [default=no]]), + [],[]) + + AC_ARG_ENABLE(strict, + AC_HELP_STRING([--enable-strict], + [compiles with strict compiler options (may not work!)]), + [ + if test $enableval = "no"; then + kde_use_strict_options="no" + else + kde_use_strict_options="yes" + fi + ], [kde_use_strict_options="no"]) + + AC_ARG_ENABLE(warnings,AC_HELP_STRING([--disable-warnings],[disables compilation with -Wall and similar]), + [ + if test $enableval = "no"; then + kde_use_warnings="no" + else + kde_use_warnings="yes" + fi + ], [kde_use_warnings="yes"]) + + dnl enable warnings for debug build + if test "$kde_use_debug_code" != "no"; then + kde_use_warnings=yes + fi + + AC_ARG_ENABLE(profile,AC_HELP_STRING([--enable-profile],[creates profiling infos [default=no]]), + [kde_use_profiling=$enableval], + [kde_use_profiling="no"] + ) + + dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS + CFLAGS=" $CFLAGS" + + AC_PROG_CC + + AC_PROG_CPP + + if test "$GCC" = "yes"; then + if test "$kde_use_debug_code" != "no"; then + if test $kde_use_debug_code = "full"; then + CFLAGS="-g3 -fno-inline $CFLAGS" + else + CFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CFLAGS" + fi + else + CFLAGS="-O2 $CFLAGS" + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CFLAGS="-DNDEBUG $CFLAGS" + fi + + + case "$host" in + *-*-sysv4.2uw*) CFLAGS="-D_UNIXWARE $CFLAGS";; + *-*-sysv5uw7*) CFLAGS="-D_UNIXWARE7 $CFLAGS";; + esac + + if test -z "$LDFLAGS" && test "$kde_use_debug_code" = "no" && test "$GCC" = "yes"; then + LDFLAGS="" + fi + + CXXFLAGS=" $CXXFLAGS" + + AC_PROG_CXX + + KDE_CHECK_FOR_BAD_COMPILER + + if test "$GXX" = "yes" || test "$CXX" = "KCC"; then + if test "$kde_use_debug_code" != "no"; then + if test "$CXX" = "KCC"; then + CXXFLAGS="+K0 -Wall -pedantic -W -Wpointer-arith -Wwrite-strings $CXXFLAGS" + else + if test "$kde_use_debug_code" = "full"; then + CXXFLAGS="-g3 -fno-inline $CXXFLAGS" + else + CXXFLAGS="-g -O2 -fno-schedule-insns -fno-inline $CXXFLAGS" + fi + fi + KDE_CHECK_COMPILER_FLAG(fno-builtin,[CXXFLAGS="-fno-builtin $CXXFLAGS"]) + + dnl convenience compiler flags + KDE_CHECK_COMPILER_FLAG(Woverloaded-virtual, [WOVERLOADED_VIRTUAL="-Woverloaded-virtual"], [WOVERLOADED_VRITUAL=""]) + AC_SUBST(WOVERLOADED_VIRTUAL) + else + if test "$CXX" = "KCC"; then + CXXFLAGS="+K3 $CXXFLAGS" + else + CXXFLAGS="-O2 $CXXFLAGS" + fi + fi + fi + + if test "$kde_use_debug_define" = "yes"; then + CXXFLAGS="-DNDEBUG -DNO_DEBUG $CXXFLAGS" + fi + + if test "$kde_use_profiling" = "yes"; then + KDE_CHECK_COMPILER_FLAG(pg, + [ + CFLAGS="-pg $CFLAGS" + CXXFLAGS="-pg $CXXFLAGS" + ]) + fi + + if test "$kde_use_warnings" = "yes"; then + if test "$GCC" = "yes"; then + CXXFLAGS="-Wall -W -Wpointer-arith $CXXFLAGS" + case $host in + *-*-linux-gnu) + CFLAGS="-std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE $CFLAGS" + CXXFLAGS="-ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts $CXXFLAGS" + KDE_CHECK_COMPILER_FLAG(Wmissing-format-attribute, [CXXFLAGS="$CXXFLAGS -Wformat-security -Wmissing-format-attribute"]) + KDE_CHECK_C_COMPILER_FLAG(Wmissing-format-attribute, [CFLAGS="$CFLAGS -Wformat-security -Wmissing-format-attribute"]) + ;; + esac + KDE_CHECK_COMPILER_FLAG(Wundef,[CXXFLAGS="-Wundef $CXXFLAGS"]) + KDE_CHECK_COMPILER_FLAG(Wno-long-long,[CXXFLAGS="-Wno-long-long $CXXFLAGS"]) + dnl ### FIXME: revert for KDE 4 + KDE_CHECK_COMPILER_FLAG(Wno-non-virtual-dtor,[CXXFLAGS="$CXXFLAGS -Wno-non-virtual-dtor"]) + fi + fi + + if test "$GXX" = "yes" && test "$kde_use_strict_options" = "yes"; then + CXXFLAGS="-Wcast-qual -Wshadow -Wcast-align $CXXFLAGS" + fi + + AC_ARG_ENABLE(pch, + AC_HELP_STRING([--enable-pch], + [enables precompiled header support (currently only KCC or gcc >=3.4+unsermake) [default=no]]), + [ kde_use_pch=$enableval ],[ kde_use_pch=no ]) + + HAVE_GCC_VISIBILITY=0 + AC_SUBST([HAVE_GCC_VISIBILITY]) + + if test "$GXX" = "yes"; then + gcc_no_reorder_blocks=NO + KDE_CHECK_COMPILER_FLAG(fno-reorder-blocks,[gcc_no_reorder_blocks=YES]) + if test $kde_use_debug_code != "no" && \ + test $kde_use_debug_code != "full" && \ + test "YES" = "$gcc_no_reorder_blocks" ; then + CXXFLAGS="$CXXFLAGS -fno-reorder-blocks" + CFLAGS="$CFLAGS -fno-reorder-blocks" + fi + KDE_CHECK_COMPILER_FLAG(fno-exceptions,[CXXFLAGS="$CXXFLAGS -fno-exceptions"]) + KDE_CHECK_COMPILER_FLAG(fno-check-new, [CXXFLAGS="$CXXFLAGS -fno-check-new"]) + KDE_CHECK_COMPILER_FLAG(fno-common, [CXXFLAGS="$CXXFLAGS -fno-common"]) + KDE_CHECK_COMPILER_FLAG(fexceptions, [USE_EXCEPTIONS="-fexceptions"], USE_EXCEPTIONS= ) + ENABLE_PERMISSIVE_FLAG="-fpermissive" + + if test "$kde_use_pch" = "yes"; then + AC_MSG_CHECKING(whether gcc supports precompiling c header files) + echo >conftest.h + if $CC -x c-header conftest.h >/dev/null 2>/dev/null; then + kde_gcc_supports_pch=yes + AC_MSG_RESULT(yes) + else + kde_gcc_supports_pch=no + AC_MSG_RESULT(no) + fi + if test "$kde_gcc_supports_pch" = "yes"; then + AC_MSG_CHECKING(whether gcc supports precompiling c++ header files) + if $CXX -x c++-header conftest.h >/dev/null 2>/dev/null; then + kde_gcc_supports_pch=yes + AC_MSG_RESULT(yes) + else + kde_gcc_supports_pch=no + AC_MSG_RESULT(no) + fi + fi + rm -f conftest.h conftest.h.gch + fi + + KDE_CHECK_FOR_OPT_NOINLINE_MATCH + if test "x$kde_cv_opt_noinline_match" = "xno" ; then + CFLAGS="`echo "$CFLAGS" | sed "s/ -fno-inline//"`" + fi + fi + AM_CONDITIONAL(unsermake_enable_pch, test "$kde_use_pch" = "yes" && test "$kde_gcc_supports_pch" = "yes") + if test "$CXX" = "KCC"; then + dnl unfortunately we currently cannot disable exception support in KCC + dnl because doing so is binary incompatible and Qt by default links with exceptions :-( + dnl KDE_CHECK_COMPILER_FLAG(-no_exceptions,[CXXFLAGS="$CXXFLAGS --no_exceptions"]) + dnl KDE_CHECK_COMPILER_FLAG(-exceptions, [USE_EXCEPTIONS="--exceptions"], USE_EXCEPTIONS= ) + + if test "$kde_use_pch" = "yes"; then + dnl TODO: support --pch-dir! + KDE_CHECK_COMPILER_FLAG(-pch,[CXXFLAGS="$CXXFLAGS --pch"]) + dnl the below works (but the dir must exist), but it's + dnl useless for a whole package. + dnl The are precompiled headers for each source file, so when compiling + dnl from scratch, it doesn't make a difference, and they take up + dnl around ~5Mb _per_ sourcefile. + dnl KDE_CHECK_COMPILER_FLAG(-pch_dir /tmp, + dnl [CXXFLAGS="$CXXFLAGS --pch_dir `pwd`/pcheaders"]) + fi + dnl this flag controls inlining. by default KCC inlines in optimisation mode + dnl all implementations that are defined inside the class {} declaration. + dnl because of templates-compatibility with broken gcc compilers, this + dnl can cause excessive inlining. This flag limits it to a sane level + KDE_CHECK_COMPILER_FLAG(-inline_keyword_space_time=6,[CXXFLAGS="$CXXFLAGS --inline_keyword_space_time=6"]) + KDE_CHECK_COMPILER_FLAG(-inline_auto_space_time=2,[CXXFLAGS="$CXXFLAGS --inline_auto_space_time=2"]) + KDE_CHECK_COMPILER_FLAG(-inline_implicit_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_implicit_space_time=2.0"]) + KDE_CHECK_COMPILER_FLAG(-inline_generated_space_time=2.0,[CXXFLAGS="$CXXFLAGS --inline_generated_space_time=2.0"]) + dnl Some source files are shared between multiple executables + dnl (or libraries) and some of those need template instantiations. + dnl In that case KCC needs to compile those sources with + dnl --one_instantiation_per_object. To make it easy for us we compile + dnl _all_ objects with that flag (--one_per is a shorthand). + KDE_CHECK_COMPILER_FLAG(-one_per, [CXXFLAGS="$CXXFLAGS --one_per"]) + fi + AC_SUBST(USE_EXCEPTIONS) + dnl obsolete macro - provided to keep things going + USE_RTTI= + AC_SUBST(USE_RTTI) + + case "$host" in + *-*-irix*) test "$GXX" = yes && CXXFLAGS="-D_LANGUAGE_C_PLUS_PLUS -D__LANGUAGE_C_PLUS_PLUS $CXXFLAGS" ;; + *-*-sysv4.2uw*) CXXFLAGS="-D_UNIXWARE $CXXFLAGS";; + *-*-sysv5uw7*) CXXFLAGS="-D_UNIXWARE7 $CXXFLAGS";; + *-*-solaris*) + if test "$GXX" = yes; then + libstdcpp=`$CXX -print-file-name=libstdc++.so` + if test ! -f $libstdcpp; then + AC_MSG_ERROR([You've compiled gcc without --enable-shared. This doesn't work with KDE. Please recompile gcc with --enable-shared to receive a libstdc++.so]) + fi + fi + ;; + esac + + AC_VALIDIFY_CXXFLAGS + + AC_PROG_CXXCPP + + if test "$GCC" = yes; then + NOOPT_CFLAGS=-O0 + fi + KDE_CHECK_COMPILER_FLAG(O0,[NOOPT_CXXFLAGS=-O0]) + + AC_ARG_ENABLE(coverage, + AC_HELP_STRING([--enable-coverage],[use gcc coverage testing]), [ + if test "$am_cv_CC_dependencies_compiler_type" = "gcc3"; then + ac_coverage_compiler="-fprofile-arcs -ftest-coverage" + ac_coverage_linker="-lgcc" + elif test "$am_cv_CC_dependencies_compiler_type" = "gcc"; then + ac_coverage_compiler="-fprofile-arcs -ftest-coverage" + ac_coverage_linker="" + else + AC_MSG_ERROR([coverage with your compiler is not supported]) + fi + CFLAGS="$CFLAGS $ac_coverage_compiler" + CXXFLAGS="$CXXFLAGS $ac_coverage_compiler" + LDFLAGS="$LDFLAGS $ac_coverage_linker" + ]) + + AC_SUBST(NOOPT_CXXFLAGS) + AC_SUBST(NOOPT_CFLAGS) + AC_SUBST(ENABLE_PERMISSIVE_FLAG) + + KDE_CHECK_NEW_LDFLAGS + KDE_CHECK_FINAL + KDE_CHECK_CLOSURE + KDE_CHECK_NMCHECK + + ifdef([AM_DEPENDENCIES], AC_REQUIRE([KDE_ADD_DEPENDENCIES]), []) +]) + +AC_DEFUN([KDE_CHECK_VISIBILITY_GCC_BUG], + [ + AC_CACHE_CHECK([for gcc -fvisibility-inlines-hidden bug], kde_cv_val_gcc_visibility_bug, + [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + + safe_CXXFLAGS=$CXXFLAGS + safe_LDFLAGS=$LDFLAGS + CXXFLAGS="$CXXFLAGS -fPIC -fvisibility-inlines-hidden -O0" + LDFLAGS="$LDFLAGS -shared -fPIC" + + AC_TRY_LINK( + [ + /* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19664 */ + #include + int some_function( void ) __attribute__ ((visibility("default"))); + int some_function( void ) + { + std::string s("blafasel"); + return 0; + } + ], [/* elvis is alive */], + kde_cv_val_gcc_visibility_bug=no, kde_cv_val_gcc_visibility_bug=yes) + + CXXFLAGS=$safe_CXXFLAGS + LDFLAGS=$safe_LDFLAGS + AC_LANG_RESTORE + ] + ) + + if test x$kde_cv_val_gcc_visibility_bug = xno; then + CXXFLAGS="$CXXFLAGS -fvisibility-inlines-hidden" + fi + ] +) + +AC_DEFUN([KDE_ENABLE_HIDDEN_VISIBILITY], +[ + AC_BEFORE([AC_PATH_QT_1_3], [KDE_ENABLE_HIDDEN_VISIBILITY]) + + AC_MSG_CHECKING([grepping for visibility push/pop in headers]) + + if test "x$GXX" = "xyes"; then + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_EGREP_CPP( + [GCC visibility push], + [ #include + ], + [ + AC_MSG_RESULT(yes) + kde_stdc_visibility_patched=yes ], + [ + AC_MSG_RESULT(no) + AC_MSG_WARN([Your libstdc++ doesn't appear to be patched for + visibility support. Disabling -fvisibility=hidden]) + + kde_stdc_visibility_patched=no ]) + + AC_LANG_RESTORE + + kde_have_gcc_visibility=no + KDE_CHECK_COMPILER_FLAG(fvisibility=hidden, + [ + kde_have_gcc_visibility=yes + dnl the whole toolchain is just a mess, gcc is just too buggy + dnl to handle STL with visibility enabled. Lets reconsider + dnl when gcc 4.2 is out or when things get fixed in the compiler. + dnl Contact mueller@kde.org for details. + AC_ARG_ENABLE(gcc-hidden-visibility, + AC_HELP_STRING([--enable-gcc-hidden-visibility],[toolchain hidden visibility [default=no]]), + [kde_have_gcc_visibility=$enableval], + [kde_have_gcc_visibility=no]) + + AC_CACHE_CHECK([if Qt is patched for -fvisibility], kde_cv_val_qt_gcc_visibility_patched, + [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + + safe_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$CXXFLAGS $all_includes" + + AC_TRY_COMPILE( + [ +#include +#if Q_EXPORT - 0 != 0 +/* if this compiles, then Q_EXPORT is undefined */ +/* if Q_EXPORT is nonempty, this will break compilation */ +#endif + ], [/* elvis is alive */], + kde_cv_val_qt_gcc_visibility_patched=no, kde_cv_val_qt_gcc_visibility_patched=yes) + + CXXFLAGS=$safe_CXXFLAGS + AC_LANG_RESTORE + ] + ) + + if test x$kde_have_gcc_visibility = "xyes" && test x$kde_stdc_visibility_patched = "xyes" && test x$kde_cv_val_qt_gcc_visibility_patched = "xyes"; then + CXXFLAGS="$CXXFLAGS -fvisibility=hidden" + KDE_CHECK_VISIBILITY_GCC_BUG + HAVE_GCC_VISIBILITY=1 + AC_DEFINE_UNQUOTED(__KDE_HAVE_GCC_VISIBILITY, "$HAVE_GCC_VISIBILITY", [define to 1 if -fvisibility is supported]) + fi + ]) + fi +]) + +AC_DEFUN([KDE_ADD_DEPENDENCIES], +[ + [A]M_DEPENDENCIES(CC) + [A]M_DEPENDENCIES(CXX) +]) + +dnl just a wrapper to clean up configure.in +AC_DEFUN([KDE_PROG_LIBTOOL], +[ +AC_REQUIRE([AC_CHECK_COMPILERS]) +AC_REQUIRE([AC_ENABLE_SHARED]) +AC_REQUIRE([AC_ENABLE_STATIC]) + +AC_REQUIRE([AC_LIBTOOL_DLOPEN]) +AC_REQUIRE([KDE_CHECK_LIB64]) + +AC_OBJEXT +AC_EXEEXT + +AM_PROG_LIBTOOL +AC_LIBTOOL_CXX + +LIBTOOL_SHELL="/bin/sh ./libtool" +# LIBTOOL="$LIBTOOL --silent" +KDE_PLUGIN="-avoid-version -module -no-undefined \$(KDE_NO_UNDEFINED) \$(KDE_RPATH) \$(KDE_MT_LDFLAGS)" +AC_SUBST(KDE_PLUGIN) + +# This hack ensures that libtool creates shared libs for kunittest plugins. By default check_LTLIBRARIES makes static libs. +KDE_CHECK_PLUGIN="\$(KDE_PLUGIN) -rpath \$(libdir)" +AC_SUBST(KDE_CHECK_PLUGIN) + +# we patch configure quite some so we better keep that consistent for incremental runs +AC_SUBST(AUTOCONF,'$(SHELL) $(top_srcdir)/admin/cvs.sh configure || touch configure') +]) + +AC_DEFUN([KDE_CHECK_LIB64], +[ + AC_ARG_ENABLE(libsuffix, + AC_HELP_STRING([--enable-libsuffix], + [/lib directory suffix (64,32,none,auto[=default])]), + kdelibsuff=$enableval, kdelibsuff="auto") + + if test "$kdelibsuff" = "auto"; then + +cat > conftest.c << EOF +#include +int main() { + return 0; +} +EOF + kdelibsuff=`$CC conftest.c -o conftest.out; ldd conftest.out |sed -ne '/libc.so/{ + s,.*/lib\([[^\/]]*\)/.*,\1, + p +}'` + rm -rf conftest.* + fi + + if test "$kdelibsuff" = "no" || test "$kdelibsuff" = "none"; then + kdelibsuff= + fi + if test -z "$kdelibsuff"; then + AC_MSG_RESULT([not using lib directory suffix]) + AC_DEFINE(KDELIBSUFF, [""], Suffix for lib directories) + else + if test "$libdir" = '${exec_prefix}/lib'; then + libdir="$libdir${kdelibsuff}" + AC_SUBST([libdir], ["$libdir"]) dnl ugly hack for lib64 platforms + fi + AC_DEFINE_UNQUOTED(KDELIBSUFF, ["${kdelibsuff}"], Suffix for lib directories) + AC_MSG_RESULT([using lib directory suffix $kdelibsuff]) + fi +]) + +AC_DEFUN([KDE_CHECK_TYPES], +[ AC_CHECK_SIZEOF(int, 4)dnl + AC_CHECK_SIZEOF(short)dnl + AC_CHECK_SIZEOF(long, 4)dnl + AC_CHECK_SIZEOF(char *, 4)dnl +])dnl + +dnl Not used - kept for compat only? +AC_DEFUN([KDE_DO_IT_ALL], +[ +AC_CANONICAL_SYSTEM +AC_ARG_PROGRAM +AM_INIT_AUTOMAKE($1, $2) +AM_DISABLE_LIBRARIES +AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) +AC_CHECK_COMPILERS +KDE_PROG_LIBTOOL +AM_KDE_WITH_NLS +AC_PATH_KDE +]) + +AC_DEFUN([AC_CHECK_RPATH], +[ +AC_MSG_CHECKING(for rpath) +AC_ARG_ENABLE(rpath, + AC_HELP_STRING([--disable-rpath],[do not use the rpath feature of ld]), + USE_RPATH=$enableval, USE_RPATH=yes) + +if test -z "$KDE_RPATH" && test "$USE_RPATH" = "yes"; then + + KDE_RPATH="-R \$(libdir)" + + if test "$kde_libraries" != "$libdir"; then + KDE_RPATH="$KDE_RPATH -R \$(kde_libraries)" + fi + + if test -n "$qt_libraries"; then + KDE_RPATH="$KDE_RPATH -R \$(qt_libraries)" + fi + dnl $x_libraries is set to /usr/lib in case + if test -n "$X_LDFLAGS"; then + X_RPATH="-R \$(x_libraries)" + KDE_RPATH="$KDE_RPATH $X_RPATH" + fi + if test -n "$KDE_EXTRA_RPATH"; then + KDE_RPATH="$KDE_RPATH \$(KDE_EXTRA_RPATH)" + fi +fi +AC_SUBST(KDE_EXTRA_RPATH) +AC_SUBST(KDE_RPATH) +AC_SUBST(X_RPATH) +AC_MSG_RESULT($USE_RPATH) +]) + +dnl Check for the type of the third argument of getsockname +AC_DEFUN([AC_CHECK_SOCKLEN_T], +[ + AC_MSG_CHECKING(for socklen_t) + AC_CACHE_VAL(kde_cv_socklen_t, + [ + AC_LANG_PUSH(C++) + kde_cv_socklen_t=no + AC_TRY_COMPILE([ + #include + #include + ], + [ + socklen_t len; + getpeername(0,0,&len); + ], + [ + kde_cv_socklen_t=yes + kde_cv_socklen_t_equiv=socklen_t + ]) + AC_LANG_POP(C++) + ]) + AC_MSG_RESULT($kde_cv_socklen_t) + if test $kde_cv_socklen_t = no; then + AC_MSG_CHECKING([for socklen_t equivalent for socket functions]) + AC_CACHE_VAL(kde_cv_socklen_t_equiv, + [ + kde_cv_socklen_t_equiv=int + AC_LANG_PUSH(C++) + for t in int size_t unsigned long "unsigned long"; do + AC_TRY_COMPILE([ + #include + #include + ], + [ + $t len; + getpeername(0,0,&len); + ], + [ + kde_cv_socklen_t_equiv="$t" + break + ]) + done + AC_LANG_POP(C++) + ]) + AC_MSG_RESULT($kde_cv_socklen_t_equiv) + fi + AC_DEFINE_UNQUOTED(kde_socklen_t, $kde_cv_socklen_t_equiv, + [type to use in place of socklen_t if not defined]) + AC_DEFINE_UNQUOTED(ksize_t, $kde_cv_socklen_t_equiv, + [type to use in place of socklen_t if not defined (deprecated, use kde_socklen_t)]) +]) + +dnl This is a merge of some macros out of the gettext aclocal.m4 +dnl since we don't need anything, I took the things we need +dnl the copyright for them is: +dnl > +dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. +dnl This Makefile.in is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without +dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A +dnl PARTICULAR PURPOSE. +dnl > +dnl for this file it is relicensed under LGPL + +AC_DEFUN([AM_KDE_WITH_NLS], + [ + dnl If we use NLS figure out what method + + AM_PATH_PROG_WITH_TEST_KDE(MSGFMT, msgfmt, + [test -n "`$ac_dir/$ac_word --version 2>&1 | grep 'GNU gettext'`"], msgfmt) + AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + + if test -z "`$GMSGFMT --version 2>&1 | grep 'GNU gettext'`"; then + AC_MSG_RESULT([found msgfmt program is not GNU msgfmt; ignore it]) + GMSGFMT=":" + fi + MSGFMT=$GMSGFMT + AC_SUBST(GMSGFMT) + AC_SUBST(MSGFMT) + + AM_PATH_PROG_WITH_TEST_KDE(XGETTEXT, xgettext, + [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :) + + dnl Test whether we really found GNU xgettext. + if test "$XGETTEXT" != ":"; then + dnl If it is no GNU xgettext we define it as : so that the + dnl Makefiles still can work. + if $XGETTEXT --omit-header /dev/null 2> /dev/null; then + : ; + else + AC_MSG_RESULT( + [found xgettext programs is not GNU xgettext; ignore it]) + XGETTEXT=":" + fi + fi + AC_SUBST(XGETTEXT) + + ]) + +# Search path for a program which passes the given test. +# Ulrich Drepper , 1996. + +# serial 1 +# Stephan Kulow: I appended a _KDE against name conflicts + +dnl AM_PATH_PROG_WITH_TEST_KDE(VARIABLE, PROG-TO-CHECK-FOR, +dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) +AC_DEFUN([AM_PATH_PROG_WITH_TEST_KDE], +[# Extract the first word of "$2", so it can be a program name with args. +set dummy $2; ac_word=[$]2 +AC_MSG_CHECKING([for $ac_word]) +AC_CACHE_VAL(ac_cv_path_$1, +[case "[$]$1" in + /*) + ac_cv_path_$1="[$]$1" # Let the user override the test with a path. + ;; + *) + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in ifelse([$5], , $PATH, [$5]); do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if [$3]; then + ac_cv_path_$1="$ac_dir/$ac_word" + break + fi + fi + done + IFS="$ac_save_ifs" +dnl If no 4th arg is given, leave the cache variable unset, +dnl so AC_PATH_PROGS will keep looking. +ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" +])dnl + ;; +esac])dnl +$1="$ac_cv_path_$1" +if test -n "[$]$1"; then + AC_MSG_RESULT([$]$1) +else + AC_MSG_RESULT(no) +fi +AC_SUBST($1)dnl +]) + + +# Check whether LC_MESSAGES is available in . +# Ulrich Drepper , 1995. + +# serial 1 + +AC_DEFUN([AM_LC_MESSAGES], + [if test $ac_cv_header_locale_h = yes; then + AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, + [AC_TRY_LINK([#include ], [return LC_MESSAGES], + am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) + if test $am_cv_val_LC_MESSAGES = yes; then + AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your locale.h file contains LC_MESSAGES]) + fi + fi]) + +dnl From Jim Meyering. +dnl FIXME: migrate into libit. + +AC_DEFUN([AM_FUNC_OBSTACK], +[AC_CACHE_CHECK([for obstacks], am_cv_func_obstack, + [AC_TRY_LINK([#include "obstack.h"], + [struct obstack *mem;obstack_free(mem,(char *) 0)], + am_cv_func_obstack=yes, + am_cv_func_obstack=no)]) + if test $am_cv_func_obstack = yes; then + AC_DEFINE(HAVE_OBSTACK) + else + LIBOBJS="$LIBOBJS obstack.o" + fi +]) + +dnl From Jim Meyering. Use this if you use the GNU error.[ch]. +dnl FIXME: Migrate into libit + +AC_DEFUN([AM_FUNC_ERROR_AT_LINE], +[AC_CACHE_CHECK([for error_at_line], am_cv_lib_error_at_line, + [AC_TRY_LINK([],[error_at_line(0, 0, "", 0, "");], + am_cv_lib_error_at_line=yes, + am_cv_lib_error_at_line=no)]) + if test $am_cv_lib_error_at_line = no; then + LIBOBJS="$LIBOBJS error.o" + fi + AC_SUBST(LIBOBJS)dnl +]) + +# Macro to add for using GNU gettext. +# Ulrich Drepper , 1995. + +# serial 1 +# Stephan Kulow: I put a KDE in it to avoid name conflicts + +AC_DEFUN([AM_KDE_GNU_GETTEXT], + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + AC_REQUIRE([AM_KDE_WITH_NLS])dnl + AC_CHECK_HEADERS([limits.h locale.h nl_types.h string.h values.h alloca.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setlocale strchr strcasecmp \ +__argz_count __argz_stringify __argz_next]) + + AC_MSG_CHECKING(for stpcpy) + AC_CACHE_VAL(kde_cv_func_stpcpy, + [ + kde_safe_cxxflags=$CXXFLAGS + CXXFLAGS="-Werror" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_COMPILE([ + #include + ], + [ + char buffer[200]; + stpcpy(buffer, buffer); + ], + kde_cv_func_stpcpy=yes, + kde_cv_func_stpcpy=no) + AC_LANG_RESTORE + CXXFLAGS=$kde_safe_cxxflags + ]) + AC_MSG_RESULT($kde_cv_func_stpcpy) + if eval "test \"`echo $kde_cv_func_stpcpy`\" = yes"; then + AC_DEFINE(HAVE_STPCPY, 1, [Define if you have stpcpy]) + fi + + AM_LC_MESSAGES + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + done + LINGUAS=$NEW_LINGUAS + AC_MSG_RESULT($LINGUAS) + fi + + dnl Construct list of names of catalog files to be constructed. + if test -n "$LINGUAS"; then + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done + fi + fi + + ]) + +AC_DEFUN([AC_HAVE_XPM], + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$XPM_LDFLAGS" && XPM_LDFLAGS= + test -z "$XPM_INCLUDE" && XPM_INCLUDE= + + AC_ARG_WITH(xpm,AC_HELP_STRING([--without-xpm],[disable color pixmap XPM tests]), + xpm_test=$withval, xpm_test="yes") + if test "x$xpm_test" = xno; then + ac_cv_have_xpm=no + else + AC_MSG_CHECKING(for XPM) + AC_CACHE_VAL(ac_cv_have_xpm, + [ + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + if test "x$kde_use_qt_emb" != "xyes" && test "x$kde_use_qt_mac" != "xyes"; then + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm -lX11 -lXext $LIBZ $LIBSOCKET" + else + LDFLAGS="$LDFLAGS $X_LDFLAGS $USER_LDFLAGS $LDFLAGS $XPM_LDFLAGS $all_libraries -lXpm $LIBZ $LIBSOCKET" + fi + CFLAGS="$CFLAGS $X_INCLUDES $USER_INCLUDES" + test -n "$XPM_INCLUDE" && CFLAGS="-I$XPM_INCLUDE $CFLAGS" + AC_TRY_LINK([#include ],[], + ac_cv_have_xpm="yes",ac_cv_have_xpm="no") + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + ])dnl + + if test "$ac_cv_have_xpm" = no; then + AC_MSG_RESULT(no) + XPM_LDFLAGS="" + XPMINC="" + $2 + else + AC_DEFINE(HAVE_XPM, 1, [Define if you have XPM support]) + if test "$XPM_LDFLAGS" = ""; then + XPMLIB='-lXpm $(LIB_X11)' + else + XPMLIB="-L$XPM_LDFLAGS -lXpm "'$(LIB_X11)' + fi + if test "$XPM_INCLUDE" = ""; then + XPMINC="" + else + XPMINC="-I$XPM_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + AC_SUBST(XPMINC) + AC_SUBST(XPMLIB) +]) + +AC_DEFUN([AC_HAVE_DPMS], + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$DPMS_LDFLAGS" && DPMS_LDFLAGS= + test -z "$DPMS_INCLUDE" && DPMS_INCLUDE= + DPMS_LIB= + + AC_ARG_WITH(dpms,AC_HELP_STRING([--without-dpms],[disable DPMS power saving]), + dpms_test=$withval, dpms_test="yes") + if test "x$dpms_test" = xno; then + ac_cv_have_dpms=no + else + AC_MSG_CHECKING(for DPMS) + dnl Note: ac_cv_have_dpms can be no, yes, or -lXdpms. + dnl 'yes' means DPMS_LIB="", '-lXdpms' means DPMS_LIB="-lXdpms". + AC_CACHE_VAL(ac_cv_have_dpms, + [ + if test "x$kde_use_qt_emb" = "xyes" || test "x$kde_use_qt_mac" = "xyes"; then + AC_MSG_RESULT(no) + ac_cv_have_dpms="no" + else + ac_save_ldflags="$LDFLAGS" + ac_save_cflags="$CFLAGS" + ac_save_libs="$LIBS" + LDFLAGS="$LDFLAGS $DPMS_LDFLAGS $all_libraries" + LIBS="-lX11 -lXext $LIBSOCKET" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + ac_cv_have_dpms="yes", [ + LIBS="-lXdpms $LIBS" + AC_TRY_LINK([ + #include + #include + #include + #include + int foo_test_dpms() + { return DPMSSetTimeouts( 0, 0, 0, 0 ); }],[], + [ + ac_cv_have_dpms="-lXdpms" + ],ac_cv_have_dpms="no") + ]) + LDFLAGS="$ac_save_ldflags" + CFLAGS="$ac_save_cflags" + LIBS="$ac_save_libs" + fi + ])dnl + + if test "$ac_cv_have_dpms" = no; then + AC_MSG_RESULT(no) + DPMS_LDFLAGS="" + DPMSINC="" + $2 + else + AC_DEFINE(HAVE_DPMS, 1, [Define if you have DPMS support]) + if test "$ac_cv_have_dpms" = "-lXdpms"; then + DPMS_LIB="-lXdpms" + fi + if test "$DPMS_LDFLAGS" = ""; then + DPMSLIB="$DPMS_LIB "'$(LIB_X11)' + else + DPMSLIB="$DPMS_LDFLAGS $DPMS_LIB "'$(LIB_X11)' + fi + if test "$DPMS_INCLUDE" = ""; then + DPMSINC="" + else + DPMSINC="-I$DPMS_INCLUDE" + fi + AC_MSG_RESULT(yes) + $1 + fi + fi + ac_save_cflags="$CFLAGS" + CFLAGS="$CFLAGS $X_INCLUDES" + test -n "$DPMS_INCLUDE" && CFLAGS="-I$DPMS_INCLUDE $CFLAGS" + AH_TEMPLATE(HAVE_DPMSCAPABLE_PROTO, + [Define if you have the DPMSCapable prototype in ]) + AC_CHECK_DECL(DPMSCapable, + AC_DEFINE(HAVE_DPMSCAPABLE_PROTO),, + [#include + #include ]) + AH_TEMPLATE(HAVE_DPMSINFO_PROTO, + [Define if you have the DPMSInfo prototype in ]) + AC_CHECK_DECL(DPMSInfo, + AC_DEFINE(HAVE_DPMSINFO_PROTO),, + [#include + #include ]) + CFLAGS="$ac_save_cflags" + AC_SUBST(DPMSINC) + AC_SUBST(DPMSLIB) +]) + +AC_DEFUN([AC_HAVE_GL], + [AC_REQUIRE_CPP()dnl + AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) + + test -z "$GL_LDFLAGS" && GL_LDFLAGS= + test -z "$GL_INCLUDE" && GL_INCLUDE= + + AC_ARG_WITH(gl,AC_HELP_STRING([--without-gl],[disable 3D GL modes]), + gl_test=$withval, gl_test="yes") + if test "x$kde_use_qt_emb" = "xyes"; then + # GL and Qt Embedded is a no-go for now. + ac_cv_have_gl=no + elif test "x$gl_test" = xno; then + ac_cv_have_gl=no + else + AC_MSG_CHECKING(for GL) + AC_CACHE_VAL(ac_cv_have_gl, + [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_ldflags=$LDFLAGS + ac_save_cxxflags=$CXXFLAGS + ac_save_libs=$LIBS + LDFLAGS="$LDFLAGS $GL_LDFLAGS $X_LDFLAGS $all_libraries" + LIBS="$LIBS -lGL -lGLU" + test "x$kde_use_qt_mac" != xyes && test "x$kde_use_qt_emb" != xyes && LIBS="$LIBS -lX11" + LIBS="$LIBS $LIB_XEXT -lm $LIBSOCKET" + CXXFLAGS="$CFLAGS $X_INCLUDES" + test -n "$GL_INCLUDE" && CFLAGS="-I$GL_INCLUDE $CFLAGS" + AC_TRY_LINK([#include +#include +], [], + ac_cv_have_gl="yes", ac_cv_have_gl="no") + AC_LANG_RESTORE + LDFLAGS=$ac_save_ldflags + CXXFLAGS=$ac_save_cxxflags + LIBS=$ac_save_libs + ])dnl + + if test "$ac_cv_have_gl" = "no"; then + AC_MSG_RESULT(no) + GL_LDFLAGS="" + GLINC="" + $2 + else + AC_DEFINE(HAVE_GL, 1, [Defines if you have GL (Mesa, OpenGL, ...)]) + if test "$GL_LDFLAGS" = ""; then + GLLIB='-lGLU -lGL $(LIB_X11)' + else + GLLIB="$GL_LDFLAGS -lGLU -lGL "'$(LIB_X11)' + fi + if test "$GL_INCLUDE" = ""; then + GLINC="" + else + GLINC="-I$GL_INCLUDE" + fi + AC_MSG_RESULT($ac_cv_have_gl) + $1 + fi + fi + AC_SUBST(GLINC) + AC_SUBST(GLLIB) +]) + + + dnl shadow password and PAM magic - maintained by ossi@kde.org + +AC_DEFUN([KDE_PAM], [ + AC_REQUIRE([KDE_CHECK_LIBDL]) + + want_pam= + AC_ARG_WITH(pam, + AC_HELP_STRING([--with-pam[=ARG]],[enable support for PAM: ARG=[yes|no|service name]]), + [ if test "x$withval" = "xyes"; then + want_pam=yes + pam_service=kde + elif test "x$withval" = "xno"; then + want_pam=no + else + want_pam=yes + pam_service=$withval + fi + ], [ pam_service=kde ]) + + use_pam= + PAMLIBS= + if test "x$want_pam" != xno; then + AC_CHECK_LIB(pam, pam_start, [ + AC_CHECK_HEADER(security/pam_appl.h, + [ pam_header=security/pam_appl.h ], + [ AC_CHECK_HEADER(pam/pam_appl.h, + [ pam_header=pam/pam_appl.h ], + [ + AC_MSG_WARN([PAM detected, but no headers found! +Make sure you have the necessary development packages installed.]) + ] + ) + ] + ) + ], , $LIBDL) + if test -z "$pam_header"; then + if test "x$want_pam" = xyes; then + AC_MSG_ERROR([--with-pam was specified, but cannot compile with PAM!]) + fi + else + AC_DEFINE(HAVE_PAM, 1, [Defines if you have PAM (Pluggable Authentication Modules)]) + PAMLIBS="$PAM_MISC_LIB -lpam $LIBDL" + use_pam=yes + + dnl darwin claims to be something special + if test "$pam_header" = "pam/pam_appl.h"; then + AC_DEFINE(HAVE_PAM_PAM_APPL_H, 1, [Define if your PAM headers are in pam/ instead of security/]) + fi + + dnl test whether struct pam_message is const (Linux) or not (Sun) + AC_MSG_CHECKING(for const pam_message) + AC_EGREP_HEADER([struct pam_message], $pam_header, + [ AC_EGREP_HEADER([const struct pam_message], $pam_header, + [AC_MSG_RESULT([const: Linux-type PAM])], + [AC_MSG_RESULT([nonconst: Sun-type PAM]) + AC_DEFINE(PAM_MESSAGE_NONCONST, 1, [Define if your PAM support takes non-const arguments (Solaris)])] + )], + [AC_MSG_RESULT([not found - assume const, Linux-type PAM])]) + fi + fi + + AC_SUBST(PAMLIBS) +]) + +dnl DEF_PAM_SERVICE(arg name, full name, define name) +AC_DEFUN([DEF_PAM_SERVICE], [ + AC_ARG_WITH($1-pam, + AC_HELP_STRING([--with-$1-pam=[val]],[override PAM service from --with-pam for $2]), + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE=$withval + else + AC_MSG_ERROR([Cannot use use --with-$1-pam, as no PAM was detected. +You may want to enforce it by using --with-pam.]) + fi + ], + [ if test "x$use_pam" = xyes; then + $3_PAM_SERVICE="$pam_service" + fi + ]) + if test -n "$$3_PAM_SERVICE"; then + AC_MSG_RESULT([The PAM service used by $2 will be $$3_PAM_SERVICE]) + AC_DEFINE_UNQUOTED($3_PAM_SERVICE, "$$3_PAM_SERVICE", [The PAM service to be used by $2]) + fi + AC_SUBST($3_PAM_SERVICE) +]) + +AC_DEFUN([KDE_SHADOWPASSWD], [ + AC_REQUIRE([KDE_PAM]) + + AC_CHECK_LIB(shadow, getspent, + [ LIBSHADOW="-lshadow" + ac_use_shadow=yes + ], + [ dnl for UnixWare + AC_CHECK_LIB(gen, getspent, + [ LIBGEN="-lgen" + ac_use_shadow=yes + ], + [ AC_CHECK_FUNC(getspent, + [ ac_use_shadow=yes ], + [ ac_use_shadow=no ]) + ]) + ]) + AC_SUBST(LIBSHADOW) + AC_SUBST(LIBGEN) + + AC_MSG_CHECKING([for shadow passwords]) + + AC_ARG_WITH(shadow, + AC_HELP_STRING([--with-shadow],[If you want shadow password support]), + [ if test "x$withval" != "xno"; then + use_shadow=yes + else + use_shadow=no + fi + ], [ + use_shadow="$ac_use_shadow" + ]) + + if test "x$use_shadow" = xyes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_SHADOW, 1, [Define if you use shadow passwords]) + else + AC_MSG_RESULT(no) + LIBSHADOW= + LIBGEN= + fi + + dnl finally make the relevant binaries setuid root, if we have shadow passwds. + dnl this still applies, if we could use it indirectly through pam. + if test "x$use_shadow" = xyes || + ( test "x$use_pam" = xyes && test "x$ac_use_shadow" = xyes ); then + case $host in + *-*-freebsd* | *-*-netbsd* | *-*-openbsd*) + SETUIDFLAGS="-m 4755 -o root";; + *) + SETUIDFLAGS="-m 4755";; + esac + fi + AC_SUBST(SETUIDFLAGS) + +]) + +AC_DEFUN([KDE_PASSWDLIBS], [ + AC_REQUIRE([KDE_MISC_TESTS]) dnl for LIBCRYPT + AC_REQUIRE([KDE_PAM]) + AC_REQUIRE([KDE_SHADOWPASSWD]) + + if test "x$use_pam" = "xyes"; then + PASSWDLIBS="$PAMLIBS" + else + PASSWDLIBS="$LIBCRYPT $LIBSHADOW $LIBGEN" + fi + + dnl FreeBSD uses a shadow-like setup, where /etc/passwd holds the users, but + dnl /etc/master.passwd holds the actual passwords. /etc/master.passwd requires + dnl root to read, so kcheckpass needs to be root (even when using pam, since pam + dnl may need to read /etc/master.passwd). + case $host in + *-*-freebsd*) + SETUIDFLAGS="-m 4755 -o root" + ;; + *) + ;; + esac + + AC_SUBST(PASSWDLIBS) +]) + +AC_DEFUN([KDE_CHECK_LIBDL], +[ +AC_CHECK_LIB(dl, dlopen, [ +LIBDL="-ldl" +ac_cv_have_dlfcn=yes +]) + +AC_CHECK_LIB(dld, shl_unload, [ +LIBDL="-ldld" +ac_cv_have_shload=yes +]) + +AC_SUBST(LIBDL) +]) + +AC_DEFUN([KDE_CHECK_DLOPEN], +[ +KDE_CHECK_LIBDL +AC_CHECK_HEADERS(dlfcn.h dl.h) +if test "$ac_cv_header_dlfcn_h" = "no"; then + ac_cv_have_dlfcn=no +fi + +if test "$ac_cv_header_dl_h" = "no"; then + ac_cv_have_shload=no +fi + +dnl XXX why change enable_dlopen? its already set by autoconf's AC_ARG_ENABLE +dnl (MM) +AC_ARG_ENABLE(dlopen, +AC_HELP_STRING([--disable-dlopen],[link statically [default=no]]), +enable_dlopen=$enableval, +enable_dlopen=yes) + +# override the user's opinion, if we know it better ;) +if test "$ac_cv_have_dlfcn" = "no" && test "$ac_cv_have_shload" = "no"; then + enable_dlopen=no +fi + +if test "$ac_cv_have_dlfcn" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_DLFCN, 1, [Define if you have dlfcn]) +fi + +if test "$ac_cv_have_shload" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_SHLOAD, 1, [Define if you have shload]) +fi + +if test "$enable_dlopen" = no ; then + test -n "$1" && eval $1 +else + test -n "$2" && eval $2 +fi + +]) + +AC_DEFUN([KDE_CHECK_DYNAMIC_LOADING], +[ +KDE_CHECK_DLOPEN(libtool_enable_shared=yes, libtool_enable_static=no) +KDE_PROG_LIBTOOL +AC_MSG_CHECKING([dynamic loading]) +eval "`egrep '^build_libtool_libs=' libtool`" +if test "$build_libtool_libs" = "yes" && test "$enable_dlopen" = "yes"; then + dynamic_loading=yes + AC_DEFINE_UNQUOTED(HAVE_DYNAMIC_LOADING) +else + dynamic_loading=no +fi +AC_MSG_RESULT($dynamic_loading) +if test "$dynamic_loading" = "yes"; then + $1 +else + $2 +fi +]) + +AC_DEFUN([KDE_ADD_INCLUDES], +[ +if test -z "$1"; then + test_include="Pix.h" +else + test_include="$1" +fi + +AC_MSG_CHECKING([for libg++ ($test_include)]) + +AC_CACHE_VAL(kde_cv_libgpp_includes, +[ +kde_cv_libgpp_includes=no + + for ac_dir in \ + \ + /usr/include/g++ \ + /usr/include \ + /usr/unsupported/include \ + /opt/include \ + $extra_include \ + ; \ + do + if test -r "$ac_dir/$test_include"; then + kde_cv_libgpp_includes=$ac_dir + break + fi + done +]) + +AC_MSG_RESULT($kde_cv_libgpp_includes) +if test "$kde_cv_libgpp_includes" != "no"; then + all_includes="-I$kde_cv_libgpp_includes $all_includes $USER_INCLUDES" +fi +]) +]) + +AC_DEFUN([KDE_CHECK_LIBPTHREAD], +[ + dnl This code is here specifically to handle the + dnl various flavors of threading library on FreeBSD + dnl 4-, 5-, and 6-, and the (weird) rules around it. + dnl There may be an environment PTHREAD_LIBS that + dnl specifies what to use; otherwise, search for it. + dnl -pthread is special cased and unsets LIBPTHREAD + dnl below if found. + LIBPTHREAD="" + + if test -n "$PTHREAD_LIBS"; then + if test "x$PTHREAD_LIBS" = "x-pthread" ; then + LIBPTHREAD="PTHREAD" + else + PTHREAD_LIBS_save="$PTHREAD_LIBS" + PTHREAD_LIBS=`echo "$PTHREAD_LIBS_save" | sed -e 's,^-l,,g'` + AC_MSG_CHECKING([for pthread_create in $PTHREAD_LIBS]) + KDE_CHECK_LIB($PTHREAD_LIBS, pthread_create, [ + LIBPTHREAD="$PTHREAD_LIBS_save"]) + PTHREAD_LIBS="$PTHREAD_LIBS_save" + fi + fi + + dnl Is this test really needed, in the face of the Tru64 test below? + if test -z "$LIBPTHREAD"; then + AC_CHECK_LIB(pthread, pthread_create, [LIBPTHREAD="-lpthread"]) + fi + + dnl This is a special Tru64 check, see BR 76171 issue #18. + if test -z "$LIBPTHREAD" ; then + AC_MSG_CHECKING([for pthread_create in -lpthread]) + kde_safe_libs=$LIBS + LIBS="$LIBS -lpthread" + AC_TRY_LINK([#include ],[(void)pthread_create(0,0,0,0);],[ + AC_MSG_RESULT(yes) + LIBPTHREAD="-lpthread"],[ + AC_MSG_RESULT(no)]) + LIBS=$kde_safe_libs + fi + + dnl Un-special-case for FreeBSD. + if test "x$LIBPTHREAD" = "xPTHREAD" ; then + LIBPTHREAD="" + fi + + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN([KDE_CHECK_PTHREAD_OPTION], +[ + USE_THREADS="" + if test -z "$LIBPTHREAD"; then + KDE_CHECK_COMPILER_FLAG(pthread, [USE_THREADS="-D_THREAD_SAFE -pthread"]) + fi + + AH_VERBATIM(__svr_define, [ +#if defined(__SVR4) && !defined(__svr4__) +#define __svr4__ 1 +#endif +]) + case $host_os in + solaris*) + KDE_CHECK_COMPILER_FLAG(mt, [USE_THREADS="-mt"]) + CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4" + ;; + freebsd*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE $PTHREAD_CFLAGS" + ;; + aix*) + CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" + LIBPTHREAD="$LIBPTHREAD -lc_r" + ;; + linux*) CPPFLAGS="$CPPFLAGS -D_REENTRANT" + if test "$CXX" = "KCC"; then + CXXFLAGS="$CXXFLAGS --thread_safe" + NOOPT_CXXFLAGS="$NOOPT_CXXFLAGS --thread_safe" + fi + ;; + *) + ;; + esac + AC_SUBST(USE_THREADS) + AC_SUBST(LIBPTHREAD) +]) + +AC_DEFUN([KDE_CHECK_THREADING], +[ + AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) + AC_REQUIRE([KDE_CHECK_PTHREAD_OPTION]) + dnl default is yes if libpthread is found and no if no libpthread is available + if test -z "$LIBPTHREAD"; then + if test -z "$USE_THREADS"; then + kde_check_threading_default=no + else + kde_check_threading_default=yes + fi + else + kde_check_threading_default=yes + fi + AC_ARG_ENABLE(threading,AC_HELP_STRING([--disable-threading],[disables threading even if libpthread found]), + kde_use_threading=$enableval, kde_use_threading=$kde_check_threading_default) + if test "x$kde_use_threading" = "xyes"; then + AC_DEFINE(HAVE_LIBPTHREAD, 1, [Define if you have a working libpthread (will enable threaded code)]) + fi +]) + +AC_DEFUN([KDE_TRY_LINK_PYTHON], +[ +if test "$kde_python_link_found" = no; then + +if test "$1" = normal; then + AC_MSG_CHECKING(if a Python application links) +else + AC_MSG_CHECKING(if Python depends on $2) +fi + +AC_CACHE_VAL(kde_cv_try_link_python_$1, +[ +kde_save_cflags="$CFLAGS" +CFLAGS="$CFLAGS $PYTHONINC" +kde_save_libs="$LIBS" +LIBS="$LIBS $LIBPYTHON $2 $LIBDL $LIBSOCKET" +kde_save_ldflags="$LDFLAGS" +LDFLAGS="$LDFLAGS $PYTHONLIB" + +AC_TRY_LINK( +[ +#include +],[ + PySys_SetArgv(1, 0); +], + [kde_cv_try_link_python_$1=yes], + [kde_cv_try_link_python_$1=no] +) +CFLAGS="$kde_save_cflags" +LIBS="$kde_save_libs" +LDFLAGS="$kde_save_ldflags" +]) + +if test "$kde_cv_try_link_python_$1" = "yes"; then + AC_MSG_RESULT(yes) + kde_python_link_found=yes + if test ! "$1" = normal; then + LIBPYTHON="$LIBPYTHON $2" + fi + $3 +else + AC_MSG_RESULT(no) + $4 +fi + +fi + +]) + +AC_DEFUN([KDE_CHECK_PYTHON_DIR], +[ +AC_MSG_CHECKING([for Python directory]) + +AC_CACHE_VAL(kde_cv_pythondir, +[ + if test -z "$PYTHONDIR"; then + kde_cv_pythondir=/usr/local + else + kde_cv_pythondir="$PYTHONDIR" + fi +]) + +AC_ARG_WITH(pythondir, +AC_HELP_STRING([--with-pythondir=pythondir],[use python installed in pythondir]), +[ + ac_python_dir=$withval +], ac_python_dir=$kde_cv_pythondir +) + +AC_MSG_RESULT($ac_python_dir) +]) + +AC_DEFUN([KDE_CHECK_PYTHON_INTERN], +[ +AC_REQUIRE([KDE_CHECK_LIBDL]) +AC_REQUIRE([KDE_CHECK_LIBPTHREAD]) +AC_REQUIRE([KDE_CHECK_PYTHON_DIR]) + +if test -z "$1"; then + version="1.5" +else + version="$1" +fi + +AC_MSG_CHECKING([for Python$version]) + +python_incdirs="$ac_python_dir/include /usr/include /usr/local/include/ $kde_extra_includes" +AC_FIND_FILE(Python.h, $python_incdirs, python_incdir) +if test ! -r $python_incdir/Python.h; then + AC_FIND_FILE(python$version/Python.h, $python_incdirs, python_incdir) + python_incdir=$python_incdir/python$version + if test ! -r $python_incdir/Python.h; then + python_incdir=no + fi +fi + +PYTHONINC=-I$python_incdir + +python_libdirs="$ac_python_dir/lib$kdelibsuff /usr/lib$kdelibsuff /usr/local /usr/lib$kdelibsuff $kde_extra_libs" +AC_FIND_FILE(libpython$version.so, $python_libdirs, python_libdir) +if test ! -r $python_libdir/libpython$version.so; then + AC_FIND_FILE(libpython$version.a, $python_libdirs, python_libdir) + if test ! -r $python_libdir/libpython$version.a; then + AC_FIND_FILE(python$version/config/libpython$version.a, $python_libdirs, python_libdir) + python_libdir=$python_libdir/python$version/config + if test ! -r $python_libdir/libpython$version.a; then + python_libdir=no + fi + fi +fi + +PYTHONLIB=-L$python_libdir +kde_orig_LIBPYTHON=$LIBPYTHON +if test -z "$LIBPYTHON"; then + LIBPYTHON=-lpython$version +fi + +AC_FIND_FILE(python$version/copy.py, $python_libdirs, python_moddir) +python_moddir=$python_moddir/python$version +if test ! -r $python_moddir/copy.py; then + python_moddir=no +fi + +PYTHONMODDIR=$python_moddir + +AC_MSG_RESULT(header $python_incdir library $python_libdir modules $python_moddir) + +if test x$python_incdir = xno || test x$python_libdir = xno || test x$python_moddir = xno; then + LIBPYTHON=$kde_orig_LIBPYTHON + test "x$PYTHONLIB" = "x-Lno" && PYTHONLIB="" + test "x$PYTHONINC" = "x-Ino" && PYTHONINC="" + $2 +else + dnl Note: this test is very weak + kde_python_link_found=no + KDE_TRY_LINK_PYTHON(normal) + KDE_TRY_LINK_PYTHON(m, -lm) + KDE_TRY_LINK_PYTHON(pthread, $LIBPTHREAD) + KDE_TRY_LINK_PYTHON(tcl, -ltcl) + KDE_TRY_LINK_PYTHON(db2, -ldb2) + KDE_TRY_LINK_PYTHON(m_and_thread, [$LIBPTHREAD -lm]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_util, [$LIBPTHREAD -lm -lutil]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db3, [$LIBPTHREAD -lm -ldb-3 -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_db3, [$LIBPTHREAD -ldb-3]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db, [$LIBPTHREAD -lm -ldb -ltermcap -lutil]) + KDE_TRY_LINK_PYTHON(pthread_and_dl, [$LIBPTHREAD $LIBDL -lutil -lreadline -lncurses -lm]) + KDE_TRY_LINK_PYTHON(pthread_and_panel_curses, [$LIBPTHREAD $LIBDL -lm -lpanel -lcurses]) + KDE_TRY_LINK_PYTHON(m_and_thread_and_db_special, [$LIBPTHREAD -lm -ldb -lutil], [], + [AC_MSG_WARN([it seems, Python depends on another library. + Please set LIBPYTHON to '-lpython$version -lotherlib' before calling configure to fix this + and contact the authors to let them know about this problem]) + ]) + + LIBPYTHON="$LIBPYTHON $LIBDL $LIBSOCKET" + AC_SUBST(PYTHONINC) + AC_SUBST(PYTHONLIB) + AC_SUBST(LIBPYTHON) + AC_SUBST(PYTHONMODDIR) + AC_DEFINE(HAVE_PYTHON, 1, [Define if you have the development files for python]) +fi + +]) + + +AC_DEFUN([KDE_CHECK_PYTHON], +[ + KDE_CHECK_PYTHON_INTERN("2.5", + [KDE_CHECK_PYTHON_INTERN("2.4", + [KDE_CHECK_PYTHON_INTERN("2.3", + [KDE_CHECK_PYTHON_INTERN("2.2", + [KDE_CHECK_PYTHON_INTERN("2.1", + [KDE_CHECK_PYTHON_INTERN("2.0", + [KDE_CHECK_PYTHON_INTERN($1, $2) ]) + ]) + ]) + ]) + ]) + ]) +]) + +AC_DEFUN([KDE_CHECK_STL], +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="`echo $CXXFLAGS | sed s/-fno-exceptions//`" + + AC_MSG_CHECKING([if C++ programs can be compiled]) + AC_CACHE_VAL(kde_cv_stl_works, + [ + AC_TRY_COMPILE([ +#include +using namespace std; +],[ + string astring="Hallo Welt."; + astring.erase(0, 6); // now astring is "Welt" + return 0; +], kde_cv_stl_works=yes, + kde_cv_stl_works=no) +]) + + AC_MSG_RESULT($kde_cv_stl_works) + + if test "$kde_cv_stl_works" = "yes"; then + # back compatible + AC_DEFINE_UNQUOTED(HAVE_SGI_STL, 1, [Define if you have a STL implementation by SGI]) + else + AC_MSG_ERROR([Your Installation isn't able to compile simple C++ programs. +Check config.log for details - if you're using a Linux distribution you might miss +a package named similar to libstdc++-dev.]) + fi + + CXXFLAGS="$ac_save_CXXFLAGS" + AC_LANG_RESTORE +]) + +AC_DEFUN([AC_FIND_QIMGIO], + [AC_REQUIRE([AC_FIND_JPEG]) +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for qimgio]) +AC_CACHE_VAL(ac_cv_lib_qimgio, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_save_LIBS="$LIBS" +ac_save_CXXFLAGS="$CXXFLAGS" +LIBS="$all_libraries -lqimgio -lpng -lz $LIBJPEG $LIBQT" +CXXFLAGS="$CXXFLAGS -I$qt_incdir $all_includes" +AC_TRY_RUN(dnl +[ +#include +#include +int main() { + QString t = "hallo"; + t.fill('t'); + qInitImageIO(); +} +], + ac_cv_lib_qimgio=yes, + ac_cv_lib_qimgio=no, + ac_cv_lib_qimgio=no) +LIBS="$ac_save_LIBS" +CXXFLAGS="$ac_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +if eval "test \"`echo $ac_cv_lib_qimgio`\" = yes"; then + LIBQIMGIO="-lqimgio -lpng -lz $LIBJPEG" + AC_MSG_RESULT(yes) + AC_DEFINE_UNQUOTED(HAVE_QIMGIO, 1, [Define if you have the Qt extension qimgio available]) + AC_SUBST(LIBQIMGIO) +else + AC_MSG_RESULT(not found) +fi +]) + +AC_DEFUN([AM_DISABLE_LIBRARIES], +[ + AC_PROVIDE([AM_ENABLE_STATIC]) + AC_PROVIDE([AM_ENABLE_SHARED]) + enable_static=no + enable_shared=yes +]) + + +AC_DEFUN([AC_CHECK_UTMP_FILE], +[ + AC_MSG_CHECKING([for utmp file]) + + AC_CACHE_VAL(kde_cv_utmp_file, + [ + kde_cv_utmp_file=no + + for ac_file in \ + \ + /var/run/utmp \ + /var/adm/utmp \ + /etc/utmp \ + ; \ + do + if test -r "$ac_file"; then + kde_cv_utmp_file=$ac_file + break + fi + done + ]) + + if test "$kde_cv_utmp_file" != "no"; then + AC_DEFINE_UNQUOTED(UTMP, "$kde_cv_utmp_file", [Define the file for utmp entries]) + $1 + AC_MSG_RESULT($kde_cv_utmp_file) + else + $2 + AC_MSG_RESULT([non found]) + fi +]) + + +AC_DEFUN([KDE_CREATE_SUBDIRSLIST], +[ + +DO_NOT_COMPILE="$DO_NOT_COMPILE CVS debian bsd-port admin" +TOPSUBDIRS="" + +if test ! -s $srcdir/subdirs; then + dnl Note: Makefile.common creates subdirs, so this is just a fallback + files=`cd $srcdir && ls -1` + dirs=`for i in $files; do if test -d $i; then echo $i; fi; done` + for i in $dirs; do + echo $i >> $srcdir/subdirs + done +fi + +ac_topsubdirs= +if test -s $srcdir/inst-apps; then + ac_topsubdirs="`cat $srcdir/inst-apps`" +elif test -s $srcdir/subdirs; then + ac_topsubdirs="`cat $srcdir/subdirs`" +fi + +for i in $ac_topsubdirs; do + AC_MSG_CHECKING([if $i should be compiled]) + if test -d $srcdir/$i; then + install_it="yes" + for j in $DO_NOT_COMPILE; do + if test $i = $j; then + install_it="no" + fi + done + else + install_it="no" + fi + AC_MSG_RESULT($install_it) + vari=`echo $i | sed -e 's,[[-+.@]],_,g'` + if test $install_it = "yes"; then + TOPSUBDIRS="$TOPSUBDIRS $i" + eval "$vari""_SUBDIR_included=yes" + else + eval "$vari""_SUBDIR_included=no" + fi +done + +AC_SUBST(TOPSUBDIRS) +]) + +AC_DEFUN([KDE_CHECK_NAMESPACES], +[ +AC_MSG_CHECKING(whether C++ compiler supports namespaces) +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +AC_TRY_COMPILE([ +], +[ +namespace Foo { + extern int i; + namespace Bar { + extern int i; + } +} + +int Foo::i = 0; +int Foo::Bar::i = 1; +],[ + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_NAMESPACES) +], [ +AC_MSG_RESULT(no) +]) +AC_LANG_RESTORE +]) + +dnl ------------------------------------------------------------------------ +dnl Check for S_ISSOCK macro. Doesn't exist on Unix SCO. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_CHECK_S_ISSOCK], +[ +AC_MSG_CHECKING(for S_ISSOCK) +AC_CACHE_VAL(ac_cv_have_s_issock, +[ +AC_TRY_LINK( +[ +#include +], +[ +struct stat buff; +int b = S_ISSOCK( buff.st_mode ); +], +ac_cv_have_s_issock=yes, +ac_cv_have_s_issock=no) +]) +AC_MSG_RESULT($ac_cv_have_s_issock) +if test "$ac_cv_have_s_issock" = "yes"; then + AC_DEFINE_UNQUOTED(HAVE_S_ISSOCK, 1, [Define if sys/stat.h declares S_ISSOCK.]) +fi + +AH_VERBATIM(_ISSOCK, +[ +#ifndef HAVE_S_ISSOCK +#define HAVE_S_ISSOCK +#define S_ISSOCK(mode) (1==0) +#endif +]) + +]) + +dnl ------------------------------------------------------------------------ +dnl Check for MAXPATHLEN macro, defines KDEMAXPATHLEN. faure@kde.org +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([AC_CHECK_KDEMAXPATHLEN], +[ +AC_MSG_CHECKING(for MAXPATHLEN) +AC_CACHE_VAL(ac_cv_maxpathlen, +[ +cat > conftest.$ac_ext < +#endif +#include +#include +#ifndef MAXPATHLEN +#define MAXPATHLEN 1024 +#endif + +KDE_HELLO MAXPATHLEN + +EOF + +ac_try="$ac_cpp conftest.$ac_ext 2>/dev/null | grep '^KDE_HELLO' >conftest.out" + +if AC_TRY_EVAL(ac_try) && test -s conftest.out; then + ac_cv_maxpathlen=`sed 's#KDE_HELLO ##' conftest.out` +else + ac_cv_maxpathlen=1024 +fi + +rm conftest.* + +]) +AC_MSG_RESULT($ac_cv_maxpathlen) +AC_DEFINE_UNQUOTED(KDEMAXPATHLEN,$ac_cv_maxpathlen, [Define a safe value for MAXPATHLEN] ) +]) + +AC_DEFUN([KDE_CHECK_HEADER], +[ + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_CHECK_HEADER([$1], [$2], [$3], [$4]) + AC_LANG_RESTORE + CPPFLAGS=$kde_safe_cppflags +]) + +AC_DEFUN([KDE_CHECK_HEADERS], +[ + AH_CHECK_HEADERS([$1]) + AC_LANG_SAVE + kde_safe_cppflags=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $all_includes" + AC_LANG_CPLUSPLUS + AC_CHECK_HEADERS([$1], [$2], [$3], [$4]) + CPPFLAGS=$kde_safe_cppflags + AC_LANG_RESTORE +]) + +AC_DEFUN([KDE_FAST_CONFIGURE], +[ + dnl makes configure fast (needs perl) + AC_ARG_ENABLE(fast-perl, AC_HELP_STRING([--disable-fast-perl],[disable fast Makefile generation (needs perl)]), + with_fast_perl=$enableval, with_fast_perl=yes) +]) + +AC_DEFUN([KDE_CONF_FILES], +[ + val= + if test -f $srcdir/configure.files ; then + val=`sed -e 's%^%\$(top_srcdir)/%' $srcdir/configure.files` + fi + CONF_FILES= + if test -n "$val" ; then + for i in $val ; do + CONF_FILES="$CONF_FILES $i" + done + fi + AC_SUBST(CONF_FILES) +])dnl + +dnl This sets the prefix, for arts and kdelibs +dnl Do NOT use in any other module. +dnl It only looks at --prefix, KDEDIR and falls back to /usr/local/kde +AC_DEFUN([KDE_SET_PREFIX_CORE], +[ + unset CDPATH + dnl make $KDEDIR the default for the installation + AC_PREFIX_DEFAULT(${KDEDIR:-/usr/local/kde}) + + if test "x$prefix" = "xNONE"; then + prefix=$ac_default_prefix + ac_configure_args="$ac_configure_args --prefix=$prefix" + fi + # And delete superfluous '/' to make compares easier + prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + + kde_libs_prefix='$(prefix)' + kde_libs_htmldir='$(kde_htmldir)' + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + + +AC_DEFUN([KDE_SET_PREFIX], +[ + unset CDPATH + dnl We can't give real code to that macro, only a value. + dnl It only matters for --help, since we set the prefix in this function anyway. + AC_PREFIX_DEFAULT(${KDEDIR:-the kde prefix}) + + KDE_SET_DEFAULT_BINDIRS + if test "x$prefix" = "xNONE"; then + dnl no prefix given: look for kde-config in the PATH and deduce the prefix from it + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) + else + dnl prefix given: look for kde-config, preferrably in prefix, otherwise in PATH + kde_save_PATH="$PATH" + PATH="$exec_prefix/bin:$prefix/bin:$PATH" + KDE_FIND_PATH(kde-config, KDECONFIG, [$kde_default_bindirs], [KDE_MISSING_PROG_ERROR(kde-config)], [], prepend) + PATH="$kde_save_PATH" + fi + + kde_libs_prefix=`$KDECONFIG --prefix` + if test -z "$kde_libs_prefix" || test ! -x "$kde_libs_prefix"; then + AC_MSG_ERROR([$KDECONFIG --prefix outputed the non existant prefix '$kde_libs_prefix' for kdelibs. + This means it has been moved since you installed it. + This won't work. Please recompile kdelibs for the new prefix. + ]) + fi + kde_libs_htmldir=`$KDECONFIG --install html --expandvars` + + AC_MSG_CHECKING([where to install]) + if test "x$prefix" = "xNONE"; then + prefix=$kde_libs_prefix + AC_MSG_RESULT([$prefix (as returned by kde-config)]) + else + dnl --prefix was given. Compare prefixes and warn (in configure.in.bot.end) if different + given_prefix=$prefix + AC_MSG_RESULT([$prefix (as requested)]) + fi + + # And delete superfluous '/' to make compares easier + prefix=`echo "$prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + exec_prefix=`echo "$exec_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + given_prefix=`echo "$given_prefix" | sed 's,//*,/,g' | sed -e 's,/$,,'` + + AC_SUBST(KDECONFIG) + AC_SUBST(kde_libs_prefix) + AC_SUBST(kde_libs_htmldir) + + KDE_FAST_CONFIGURE + KDE_CONF_FILES +]) + +pushdef([AC_PROG_INSTALL], +[ + dnl our own version, testing for a -p flag + popdef([AC_PROG_INSTALL]) + dnl as AC_PROG_INSTALL works as it works we first have + dnl to save if the user didn't specify INSTALL, as the + dnl autoconf one overwrites INSTALL and we have no chance to find + dnl out afterwards + test -n "$INSTALL" && kde_save_INSTALL_given=$INSTALL + test -n "$INSTALL_PROGRAM" && kde_save_INSTALL_PROGRAM_given=$INSTALL_PROGRAM + test -n "$INSTALL_SCRIPT" && kde_save_INSTALL_SCRIPT_given=$INSTALL_SCRIPT + AC_PROG_INSTALL + + if test -z "$kde_save_INSTALL_given" ; then + # OK, user hasn't given any INSTALL, autoconf found one for us + # now we test, if it supports the -p flag + AC_MSG_CHECKING(for -p flag to install) + rm -f confinst.$$.* > /dev/null 2>&1 + echo "Testtest" > confinst.$$.orig + ac_res=no + if ${INSTALL} -p confinst.$$.orig confinst.$$.new > /dev/null 2>&1 ; then + if test -f confinst.$$.new ; then + # OK, -p seems to do no harm to install + INSTALL="${INSTALL} -p" + ac_res=yes + fi + fi + rm -f confinst.$$.* + AC_MSG_RESULT($ac_res) + fi + dnl the following tries to resolve some signs and wonders coming up + dnl with different autoconf/automake versions + dnl e.g.: + dnl *automake 1.4 install-strip sets A_M_INSTALL_PROGRAM_FLAGS to -s + dnl and has INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(A_M_INSTALL_PROGRAM_FLAGS) + dnl it header-vars.am, so there the actual INSTALL_PROGRAM gets the -s + dnl *automake 1.4a (and above) use INSTALL_STRIP_FLAG and only has + dnl INSTALL_PROGRAM = @INSTALL_PROGRAM@ there, but changes the + dnl install-@DIR@PROGRAMS targets to explicitly use that flag + dnl *autoconf 2.13 is dumb, and thinks it can use INSTALL_PROGRAM as + dnl INSTALL_SCRIPT, which breaks with automake <= 1.4 + dnl *autoconf >2.13 (since 10.Apr 1999) has not that failure + dnl *sometimes KDE does not use the install-@DIR@PROGRAM targets from + dnl automake (due to broken Makefile.am or whatever) to install programs, + dnl and so does not see the -s flag in automake > 1.4 + dnl to clean up that mess we: + dnl +set INSTALL_PROGRAM to use INSTALL_STRIP_FLAG + dnl which cleans KDE's program with automake > 1.4; + dnl +set INSTALL_SCRIPT to only use INSTALL, to clean up autoconf's problems + dnl with automake<=1.4 + dnl note that dues to this sometimes two '-s' flags are used (if KDE + dnl properly uses install-@DIR@PROGRAMS, but I don't care + dnl + dnl And to all this comes, that I even can't write in comments variable + dnl names used by automake, because it is so stupid to think I wanted to + dnl _use_ them, therefor I have written A_M_... instead of AM_ + dnl hmm, I wanted to say something ... ahh yes: Arghhh. + + if test -z "$kde_save_INSTALL_PROGRAM_given" ; then + INSTALL_PROGRAM='${INSTALL} $(INSTALL_STRIP_FLAG)' + fi + if test -z "$kde_save_INSTALL_SCRIPT_given" ; then + INSTALL_SCRIPT='${INSTALL}' + fi +])dnl + +AC_DEFUN([KDE_LANG_CPLUSPLUS], +[AC_LANG_CPLUSPLUS +ac_link='rm -rf SunWS_cache; ${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&AC_FD_CC' +pushdef([AC_LANG_CPLUSPLUS], [popdef([AC_LANG_CPLUSPLUS]) KDE_LANG_CPLUSPLUS]) +]) + +pushdef([AC_LANG_CPLUSPLUS], +[popdef([AC_LANG_CPLUSPLUS]) +KDE_LANG_CPLUSPLUS +]) + +AC_DEFUN([KDE_CHECK_LONG_LONG], +[ +AC_MSG_CHECKING(for long long) +AC_CACHE_VAL(kde_cv_c_long_long, +[ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_TRY_LINK([], [ + long long foo = 0; + foo = foo+1; + ], + kde_cv_c_long_long=yes, kde_cv_c_long_long=no) + AC_LANG_RESTORE +]) +AC_MSG_RESULT($kde_cv_c_long_long) +if test "$kde_cv_c_long_long" = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have long long as datatype]) +fi +]) + +AC_DEFUN([KDE_CHECK_LIB], +[ + kde_save_LDFLAGS="$LDFLAGS" + dnl AC_CHECK_LIB modifies LIBS, so save it here + kde_save_LIBS="$LIBS" + LDFLAGS="$LDFLAGS $all_libraries" + case $host_os in + aix*) LDFLAGS="-brtl $LDFLAGS" + test "$GCC" = yes && LDFLAGS="-Wl,$LDFLAGS" + ;; + esac + AC_CHECK_LIB($1, $2, $3, $4, $5) + LDFLAGS="$kde_save_LDFLAGS" + LIBS="$kde_save_LIBS" +]) + +AC_DEFUN([KDE_JAVA_PREFIX], +[ + dir=`dirname "$1"` + base=`basename "$1"` + list=`ls -1 $dir 2> /dev/null` + for entry in $list; do + if test -d $dir/$entry/bin; then + case $entry in + $base) + javadirs="$javadirs $dir/$entry/bin" + ;; + esac + elif test -d $dir/$entry/jre/bin; then + case $entry in + $base) + javadirs="$javadirs $dir/$entry/jre/bin" + ;; + esac + fi + done +]) + +dnl KDE_CHEC_JAVA_DIR(onlyjre) +AC_DEFUN([KDE_CHECK_JAVA_DIR], +[ + +AC_ARG_WITH(java, +AC_HELP_STRING([--with-java=javadir],[use java installed in javadir, --without-java disables]), +[ ac_java_dir=$withval +], ac_java_dir="" +) + +AC_MSG_CHECKING([for Java]) + +dnl at this point ac_java_dir is either a dir, 'no' to disable, or '' to say look in $PATH +if test "x$ac_java_dir" = "xno"; then + kde_java_bindir=no + kde_java_includedir=no + kde_java_libjvmdir=no + kde_java_libgcjdir=no + kde_java_libhpidir=no +else + if test "x$ac_java_dir" = "x"; then + + + dnl No option set -> collect list of candidate paths + if test -n "$JAVA_HOME"; then + KDE_JAVA_PREFIX($JAVA_HOME) + fi + KDE_JAVA_PREFIX(/usr/j2se) + KDE_JAVA_PREFIX(/usr/lib/j2se) + KDE_JAVA_PREFIX(/usr/j*dk*) + KDE_JAVA_PREFIX(/usr/lib/j*dk*) + KDE_JAVA_PREFIX(/opt/j*sdk*) + KDE_JAVA_PREFIX(/usr/lib/java*) + KDE_JAVA_PREFIX(/usr/java*) + KDE_JAVA_PREFIX(/usr/java/j*dk*) + KDE_JAVA_PREFIX(/usr/java/j*re*) + KDE_JAVA_PREFIX(/usr/lib/SunJava2*) + KDE_JAVA_PREFIX(/usr/lib/SunJava*) + KDE_JAVA_PREFIX(/usr/lib/IBMJava2*) + KDE_JAVA_PREFIX(/usr/lib/IBMJava*) + KDE_JAVA_PREFIX(/opt/java*) + + kde_cv_path="NONE" + kde_save_IFS=$IFS + IFS=':' + for dir in $PATH; do + if test -d "$dir"; then + javadirs="$javadirs $dir" + fi + done + IFS=$kde_save_IFS + jredirs= + + dnl Now javadirs contains a list of paths that exist, all ending with bin/ + for dir in $javadirs; do + dnl Check for the java executable + if test -x "$dir/java"; then + dnl And also check for a libjvm.so somewhere under there + dnl Since we have to go to the parent dir, /usr/bin is excluded, /usr is too big. + if test "$dir" != "/usr/bin"; then + libjvmdir=`find $dir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` + if test ! -f $libjvmdir/libjvm.so; then continue; fi + jredirs="$jredirs $dir" + fi + fi + done + + dnl Now jredirs contains a reduced list, of paths where both java and ../**/libjvm.so was found + JAVAC= + JAVA= + kde_java_bindir=no + for dir in $jredirs; do + JAVA="$dir/java" + kde_java_bindir=$dir + if test -x "$dir/javac"; then + JAVAC="$dir/javac" + break + fi + done + + if test -n "$JAVAC"; then + dnl this substitution might not work - well, we test for jni.h below + kde_java_includedir=`echo $JAVAC | sed -e 's,bin/javac$,include/,'` + else + kde_java_includedir=no + fi + else + dnl config option set + kde_java_bindir=$ac_java_dir/bin + if test -x $ac_java_dir/bin/java && test ! -x $ac_java_dir/bin/javac; then + kde_java_includedir=no + else + kde_java_includedir=$ac_java_dir/include + fi + fi +fi + +dnl At this point kde_java_bindir and kde_java_includedir are either set or "no" +if test "x$kde_java_bindir" != "xno"; then + + dnl Look for libjvm.so + kde_java_libjvmdir=`find $kde_java_bindir/.. -name libjvm.so | sed 's,libjvm.so,,'|head -n 1` + dnl Look for libgcj.so + kde_java_libgcjdir=`find $kde_java_bindir/.. -name libgcj.so | sed 's,libgcj.so,,'|head -n 1` + dnl Look for libhpi.so and avoid green threads + kde_java_libhpidir=`find $kde_java_bindir/.. -name libhpi.so | grep -v green | sed 's,libhpi.so,,' | head -n 1` + + dnl Now check everything's fine under there + dnl the include dir is our flag for having the JDK + if test -d "$kde_java_includedir"; then + if test ! -x "$kde_java_bindir/javac"; then + AC_MSG_ERROR([javac not found under $kde_java_bindir - it seems you passed a wrong --with-java.]) + fi + if test ! -x "$kde_java_bindir/javah"; then + AC_MSG_ERROR([javah not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -x "$kde_java_bindir/jar"; then + AC_MSG_ERROR([jar not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + if test ! -r "$kde_java_includedir/jni.h"; then + AC_MSG_ERROR([jni.h not found under $kde_java_includedir. Use --with-java or --without-java.]) + fi + + jni_includes="-I$kde_java_includedir" + dnl Strange thing, jni.h requires jni_md.h which is under genunix here.. + dnl and under linux here.. + + dnl not needed for gcj + + if test "x$kde_java_libgcjdir" = "x"; then + test -d "$kde_java_includedir/linux" && jni_includes="$jni_includes -I$kde_java_includedir/linux" + test -d "$kde_java_includedir/solaris" && jni_includes="$jni_includes -I$kde_java_includedir/solaris" + test -d "$kde_java_includedir/genunix" && jni_includes="$jni_includes -I$kde_java_includedir/genunix" + fi + + else + JAVAC= + jni_includes= + fi + + if test "x$kde_java_libgcjdir" = "x"; then + if test ! -r "$kde_java_libjvmdir/libjvm.so"; then + AC_MSG_ERROR([libjvm.so not found under $kde_java_libjvmdir. Use --without-java.]) + fi + else + if test ! -r "$kde_java_libgcjdir/libgcj.so"; then + AC_MSG_ERROR([libgcj.so not found under $kde_java_libgcjdir. Use --without-java.]) + fi + fi + + if test ! -x "$kde_java_bindir/java"; then + AC_MSG_ERROR([java not found under $kde_java_bindir. javac was found though! Use --with-java or --without-java.]) + fi + + dnl not needed for gcj compile + + if test "x$kde_java_libgcjdir" = "x"; then + if test ! -r "$kde_java_libhpidir/libhpi.so"; then + AC_MSG_ERROR([libhpi.so not found under $kde_java_libhpidir. Use --without-java.]) + fi + fi + + if test -n "$jni_includes"; then + dnl Check for JNI version + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + ac_cxxflags_safe="$CXXFLAGS" + CXXFLAGS="$CXXFLAGS $all_includes $jni_includes" + + AC_TRY_COMPILE([ + #include + ], + [ + #ifndef JNI_VERSION_1_2 + Syntax Error + #endif + ],[ kde_jni_works=yes ], + [ kde_jni_works=no ]) + + if test $kde_jni_works = no; then + AC_MSG_ERROR([Incorrect version of $kde_java_includedir/jni.h. + You need to have Java Development Kit (JDK) version 1.2. + + Use --with-java to specify another location. + Use --without-java to configure without java support. + Or download a newer JDK and try again. + See e.g. http://java.sun.com/products/jdk/1.2 ]) + fi + + CXXFLAGS="$ac_cxxflags_safe" + AC_LANG_RESTORE + + dnl All tests ok, inform and subst the variables + + JAVAC=$kde_java_bindir/javac + JAVAH=$kde_java_bindir/javah + JAR=$kde_java_bindir/jar + AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) + if test "x$kde_java_libgcjdir" = "x"; then + JVMLIBS="-L$kde_java_libjvmdir -ljvm -L$kde_java_libhpidir -lhpi" + else + JVMLIBS="-L$kde_java_libgcjdir -lgcj" + fi + AC_MSG_RESULT([java JDK in $kde_java_bindir]) + + else + AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) + AC_MSG_RESULT([java JRE in $kde_java_bindir]) + fi +elif test -d "/Library/Java/Home"; then + kde_java_bindir="/Library/Java/Home/bin" + jni_includes="-I/Library/Java/Home/include" + + JAVAC=$kde_java_bindir/javac + JAVAH=$kde_java_bindir/javah + JAR=$kde_java_bindir/jar + JVMLIBS="-Wl,-framework,JavaVM" + + AC_DEFINE_UNQUOTED(PATH_JAVA, "$kde_java_bindir/java", [Define where your java executable is]) + AC_MSG_RESULT([Apple Java Framework]) +else + AC_MSG_RESULT([none found]) +fi + +AC_SUBST(JAVAC) +AC_SUBST(JAVAH) +AC_SUBST(JAR) +AC_SUBST(JVMLIBS) +AC_SUBST(jni_includes) + +# for backward compat +kde_cv_java_includedir=$kde_java_includedir +kde_cv_java_bindir=$kde_java_bindir +]) + +dnl this is a redefinition of autoconf 2.5x's AC_FOREACH. +dnl When the argument list becomes big, as in KDE for AC_OUTPUT in +dnl big packages, m4_foreach is dog-slow. So use our own version of +dnl it. (matz@kde.org) +m4_define([mm_foreach], +[m4_pushdef([$1])_mm_foreach($@)m4_popdef([$1])]) +m4_define([mm_car], [[$1]]) +m4_define([mm_car2], [[$@]]) +m4_define([_mm_foreach], +[m4_if(m4_quote($2), [], [], + [m4_define([$1], mm_car($2))$3[]_mm_foreach([$1], + mm_car2(m4_shift($2)), + [$3])])]) +m4_define([AC_FOREACH], +[mm_foreach([$1], m4_split(m4_normalize([$2])), [$3])]) + +AC_DEFUN([KDE_NEED_FLEX], +[ +kde_libs_safe=$LIBS +LIBS="$LIBS $USER_LDFLAGS" +AM_PROG_LEX +LIBS=$kde_libs_safe +if test -z "$LEXLIB"; then + AC_MSG_ERROR([You need to have flex installed.]) +fi +AC_SUBST(LEXLIB) +]) + +AC_DEFUN([AC_PATH_QTOPIA], +[ + dnl TODO: use AC_CACHE_VAL + + if test -z "$1"; then + qtopia_minver_maj=1 + qtopia_minver_min=5 + qtopia_minver_pat=0 + else + qtopia_minver_maj=`echo "$1" | sed -e "s/^\(.*\)\..*\..*$/\1/"` + qtopia_minver_min=`echo "$1" | sed -e "s/^.*\.\(.*\)\..*$/\1/"` + qtopia_minver_pat=`echo "$1" | sed -e "s/^.*\..*\.\(.*\)$/\1/"` + fi + + qtopia_minver="$qtopia_minver_maj$qtopia_minver_min$qtopia_minver_pat" + qtopia_minverstr="$qtopia_minver_maj.$qtopia_minver_min.$qtopia_minver_pat" + + AC_REQUIRE([AC_PATH_QT]) + + AC_MSG_CHECKING([for Qtopia]) + + LIB_QTOPIA="-lqpe" + AC_SUBST(LIB_QTOPIA) + + kde_qtopia_dirs="$QPEDIR /opt/Qtopia" + + ac_qtopia_incdir=NO + + AC_ARG_WITH(qtopia-dir, + AC_HELP_STRING([--with-qtopia-dir=DIR],[where the root of Qtopia is installed]), + [ ac_qtopia_incdir="$withval"/include] ) + + qtopia_incdirs="" + for dir in $kde_qtopia_dirs; do + qtopia_incdirs="$qtopia_incdirs $dir/include" + done + + if test ! "$ac_qtopia_incdir" = "NO"; then + qtopia_incdirs="$ac_qtopia_incdir $qtopia_incdirs" + fi + + qtopia_incdir="" + AC_FIND_FILE(qpe/qpeapplication.h, $qtopia_incdirs, qtopia_incdir) + ac_qtopia_incdir="$qtopia_incdir" + + if test -z "$qtopia_incdir"; then + AC_MSG_ERROR([Cannot find Qtopia headers. Please check your installation.]) + fi + + qtopia_ver_maj=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION "\(.*\)\..*\..*".*,\1,p'`; + qtopia_ver_min=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\.\(.*\)\..*".*,\1,p'`; + qtopia_ver_pat=`cat $qtopia_incdir/qpe/version.h | sed -n -e 's,.*QPE_VERSION ".*\..*\.\(.*\)".*,\1,p'`; + + qtopia_ver="$qtopia_ver_maj$qtopia_ver_min$qtopia_ver_pat" + qtopia_verstr="$qtopia_ver_maj.$qtopia_ver_min.$qtopia_ver_pat" + if test "$qtopia_ver" -lt "$qtopia_minver"; then + AC_MSG_ERROR([found Qtopia version $qtopia_verstr but version $qtopia_minverstr +is required.]) + fi + + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + + ac_cxxflags_safe="$CXXFLAGS" + ac_ldflags_safe="$LDFLAGS" + ac_libs_safe="$LIBS" + + CXXFLAGS="$CXXFLAGS -I$qtopia_incdir $all_includes" + LDFLAGS="$LDFLAGS $QT_LDFLAGS $all_libraries $USER_LDFLAGS $KDE_MT_LDFLAGS" + LIBS="$LIBS $LIB_QTOPIA $LIBQT" + + cat > conftest.$ac_ext < +#include + +int main( int argc, char **argv ) +{ + QPEApplication app( argc, argv ); + return 0; +} +EOF + + if AC_TRY_EVAL(ac_link) && test -s conftest; then + rm -f conftest* + else + rm -f conftest* + AC_MSG_ERROR([Cannot link small Qtopia Application. For more details look at +the end of config.log]) + fi + + CXXFLAGS="$ac_cxxflags_safe" + LDFLAGS="$ac_ldflags_safe" + LIBS="$ac_libs_safe" + + AC_LANG_RESTORE + + QTOPIA_INCLUDES="-I$qtopia_incdir" + AC_SUBST(QTOPIA_INCLUDES) + + AC_MSG_RESULT([found version $qtopia_verstr with headers at $qtopia_incdir]) +]) + + +AC_DEFUN([KDE_INIT_DOXYGEN], +[ +AC_MSG_CHECKING([for Qt docs]) +kde_qtdir= +if test "${with_qt_dir+set}" = set; then + kde_qtdir="$with_qt_dir" +fi + +AC_FIND_FILE(qsql.html, [ $kde_qtdir/doc/html $QTDIR/doc/html /usr/share/doc/packages/qt3/html /usr/lib/qt/doc /usr/lib/qt3/doc /usr/lib/qt3/doc/html /usr/doc/qt3/html /usr/doc/qt3 /usr/share/doc/qt3-doc /usr/share/qt3/doc/html /usr/X11R6/share/doc/qt/html ], QTDOCDIR) +AC_MSG_RESULT($QTDOCDIR) + +AC_SUBST(QTDOCDIR) + +KDE_FIND_PATH(dot, DOT, [], []) +if test -n "$DOT"; then + KDE_HAVE_DOT="YES" +else + KDE_HAVE_DOT="NO" +fi +AC_SUBST(KDE_HAVE_DOT) +KDE_FIND_PATH(doxygen, DOXYGEN, [], []) +AC_SUBST(DOXYGEN) + +DOXYGEN_PROJECT_NAME="$1" +DOXYGEN_PROJECT_NUMBER="$2" +AC_SUBST(DOXYGEN_PROJECT_NAME) +AC_SUBST(DOXYGEN_PROJECT_NUMBER) + +KDE_HAS_DOXYGEN=no +if test -n "$DOXYGEN" && test -x "$DOXYGEN" && test -f $QTDOCDIR/qsql.html; then + KDE_HAS_DOXYGEN=yes +fi +AC_SUBST(KDE_HAS_DOXYGEN) + +]) + + +AC_DEFUN([AC_FIND_BZIP2], +[ +AC_MSG_CHECKING([for bzDecompress in libbz2]) +AC_CACHE_VAL(ac_cv_lib_bzip2, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lbz2 $LIBSOCKET" +kde_save_CXXFLAGS="$CXXFLAGS" +CXXFLAGS="$CXXFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#define BZ_NO_STDIO +#include +], + [ bz_stream s; (void) bzDecompress(&s); ], + eval "ac_cv_lib_bzip2='-lbz2'", + eval "ac_cv_lib_bzip2=no") +LIBS="$kde_save_LIBS" +CXXFLAGS="$kde_save_CXXFLAGS" +AC_LANG_RESTORE +])dnl +AC_MSG_RESULT($ac_cv_lib_bzip2) + +if test ! "$ac_cv_lib_bzip2" = no; then + BZIP2DIR=bzip2 + + LIBBZ2="$ac_cv_lib_bzip2" + AC_SUBST(LIBBZ2) + +else + + cxx_shared_flag= + ld_shared_flag= + KDE_CHECK_COMPILER_FLAG(shared, [ + ld_shared_flag="-shared" + ]) + KDE_CHECK_COMPILER_FLAG(fPIC, [ + cxx_shared_flag="-fPIC" + ]) + + AC_MSG_CHECKING([for BZ2_bzDecompress in (shared) libbz2]) + AC_CACHE_VAL(ac_cv_lib_bzip2_prefix, + [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + kde_save_LIBS="$LIBS" + LIBS="$all_libraries $USER_LDFLAGS $ld_shared_flag -lbz2 $LIBSOCKET" + kde_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$CFLAGS $cxx_shared_flag $all_includes $USER_INCLUDES" + + AC_TRY_LINK(dnl + [ + #define BZ_NO_STDIO + #include + ], + [ bz_stream s; (void) BZ2_bzDecompress(&s); ], + eval "ac_cv_lib_bzip2_prefix='-lbz2'", + eval "ac_cv_lib_bzip2_prefix=no") + LIBS="$kde_save_LIBS" + CXXFLAGS="$kde_save_CXXFLAGS" + AC_LANG_RESTORE + ])dnl + + AC_MSG_RESULT($ac_cv_lib_bzip2_prefix) + + if test ! "$ac_cv_lib_bzip2_prefix" = no; then + BZIP2DIR=bzip2 + + LIBBZ2="$ac_cv_lib_bzip2_prefix" + AC_SUBST(LIBBZ2) + + AC_DEFINE(NEED_BZ2_PREFIX, 1, [Define if the libbz2 functions need the BZ2_ prefix]) + dnl else, we just ignore this + fi + +fi +AM_CONDITIONAL(include_BZIP2, test -n "$BZIP2DIR") +]) + +dnl ------------------------------------------------------------------------ +dnl Try to find the SSL headers and libraries. +dnl $(SSL_LDFLAGS) will be -Lsslliblocation (if needed) +dnl and $(SSL_INCLUDES) will be -Isslhdrlocation (if needed) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN([KDE_CHECK_SSL], +[ +LIBSSL="-lssl -lcrypto" +AC_REQUIRE([KDE_CHECK_LIB64]) + +ac_ssl_includes=NO ac_ssl_libraries=NO +ssl_libraries="" +ssl_includes="" +AC_ARG_WITH(ssl-dir, + AC_HELP_STRING([--with-ssl-dir=DIR],[where the root of OpenSSL is installed]), + [ ac_ssl_includes="$withval"/include + ac_ssl_libraries="$withval"/lib$kdelibsuff + ]) + +want_ssl=yes +AC_ARG_WITH(ssl, + AC_HELP_STRING([--without-ssl],[disable SSL checks]), + [want_ssl=$withval]) + +if test $want_ssl = yes; then + +AC_MSG_CHECKING(for OpenSSL) + +AC_CACHE_VAL(ac_cv_have_ssl, +[#try to guess OpenSSL locations + + ssl_incdirs="/usr/include /usr/local/include /usr/ssl/include /usr/local/ssl/include $prefix/include $kde_extra_includes" + ssl_incdirs="$ac_ssl_includes $ssl_incdirs" + AC_FIND_FILE(openssl/ssl.h, $ssl_incdirs, ssl_incdir) + ac_ssl_includes="$ssl_incdir" + + ssl_libdirs="/usr/lib$kdelibsuff /usr/local/lib$kdelibsuff /usr/ssl/lib$kdelibsuff /usr/local/ssl/lib$kdelibsuff $libdir $prefix/lib$kdelibsuff $exec_prefix/lib$kdelibsuff $kde_extra_libs" + if test ! "$ac_ssl_libraries" = "NO"; then + ssl_libdirs="$ac_ssl_libraries $ssl_libdirs" + fi + + test=NONE + ssl_libdir=NONE + for dir in $ssl_libdirs; do + try="ls -1 $dir/libssl*" + if test=`eval $try 2> /dev/null`; then ssl_libdir=$dir; break; else echo "tried $dir" >&AC_FD_CC ; fi + done + + ac_ssl_libraries="$ssl_libdir" + + ac_ldflags_safe="$LDFLAGS" + ac_libs_safe="$LIBS" + + LDFLAGS="$LDFLAGS -L$ssl_libdir $all_libraries" + LIBS="$LIBS $LIBSSL -lRSAglue -lrsaref" + + AC_TRY_LINK(,void RSAPrivateEncrypt(void);RSAPrivateEncrypt();, + ac_ssl_rsaref="yes" + , + ac_ssl_rsaref="no" + ) + + LDFLAGS="$ac_ldflags_safe" + LIBS="$ac_libs_safe" + + if test "$ac_ssl_includes" = NO || test "$ac_ssl_libraries" = NO; then + have_ssl=no + else + have_ssl=yes; + fi + + ]) + + eval "$ac_cv_have_ssl" + + AC_MSG_RESULT([libraries $ac_ssl_libraries, headers $ac_ssl_includes]) + + AC_MSG_CHECKING([whether OpenSSL uses rsaref]) + AC_MSG_RESULT($ac_ssl_rsaref) + + AC_MSG_CHECKING([for easter eggs]) + AC_MSG_RESULT([none found]) + +else + have_ssl=no +fi + +if test "$have_ssl" = yes; then + AC_MSG_CHECKING(for OpenSSL version) + dnl Check for SSL version + AC_CACHE_VAL(ac_cv_ssl_version, + [ + + cat >conftest.$ac_ext < +#include + int main() { + +#ifndef OPENSSL_VERSION_NUMBER + printf("ssl_version=\\"error\\"\n"); +#else + if (OPENSSL_VERSION_NUMBER < 0x00906000) + printf("ssl_version=\\"old\\"\n"); + else + printf("ssl_version=\\"ok\\"\n"); +#endif + return (0); + } +EOF + + ac_save_CPPFLAGS=$CPPFLAGS + if test "$ac_ssl_includes" != "/usr/include"; then + CPPFLAGS="$CPPFLAGS -I$ac_ssl_includes" + fi + + if AC_TRY_EVAL(ac_link); then + + if eval `./conftest 2>&5`; then + if test $ssl_version = error; then + AC_MSG_ERROR([$ssl_incdir/openssl/opensslv.h doesn't define OPENSSL_VERSION_NUMBER !]) + else + if test $ssl_version = old; then + AC_MSG_WARN([OpenSSL version too old. Upgrade to 0.9.6 at least, see http://www.openssl.org. SSL support disabled.]) + have_ssl=no + fi + fi + ac_cv_ssl_version="ssl_version=$ssl_version" + else + AC_MSG_ERROR([Your system couldn't run a small SSL test program. + Check config.log, and if you can't figure it out, send a mail to + David Faure , attaching your config.log]) + fi + + else + AC_MSG_ERROR([Your system couldn't link a small SSL test program. + Check config.log, and if you can't figure it out, send a mail to + David Faure , attaching your config.log]) + fi + CPPFLAGS=$ac_save_CPPFLAGS + + ]) + + eval "$ac_cv_ssl_version" + AC_MSG_RESULT($ssl_version) +fi + +if test "$have_ssl" != yes; then + LIBSSL=""; +else + AC_DEFINE(HAVE_SSL, 1, [If we are going to use OpenSSL]) + ac_cv_have_ssl="have_ssl=yes \ + ac_ssl_includes=$ac_ssl_includes ac_ssl_libraries=$ac_ssl_libraries ac_ssl_rsaref=$ac_ssl_rsaref" + + + ssl_libraries="$ac_ssl_libraries" + ssl_includes="$ac_ssl_includes" + + if test "$ac_ssl_rsaref" = yes; then + LIBSSL="-lssl -lcrypto -lRSAglue -lrsaref" + fi + + if test $ssl_version = "old"; then + AC_DEFINE(HAVE_OLD_SSL_API, 1, [Define if you have OpenSSL < 0.9.6]) + fi +fi + +SSL_INCLUDES= + +if test "$ssl_includes" = "/usr/include"; then + if test -f /usr/kerberos/include/krb5.h; then + SSL_INCLUDES="-I/usr/kerberos/include" + fi +elif test "$ssl_includes" != "/usr/local/include" && test -n "$ssl_includes"; then + SSL_INCLUDES="-I$ssl_includes" +fi + +if test "$ssl_libraries" = "/usr/lib" || test "$ssl_libraries" = "/usr/local/lib" || test -z "$ssl_libraries" || test "$ssl_libraries" = "NONE"; then + SSL_LDFLAGS="" +else + SSL_LDFLAGS="-L$ssl_libraries -R$ssl_libraries" +fi + +AC_SUBST(SSL_INCLUDES) +AC_SUBST(SSL_LDFLAGS) +AC_SUBST(LIBSSL) +]) + +AC_DEFUN([KDE_CHECK_STRLCPY], +[ + AC_REQUIRE([AC_CHECK_STRLCAT]) + AC_REQUIRE([AC_CHECK_STRLCPY]) + AC_CHECK_SIZEOF(size_t) + AC_CHECK_SIZEOF(unsigned long) + + AC_MSG_CHECKING([sizeof size_t == sizeof unsigned long]) + AC_TRY_COMPILE(,[ + #if SIZEOF_SIZE_T != SIZEOF_UNSIGNED_LONG + choke me + #endif + ],AC_MSG_RESULT([yes]),[ + AC_MSG_RESULT(no) + AC_MSG_ERROR([ + Apparently on your system our assumption sizeof size_t == sizeof unsigned long + does not apply. Please mail kde-devel@kde.org with a description of your system! + ]) + ]) +]) + +AC_DEFUN([KDE_CHECK_BINUTILS], +[ + AC_MSG_CHECKING([if ld supports unversioned version maps]) + + kde_save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" + echo "{ local: extern \"C++\" { foo }; };" > conftest.map + AC_TRY_LINK([int foo;], +[ +#ifdef __INTEL_COMPILER +icc apparently does not support libtools version-info and version-script +at the same time. Dunno where the bug is, but until somebody figured out, +better disable the optional version scripts. +#endif + + foo = 42; +], kde_supports_versionmaps=yes, kde_supports_versionmaps=no) + LDFLAGS="$kde_save_LDFLAGS" + rm -f conftest.map + AM_CONDITIONAL(include_VERSION_SCRIPT, + [test "$kde_supports_versionmaps" = "yes" && test "$kde_use_debug_code" = "no"]) + + AC_MSG_RESULT($kde_supports_versionmaps) +]) + +AC_DEFUN([AM_PROG_OBJC],[ +AC_CHECK_PROGS(OBJC, gcc, gcc) +test -z "$OBJC" && AC_MSG_ERROR([no acceptable objective-c gcc found in \$PATH]) +if test "x${OBJCFLAGS-unset}" = xunset; then + OBJCFLAGS="-g -O2" +fi +AC_SUBST(OBJCFLAGS) +_AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES(OBJC)]) +]) + +AC_DEFUN([KDE_CHECK_PERL], +[ + KDE_FIND_PATH(perl, PERL, [$bindir $exec_prefix/bin $prefix/bin], [ + AC_MSG_ERROR([No Perl found in your $PATH. +We need perl to generate some code.]) + ]) + AC_SUBST(PERL) +]) + +AC_DEFUN([KDE_CHECK_LARGEFILE], +[ +AC_SYS_LARGEFILE +if test "$ac_cv_sys_file_offset_bits" != no; then + CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" +fi + +if test "x$ac_cv_sys_large_files" != "xno"; then + CPPFLAGS="$CPPFLAGS -D_LARGE_FILES=1" +fi + +]) + +dnl A small extension to PKG_CHECK_MODULES (defined in pkg.m4.in) +dnl which allows to search for libs that get installed into the KDE prefix. +dnl +dnl Syntax: KDE_PKG_CHECK_MODULES(KSTUFF, libkexif >= 0.2 glib = 1.3.4, action-if, action-not) +dnl defines KSTUFF_LIBS, KSTUFF_CFLAGS, see pkg-config man page +dnl also defines KSTUFF_PKG_ERRORS on error +AC_DEFUN([KDE_PKG_CHECK_MODULES], [ + + PKG_CONFIG_PATH="$prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" + if test "$prefix" != "$kde_libs_prefix"; then + PKG_CONFIG_PATH="$kde_libs_prefix/lib${kdelibsuff}/pkgconfig:$PKG_CONFIG_PATH" + fi + export PKG_CONFIG_PATH + PKG_CHECK_MODULES([$1],[$2],[$3],[$4]) +]) + + +dnl Check for PIE support in the compiler and linker +AC_DEFUN([KDE_CHECK_PIE_SUPPORT], +[ + AC_CACHE_CHECK([for PIE support], kde_cv_val_pie_support, + [ + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + safe_CXXFLAGS=$CXXFLAGS + safe_LDFLAGS=$LDFLAGS + CXXFLAGS="$CXXFLAGS -fPIE" + LDFLAGS="$LDFLAGS -pie" + + AC_TRY_LINK([int foo;], [], [kde_cv_val_pie_support=yes], [kde_cv_val_pie_support=no]) + + CXXFLAGS=$safe_CXXFLAGS + LDFLAGS=$safe_LDFLAGS + AC_LANG_RESTORE + ]) + + AC_MSG_CHECKING(if enabling -pie/fPIE support) + + AC_ARG_ENABLE(pie, + AC_HELP_STRING([--enable-pie],[platform supports PIE linking [default=detect]]), + [kde_has_pie_support=$enableval], + [kde_has_pie_support=detect]) + + if test "$kde_has_pie_support" = "detect"; then + kde_has_pie_support=$kde_cv_val_pie_support + fi + + AC_MSG_RESULT([$kde_has_pie_support]) + + KDE_USE_FPIE="" + KDE_USE_PIE="" + + AC_SUBST([KDE_USE_FPIE]) + AC_SUBST([KDE_USE_PIE]) + + if test "$kde_has_pie_support" = "yes"; then + KDE_USE_FPIE="-fPIE" + KDE_USE_PIE="-pie" + fi +]) +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- +## Copyright 1996, 1997, 1998, 1999, 2000, 2001 +## Free Software Foundation, Inc. +## Originally by Gordon Matzigkeit , 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 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. +## +## 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. + +# serial 47 AC_PROG_LIBTOOL + + +# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) +# ----------------------------------------------------------- +# If this macro is not defined by Autoconf, define it here. +m4_ifdef([AC_PROVIDE_IFELSE], + [], + [m4_define([AC_PROVIDE_IFELSE], + [m4_ifdef([AC_PROVIDE_$1], + [$2], [$3])])]) + + +# AC_PROG_LIBTOOL +# --------------- +AC_DEFUN([AC_PROG_LIBTOOL], +[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl +dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX +dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [AC_LIBTOOL_CXX], + [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX + ])]) +dnl And a similar setup for Fortran 77 support + AC_PROVIDE_IFELSE([AC_PROG_F77], + [AC_LIBTOOL_F77], + [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77 +])]) + +dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. +dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run +dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. + AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], + [AC_LIBTOOL_GCJ], + [ifdef([AC_PROG_GCJ], + [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([A][M_PROG_GCJ], + [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])]) + ifdef([LT_AC_PROG_GCJ], + [define([LT_AC_PROG_GCJ], + defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])]) +])])# AC_PROG_LIBTOOL + + +# _AC_PROG_LIBTOOL +# ---------------- +AC_DEFUN([_AC_PROG_LIBTOOL], +[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl +AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl +AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl +AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool --silent' +AC_SUBST(LIBTOOL)dnl + +# Prevent multiple expansion +define([AC_PROG_LIBTOOL], []) +])# _AC_PROG_LIBTOOL + + +# AC_LIBTOOL_SETUP +# ---------------- +AC_DEFUN([AC_LIBTOOL_SETUP], +[AC_PREREQ(2.50)dnl +AC_REQUIRE([AC_ENABLE_SHARED])dnl +AC_REQUIRE([AC_ENABLE_STATIC])dnl +AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_LD])dnl +AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl +AC_REQUIRE([AC_PROG_NM])dnl + +AC_REQUIRE([AC_PROG_LN_S])dnl +AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl +# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! +AC_REQUIRE([AC_OBJEXT])dnl +AC_REQUIRE([AC_EXEEXT])dnl +dnl + +AC_LIBTOOL_SYS_MAX_CMD_LEN +AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +AC_LIBTOOL_OBJDIR + +AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +_LT_AC_PROG_ECHO_BACKSLASH + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='sed -e s/^X//' +[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] + +# Same as above, but do not quote variable references. +[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +# Constants: +rm="rm -f" + +# Global variables: +default_ofile=libtool +can_build_shared=yes + +# All known linkers require a `.a' archive for static linking (except M$VC, +# which needs '.lib'). +libext=a +ltmain="$ac_aux_dir/ltmain.sh" +ofile="$default_ofile" +with_gnu_ld="$lt_cv_prog_gnu_ld" + +AC_CHECK_TOOL(AR, ar, false) +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) + +old_CC="$CC" +old_CFLAGS="$CFLAGS" + +# Set sane defaults for various variables +test -z "$AR" && AR=ar +test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$AS" && AS=as +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$DLLTOOL" && DLLTOOL=dlltool +test -z "$LD" && LD=ld +test -z "$LN_S" && LN_S="ln -s" +test -z "$MAGIC_CMD" && MAGIC_CMD=file +test -z "$NM" && NM=nm +test -z "$SED" && SED=sed +test -z "$OBJDUMP" && OBJDUMP=objdump +test -z "$RANLIB" && RANLIB=: +test -z "$STRIP" && STRIP=: +test -z "$ac_objext" && ac_objext=o + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + openbsd*) + old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" + ;; + *) + old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" +fi + +# Only perform the check for file, if the check method requires it +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + AC_PATH_MAGIC + fi + ;; +esac + +AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +enable_win32_dll=yes, enable_win32_dll=no) + +AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +AC_ARG_WITH([pic], + [AC_HELP_STRING([--with-pic], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [pic_mode="$withval"], + [pic_mode=default]) +test -z "$pic_mode" && pic_mode=default + +# Use C for the default configuration in the libtool script +tagname= +AC_LIBTOOL_LANG_C_CONFIG +_LT_AC_TAGCONFIG +])# AC_LIBTOOL_SETUP + + +# _LT_AC_SYS_COMPILER +# ------------------- +AC_DEFUN([_LT_AC_SYS_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_AC_SYS_COMPILER + + +# _LT_AC_SYS_LIBPATH_AIX +# ---------------------- +# Links a minimal program and checks the executable +# for the system default hardcoded library path. In most cases, +# this is /usr/lib:/lib, but when the MPI compilers are used +# the location of the communication and MPI libs are included too. +# If we don't find anything, use the default library path according +# to the aix ld manual. +AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX], +[AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'` +# Check for a 64-bit object if we didn't find anything. +if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } +}'`; fi],[]) +if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi +])# _LT_AC_SYS_LIBPATH_AIX + + +# _LT_AC_SHELL_INIT(ARG) +# ---------------------- +AC_DEFUN([_LT_AC_SHELL_INIT], +[ifdef([AC_DIVERSION_NOTICE], + [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], + [AC_DIVERT_PUSH(NOTICE)]) +$1 +AC_DIVERT_POP +])# _LT_AC_SHELL_INIT + + +# _LT_AC_PROG_ECHO_BACKSLASH +# -------------------------- +# Add some code to the start of the generated configure script which +# will find an echo command which doesn't interpret backslashes. +AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], +[_LT_AC_SHELL_INIT([ +# Check that we are running under the correct shell. +SHELL=${CONFIG_SHELL-/bin/sh} + +case X$ECHO in +X*--fallback-echo) + # Remove one level of quotation (which was required for Make). + ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` + ;; +esac + +echo=${ECHO-echo} +if test "X[$]1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X[$]1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then + # Yippee, $echo works! + : +else + # Restart under the correct shell. + exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} +fi + +if test "X[$]1" = X--fallback-echo; then + # used as fallback echo + shift + cat </dev/null && + echo_test_string="`eval $cmd`" && + (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null + then + break + fi + done +fi + +if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + : +else + # The Solaris, AIX, and Digital Unix default echo programs unquote + # backslashes. This makes it impossible to quote backslashes using + # echo "$something" | sed 's/\\/\\\\/g' + # + # So, first we look for a working echo in the user's PATH. + + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for dir in $PATH /usr/ucb; do + IFS="$lt_save_ifs" + if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && + test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$dir/echo" + break + fi + done + IFS="$lt_save_ifs" + + if test "X$echo" = Xecho; then + # We didn't find a better echo, so look for alternatives. + if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # This shell has a builtin print -r that does the trick. + echo='print -r' + elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && + test "X$CONFIG_SHELL" != X/bin/ksh; then + # If we have ksh, try running configure again with it. + ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} + export ORIGINAL_CONFIG_SHELL + CONFIG_SHELL=/bin/ksh + export CONFIG_SHELL + exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} + else + # Try using printf. + echo='printf %s\n' + if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && + echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + # Cool, printf works + : + elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL + export CONFIG_SHELL + SHELL="$CONFIG_SHELL" + export SHELL + echo="$CONFIG_SHELL [$]0 --fallback-echo" + elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && + test "X$echo_testing_string" = 'X\t' && + echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && + test "X$echo_testing_string" = "X$echo_test_string"; then + echo="$CONFIG_SHELL [$]0 --fallback-echo" + else + # maybe with a smaller string... + prev=: + + for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do + if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null + then + break + fi + prev="$cmd" + done + + if test "$prev" != 'sed 50q "[$]0"'; then + echo_test_string=`eval $prev` + export echo_test_string + exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} + else + # Oops. We lost completely, so just stick with echo. + echo=echo + fi + fi + fi + fi +fi +fi + +# Copy echo and quote the copy suitably for passing to libtool from +# the Makefile, instead of quoting the original, which is used later. +ECHO=$echo +if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then + ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" +fi + +AC_SUBST(ECHO) +])])# _LT_AC_PROG_ECHO_BACKSLASH + + +# _LT_AC_LOCK +# ----------- +AC_DEFUN([_LT_AC_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AC_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE="32" + ;; + *ELF-64*) + HPUX_IA64_MODE="64" + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out which ABI we are using. + echo '[#]line __oline__ "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test "$lt_cv_prog_gnu_ld" = yes; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) + # Find out which ABI we are using. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case "`/usr/bin/file conftest.o`" in + *32-bit*) + LINUX_64_MODE="32" + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; + ppc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + LINUX_64_MODE="64" + case $host in + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + ppc*-*linux*|powerpc*-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test x"$lt_cv_cc_needs_belf" != x"yes"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS="$SAVE_CFLAGS" + fi + ;; +AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL], +[*-*-cygwin* | *-*-mingw* | *-*-pw32*) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; + ]) +esac + +need_locks="$enable_libtool_lock" + +])# _LT_AC_LOCK + + +# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], +[AC_REQUIRE([LT_AC_PROG_SED]) +AC_CACHE_CHECK([$1], [$2], + [$2=no + ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s conftest.err; then + $2=yes + fi + fi + $rm conftest* +]) + +if test x"[$]$2" = xyes; then + ifelse([$5], , :, [$5]) +else + ifelse([$6], , :, [$6]) +fi +])# AC_LIBTOOL_COMPILER_OPTION + + +# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ------------------------------------------------------------ +# Check whether the given compiler option works +AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], +[AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS $3" + printf "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + else + $2=yes + fi + fi + $rm conftest* + LDFLAGS="$save_LDFLAGS" +]) + +if test x"[$]$2" = xyes; then + ifelse([$4], , :, [$4]) +else + ifelse([$5], , :, [$5]) +fi +])# AC_LIBTOOL_LINKER_OPTION + + +# AC_LIBTOOL_SYS_MAX_CMD_LEN +# -------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], +[# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + testring="ABCD" + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + *) + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \ + = "XX$testring") >/dev/null 2>&1 && + new_result=`expr "X$testring" : ".*" 2>&1` && + lt_cv_sys_max_cmd_len=$new_result && + test $i != 17 # 1/2 MB should be enough + do + i=`expr $i + 1` + testring=$testring$testring + done + testring= + # Add a significant safety factor because C++ compilers can tack on massive + # amounts of additional arguments before passing them to the linker. + # It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + ;; + esac +]) +if test -n $lt_cv_sys_max_cmd_len ; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +])# AC_LIBTOOL_SYS_MAX_CMD_LEN + + +# _LT_AC_CHECK_DLFCN +# -------------------- +AC_DEFUN([_LT_AC_CHECK_DLFCN], +[AC_CHECK_HEADERS(dlfcn.h)dnl +])# _LT_AC_CHECK_DLFCN + + +# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# ------------------------------------------------------------------ +AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "$cross_compiling" = yes; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +#ifdef __cplusplus +extern "C" void exit (int); +#endif + +void fnord() { int i=42;} +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + /* dlclose (self); */ + } + + exit (status); +}] +EOF + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then + (./conftest; exit; ) 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_unknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_AC_TRY_DLOPEN_SELF + + +# AC_LIBTOOL_DLOPEN_SELF +# ------------------- +AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], +[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl +if test "x$enable_dlopen" != xyes; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen="load_add_on" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32*) + lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen="dlopen" + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[ + lt_cv_dlopen="dyld" + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen="shl_load"], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen="dlopen"], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test "x$lt_cv_dlopen" != xno; then + enable_dlopen=yes + else + enable_dlopen=no + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS="$CPPFLAGS" + test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS="$LDFLAGS" + eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS="$LIBS" + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test "x$lt_cv_dlopen_self" = xyes; then + LDFLAGS="$LDFLAGS $link_static_flag" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_AC_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS" + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +])# AC_LIBTOOL_DLOPEN_SELF + + +# AC_LIBTOOL_PROG_CC_C_O([TAGNAME]) +# --------------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler +AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $rm -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + # According to Tom Tromey, Ian Lance Taylor reported there are C compilers + # that will create temporary files in the current directory regardless of + # the output directory. Thus, making CWD read-only will cause this test + # to fail, enabling locking or at least warning the user not to do parallel + # builds. + chmod -w . + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + if test ! -s out/conftest.err; then + _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . + $rm conftest* out/* + rmdir out + cd .. + rmdir conftest + $rm conftest* +]) +])# AC_LIBTOOL_PROG_CC_C_O + + +# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME]) +# ----------------------------------------- +# Check to see if we can do hard links to lock some files if needed +AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], +[AC_REQUIRE([_LT_AC_LOCK])dnl + +hard_links="nottested" +if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $rm conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test "$hard_links" = no; then + AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS + + +# AC_LIBTOOL_OBJDIR +# ----------------- +AC_DEFUN([AC_LIBTOOL_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +])# AC_LIBTOOL_OBJDIR + + +# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME]) +# ---------------------------------------------- +# Check hardcoding attributes. +AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_AC_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \ + test -n "$_LT_AC_TAGVAR(runpath_var $1)" || \ + test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)"="Xyes" ; then + + # We can hardcode non-existant directories. + if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no && + test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then + # Linking always hardcodes the temporary library directory. + _LT_AC_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_AC_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_AC_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)]) + +if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then + # Fast installation is not supported + enable_fast_install=no +elif test "$shlibpath_overrides_runpath" = yes || + test "$enable_shared" = no; then + # Fast installation is not necessary + enable_fast_install=needless +fi +])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH + + +# AC_LIBTOOL_SYS_LIB_STRIP +# ------------------------ +AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP], +[striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP" ; then + striplib="$STRIP -x" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) +fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +])# AC_LIBTOOL_SYS_LIB_STRIP + + +# AC_LIBTOOL_SYS_DYNAMIC_LINKER +# ----------------------------- +# PORTME Fill in your ld.so characteristics +AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER], +[AC_MSG_CHECKING([dynamic linker characteristics]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext=".so" +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +case $host_os in +aix3*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='${libname}${release}${shared_ext}$major' + ;; + +aix4* | aix5*) + version_type=linux + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 + library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line `#! .'. This would cause the generated library to + # depend on `.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[[01]] | aix4.[[01]].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + if test "$aix_use_runtimelinking" = yes; then + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' + soname_spec='${libname}${release}${shared_ext}$major' + fi + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' + ;; + +beos*) + library_names_spec='${libname}${shared_ext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi4*) + version_type=linux + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32*) + version_type=windows + shrext=".dll" + need_version=no + need_lib_prefix=no + + case $GCC,$host_os in + yes,cygwin* | yes,mingw* | yes,pw32*) + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $rm \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH printed by + # mingw gcc, but we are running on Cygwin. Gcc prints its search + # path with ; separators, and with drive letters. We can handle the + # drive letters (cygwin fileutils understands them), so leave them, + # especially as we might pass files found there to a mingw objdump, + # which wouldn't understand a cygwinified path. Ahh. + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + ;; + esac + ;; + + *) + library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext='$(test .$module = .yes && echo .so || echo .dylib)' + # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same. + if test "$GCC" = yes; then + sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"` + else + sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib' + fi + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd1*) + dynamic_linker=no + ;; + +kfreebsd*-gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='GNU ld.so' + ;; + +freebsd*) + objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + *) # from 3.2 on + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + esac + ;; + +gnu*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case "$host_cpu" in + ia64*) + shrext='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + fi + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + hppa*64*) + shrext='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. + postinstall_cmds='chmod 555 $lib' + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test "$lt_cv_prog_gnu_ld" = yes; then + version_type=linux + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" + sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +# This must be Linux ELF. +linux*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + libsuff= + if test "x$LINUX_64_MODE" = x64; then + # Some platforms are per default 64-bit, so there's no /lib64 + if test -d /lib64; then + libsuff=64 + fi + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" + sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +nto-qnx*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +openbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + case $host_os in + openbsd2.[[89]] | openbsd2.[[89]].*) + shlibpath_overrides_runpath=no + ;; + *) + shlibpath_overrides_runpath=yes + ;; + esac + else + shlibpath_overrides_runpath=yes + fi + ;; + +os2*) + libname_spec='$name' + shrext=".dll" + need_lib_prefix=no + library_names_spec='$libname${shared_ext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + ;; + +sco3.2v5*) + version_type=osf + soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +solaris*) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test "$with_gnu_ld" = yes; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + export_dynamic_flag_spec='${wl}-Blargedynsym' + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux + library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' + soname_spec='$libname${shared_ext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +uts4*) + version_type=linux + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test "$dynamic_linker" = no && can_build_shared=no +])# AC_LIBTOOL_SYS_DYNAMIC_LINKER + + +# _LT_AC_TAGCONFIG +# ---------------- +AC_DEFUN([_LT_AC_TAGCONFIG], +[AC_ARG_WITH([tags], + [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@], + [include additional configurations @<:@automatic@:>@])], + [tagnames="$withval"]) + +if test -f "$ltmain" && test -n "$tagnames"; then + if test ! -f "${ofile}"; then + AC_MSG_WARN([output file `$ofile' does not exist]) + fi + + if test -z "$LTCC"; then + eval "`$SHELL ${ofile} --config | grep '^LTCC='`" + if test -z "$LTCC"; then + AC_MSG_WARN([output file `$ofile' does not look like a libtool script]) + else + AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile']) + fi + fi + + # Extract list of available tagged configurations in $ofile. + # Note that this assumes the entire list is on one line. + available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` + + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for tagname in $tagnames; do + IFS="$lt_save_ifs" + # Check whether tagname contains only valid characters + case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in + "") ;; + *) AC_MSG_ERROR([invalid tag name: $tagname]) + ;; + esac + + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null + then + AC_MSG_ERROR([tag name \"$tagname\" already exists]) + fi + + # Update the list of available tags. + if test -n "$tagname"; then + echo appending configuration tag \"$tagname\" to $ofile + + case $tagname in + CXX) + if test -n "$CXX" && test "X$CXX" != "Xno"; then + AC_LIBTOOL_LANG_CXX_CONFIG + else + tagname="" + fi + ;; + + F77) + if test -n "$F77" && test "X$F77" != "Xno"; then + AC_LIBTOOL_LANG_F77_CONFIG + else + tagname="" + fi + ;; + + GCJ) + if test -n "$GCJ" && test "X$GCJ" != "Xno"; then + AC_LIBTOOL_LANG_GCJ_CONFIG + else + tagname="" + fi + ;; + + RC) + AC_LIBTOOL_LANG_RC_CONFIG + ;; + + *) + AC_MSG_ERROR([Unsupported tag name: $tagname]) + ;; + esac + + # Append the new tag name to the list of available tags. + if test -n "$tagname" ; then + available_tags="$available_tags $tagname" + fi + fi + done + IFS="$lt_save_ifs" + + # Now substitute the updated list of available tags. + if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then + mv "${ofile}T" "$ofile" + chmod +x "$ofile" + else + rm -f "${ofile}T" + AC_MSG_ERROR([unable to update list of available tagged configurations.]) + fi +fi +])# _LT_AC_TAGCONFIG + + +# AC_LIBTOOL_DLOPEN +# ----------------- +# enable checks for dlopen support +AC_DEFUN([AC_LIBTOOL_DLOPEN], + [AC_BEFORE([$0],[AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_DLOPEN + + +# AC_LIBTOOL_WIN32_DLL +# -------------------- +# declare package support for building win32 dll's +AC_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_BEFORE([$0], [AC_LIBTOOL_SETUP]) +])# AC_LIBTOOL_WIN32_DLL + + +# AC_ENABLE_SHARED([DEFAULT]) +# --------------------------- +# implement the --enable-shared flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_SHARED], +[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([shared], + [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_shared=]AC_ENABLE_SHARED_DEFAULT) +])# AC_ENABLE_SHARED + + +# AC_DISABLE_SHARED +# ----------------- +#- set the default shared flag to --disable-shared +AC_DEFUN([AC_DISABLE_SHARED], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_SHARED(no) +])# AC_DISABLE_SHARED + + +# AC_ENABLE_STATIC([DEFAULT]) +# --------------------------- +# implement the --enable-static flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_STATIC], +[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([static], + [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_static=]AC_ENABLE_STATIC_DEFAULT) +])# AC_ENABLE_STATIC + + +# AC_DISABLE_STATIC +# ----------------- +# set the default static flag to --disable-static +AC_DEFUN([AC_DISABLE_STATIC], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_STATIC(no) +])# AC_DISABLE_STATIC + + +# AC_ENABLE_FAST_INSTALL([DEFAULT]) +# --------------------------------- +# implement the --enable-fast-install flag +# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'. +AC_DEFUN([AC_ENABLE_FAST_INSTALL], +[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl +AC_ARG_ENABLE([fast-install], + [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for pkg in $enableval; do + IFS="$lt_save_ifs" + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac], + [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT) +])# AC_ENABLE_FAST_INSTALL + + +# AC_DISABLE_FAST_INSTALL +# ----------------------- +# set the default to --disable-fast-install +AC_DEFUN([AC_DISABLE_FAST_INSTALL], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +AC_ENABLE_FAST_INSTALL(no) +])# AC_DISABLE_FAST_INSTALL + + +# AC_LIBTOOL_PICMODE([MODE]) +# -------------------------- +# implement the --with-pic flag +# MODE is either `yes' or `no'. If omitted, it defaults to `both'. +AC_DEFUN([AC_LIBTOOL_PICMODE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl +pic_mode=ifelse($#,1,$1,default) +])# AC_LIBTOOL_PICMODE + + +# AC_PROG_EGREP +# ------------- +# This is predefined starting with Autoconf 2.54, so this conditional +# definition can be removed once we require Autoconf 2.54 or later. +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP], +[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep], + [if echo a | (grep -E '(a|b)') >/dev/null 2>&1 + then ac_cv_prog_egrep='grep -E' + else ac_cv_prog_egrep='egrep' + fi]) + EGREP=$ac_cv_prog_egrep + AC_SUBST([EGREP]) +])]) + + +# AC_PATH_TOOL_PREFIX +# ------------------- +# find a file program which can recognise shared library +AC_DEFUN([AC_PATH_TOOL_PREFIX], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD="$MAGIC_CMD" + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="ifelse([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$1; then + lt_cv_path_MAGIC_CMD="$ac_dir/$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" + MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +EOF + fi ;; + esac + fi + break + fi + done + IFS="$lt_save_ifs" + MAGIC_CMD="$lt_save_MAGIC_CMD" + ;; +esac]) +MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +])# AC_PATH_TOOL_PREFIX + + +# AC_PATH_MAGIC +# ------------- +# find a file program which can recognise a shared library +AC_DEFUN([AC_PATH_MAGIC], +[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# AC_PATH_MAGIC + + +# AC_PROG_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([AC_PROG_LD], +[AC_ARG_WITH([gnu-ld], + [AC_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test "$withval" = no || with_gnu_ld=yes], + [with_gnu_ld=no]) +AC_REQUIRE([LT_AC_PROG_SED])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &1 /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case "$host_cpu" in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]'] + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + irix5* | nonstopux*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" + ;; + *) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" + ;; + esac + lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be Linux ELF. +linux*) + case $host_cpu in + alpha* | hppa* | i*86 | ia64* | m68* | mips* | powerpc* | sparc* | s390* | sh* | x86_64* ) + lt_cv_deplibs_check_method=pass_all ;; + # the debian people say, arm and glibc 2.3.1 works for them with pass_all + arm* ) + lt_cv_deplibs_check_method=pass_all ;; + *) + # glibc up to 2.1.1 does not perform some relocations on ARM + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; + esac + lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +nto-qnx*) + lt_cv_deplibs_check_method=unknown + ;; + +openbsd*) + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' + else + lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' + fi + ;; + +osf3* | osf4* | osf5*) + # this will be overridden with pass_all, but let us keep it just in case + lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' + lt_cv_file_magic_test_file=/shlib/libc.so + lt_cv_deplibs_check_method=pass_all + ;; + +sco3.2v5*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + lt_cv_file_magic_test_file=/lib/libc.so + ;; + +sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown +])# AC_DEPLIBS_CHECK_METHOD + + +# AC_PROG_NM +# ---------- +# find the pathname to a BSD-compatible name lister +AC_DEFUN([AC_PROG_NM], +[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM="$NM" +else + lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do + IFS="$lt_save_ifs" + test -z "$ac_dir" && ac_dir=. + tmp_nm="$ac_dir/${ac_tool_prefix}nm" + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in + */dev/null* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + esac + fi + done + IFS="$lt_save_ifs" + test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm +fi]) +NM="$lt_cv_path_NM" +])# AC_PROG_NM + + +# AC_CHECK_LIBM +# ------------- +# check for math library +AC_DEFUN([AC_CHECK_LIBM], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM="-lm") + ;; +esac +])# AC_CHECK_LIBM + + +# AC_LIBLTDL_CONVENIENCE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl convenience library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-convenience to the configure arguments. Note that LIBLTDL +# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If +# DIRECTORY is not provided, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. +AC_DEFUN([AC_LIBLTDL_CONVENIENCE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + case $enable_ltdl_convenience in + no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; + "") enable_ltdl_convenience=yes + ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; + esac + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_CONVENIENCE + + +# AC_LIBLTDL_INSTALLABLE([DIRECTORY]) +# ----------------------------------- +# sets LIBLTDL to the link flags for the libltdl installable library and +# LTDLINCL to the include flags for the libltdl header and adds +# --enable-ltdl-install to the configure arguments. Note that LIBLTDL +# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If +# DIRECTORY is not provided and an installed libltdl is not found, it is +# assumed to be `libltdl'. LIBLTDL will be prefixed with '${top_builddir}/' +# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single +# quotes!). If your package is not flat and you're not using automake, +# define top_builddir and top_srcdir appropriately in the Makefiles. +# In the future, this macro may have to be called after AC_PROG_LIBTOOL. +AC_DEFUN([AC_LIBLTDL_INSTALLABLE], +[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl + AC_CHECK_LIB(ltdl, lt_dlinit, + [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], + [if test x"$enable_ltdl_install" = xno; then + AC_MSG_WARN([libltdl not installed, but installation disabled]) + else + enable_ltdl_install=yes + fi + ]) + if test x"$enable_ltdl_install" = x"yes"; then + ac_configure_args="$ac_configure_args --enable-ltdl-install" + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) + else + ac_configure_args="$ac_configure_args --enable-ltdl-install=no" + LIBLTDL="-lltdl" + LTDLINCL= + fi + # For backwards non-gettext consistent compatibility... + INCLTDL="$LTDLINCL" +])# AC_LIBLTDL_INSTALLABLE + + +# AC_LIBTOOL_CXX +# -------------- +# enable support for C++ libraries +AC_DEFUN([AC_LIBTOOL_CXX], +[AC_REQUIRE([_LT_AC_LANG_CXX]) +])# AC_LIBTOOL_CXX + + +# _LT_AC_LANG_CXX +# --------------- +AC_DEFUN([_LT_AC_LANG_CXX], +[AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX]) +])# _LT_AC_LANG_CXX + + +# AC_LIBTOOL_F77 +# -------------- +# enable support for Fortran 77 libraries +AC_DEFUN([AC_LIBTOOL_F77], +[AC_REQUIRE([_LT_AC_LANG_F77]) +])# AC_LIBTOOL_F77 + + +# _LT_AC_LANG_F77 +# --------------- +AC_DEFUN([_LT_AC_LANG_F77], +[AC_REQUIRE([AC_PROG_F77]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77]) +])# _LT_AC_LANG_F77 + + +# AC_LIBTOOL_GCJ +# -------------- +# enable support for GCJ libraries +AC_DEFUN([AC_LIBTOOL_GCJ], +[AC_REQUIRE([_LT_AC_LANG_GCJ]) +])# AC_LIBTOOL_GCJ + + +# _LT_AC_LANG_GCJ +# --------------- +AC_DEFUN([_LT_AC_LANG_GCJ], +[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], + [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], + [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], + [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], + [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ]) +])# _LT_AC_LANG_GCJ + + +# AC_LIBTOOL_RC +# -------------- +# enable support for Windows resource files +AC_DEFUN([AC_LIBTOOL_RC], +[AC_REQUIRE([LT_AC_PROG_RC]) +_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC]) +])# AC_LIBTOOL_RC + + +# AC_LIBTOOL_LANG_C_CONFIG +# ------------------------ +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG]) +AC_DEFUN([_LT_AC_LANG_C_CONFIG], +[lt_save_CC="$CC" +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}\n' + +_LT_AC_SYS_COMPILER + +# +# Check for any special shared library compilation flags. +# +_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)= +if test "$GCC" = no; then + case $host_os in + sco3.2v5*) + _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf' + ;; + esac +fi +if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then + AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries]) + if echo "$old_CC $old_CFLAGS " | grep "[[ ]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ ]]" >/dev/null; then : + else + AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure]) + _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no + fi +fi + + +# +# Check to make sure the static flag actually works. +# +AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works], + _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1), + $_LT_AC_TAGVAR(lt_prog_compiler_static, $1), + [], + [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=]) + + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) +AC_LIBTOOL_SYS_LIB_STRIP +AC_LIBTOOL_DLOPEN_SELF($1) + +# Report which librarie types wil actually be built +AC_MSG_CHECKING([if libtool supports shared libraries]) +AC_MSG_RESULT([$can_build_shared]) + +AC_MSG_CHECKING([whether to build shared libraries]) +test "$can_build_shared" = "no" && enable_shared=no + +# On AIX, shared libraries and static libraries use the same namespace, and +# are all built from PIC. +case "$host_os" in +aix3*) + test "$enable_shared" = yes && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + +aix4*) + if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then + test "$enable_shared" = yes && enable_static=no + fi + ;; + darwin* | rhapsody*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + case "$host_os" in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' + ;; + esac + fi + ;; + esac + output_verbose_link_cmd='echo' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; +esac +AC_MSG_RESULT([$enable_shared]) + +AC_MSG_CHECKING([whether to build static libraries]) +# Make sure either enable_shared or enable_static is yes. +test "$enable_shared" = yes || enable_static=yes +AC_MSG_RESULT([$enable_static]) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC="$lt_save_CC" +])# AC_LIBTOOL_LANG_C_CONFIG + + +# AC_LIBTOOL_LANG_CXX_CONFIG +# -------------------------- +# Ensure that the configuration vars for the C compiler are +# suitably defined. Those variables are subsequently used by +# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'. +AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)]) +AC_DEFUN([_LT_AC_LANG_CXX_CONFIG], +[AC_LANG_PUSH(C++) +AC_REQUIRE([AC_PROG_CXX]) +AC_REQUIRE([AC_PROG_CXXCPP]) + +_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_AC_TAGVAR(allow_undefined_flag, $1)= +_LT_AC_TAGVAR(always_export_symbols, $1)=no +_LT_AC_TAGVAR(archive_expsym_cmds, $1)= +_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_direct, $1)=no +_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= +_LT_AC_TAGVAR(hardcode_libdir_separator, $1)= +_LT_AC_TAGVAR(hardcode_minus_L, $1)=no +_LT_AC_TAGVAR(hardcode_automatic, $1)=no +_LT_AC_TAGVAR(module_cmds, $1)= +_LT_AC_TAGVAR(module_expsym_cmds, $1)= +_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown +_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_AC_TAGVAR(no_undefined_flag, $1)= +_LT_AC_TAGVAR(whole_archive_flag_spec, $1)= +_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Dependencies to place before and after the object being linked: +_LT_AC_TAGVAR(predep_objects, $1)= +_LT_AC_TAGVAR(postdep_objects, $1)= +_LT_AC_TAGVAR(predeps, $1)= +_LT_AC_TAGVAR(postdeps, $1)= +_LT_AC_TAGVAR(compiler_lib_search_path, $1)= + +# Source file extension for C++ test sources. +ac_ext=cc + +# Object file extension for compiled C++ test sources. +objext=o +_LT_AC_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;\n" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_AC_SYS_COMPILER + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_LD=$LD +lt_save_GCC=$GCC +GCC=$GXX +lt_save_with_gnu_ld=$with_gnu_ld +lt_save_path_LD=$lt_cv_path_LD +if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx +else + unset lt_cv_prog_gnu_ld +fi +if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX +else + unset lt_cv_path_LD +fi +test -z "${LDCXX+set}" || LD=$LDCXX +CC=${CXX-"c++"} +compiler=$CC +_LT_AC_TAGVAR(compiler, $1)=$CC +cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` + +# We don't want -fno-exception wen compiling C++ code, so set the +# no_builtin_flag separately +if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' +else + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= +fi + +if test "$GXX" = yes; then + # Set up default GNU C++ configuration + + AC_PROG_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test "$with_gnu_ld" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='${wl}' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ + grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + +else + GXX=no + with_gnu_ld=no + wlarc= +fi + +# PORTME: fill in a description of your system's C++ link characteristics +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +_LT_AC_TAGVAR(ld_shlibs, $1)=yes +case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GXX" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='-qmkshrobj ${wl}-G' + else + shared_flag='-qmkshrobj' + fi + fi + fi + + # Let the compiler handle the export list. + _LT_AC_TAGVAR(always_export_symbols, $1)=no + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + + _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds it's shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=no + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes; then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + case "$host_os" in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' + fi + _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' + + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + dgux*) + case $cc_basename in + ec++) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + freebsd[12]*) + # C++ shared libraries reported to be fairly broken before switch to ELF + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + freebsd-elf*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + freebsd* | kfreebsd*-gnu) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + ;; + gnu*) + ;; + hpux9*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + hpux10*|hpux11*) + if test $with_gnu_ld = no; then + case "$host_cpu" in + hppa*64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + ;; + *) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + esac + fi + case "$host_cpu" in + hppa*64*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + ia64*) + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + *) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + aCC) + case "$host_cpu" in + hppa*64*|ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes; then + if test $with_gnu_ld = no; then + case "$host_cpu" in + ia64*|hppa*64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + irix5* | irix6*) + case $cc_basename in + CC) + # SGI C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test "$GXX" = yes; then + if test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib' + fi + fi + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + linux*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc) + # Intel C++ + with_gnu_ld=yes + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + ;; + cxx) + # Compaq C++ + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + esac + ;; + lynxos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + m88k*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + mvs*) + case $cc_basename in + cxx) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + osf3*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + osf4* | osf5*) + case $cc_basename in + KCC) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' + ;; + RCC) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + cxx) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~ + $rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + ;; + *) + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + psos*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + sco*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + case $cc_basename in + CC) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + lcc) + # Lucid + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The C++ compiler is used as linker so we must use $wl + # flag to pass the commands to the underlying system + # linker. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test "$GXX" = yes && test "$with_gnu_ld" = no; then + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs' + if $CC --version | grep -v '^2\.7' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + else + # g++ 2.7 appears to require `-G' NOT `-shared' on this + # platform. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects ${wl}-h $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $compiler_flags $predep_objects $libobjs $deplibs $postdep_objects~$rm $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\"" + fi + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir' + fi + ;; + esac + ;; + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + vxworks*) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; +esac +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +_LT_AC_TAGVAR(GCC, $1)="$GXX" +_LT_AC_TAGVAR(LD, $1)="$LD" + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +AC_LIBTOOL_POSTDEP_PREDEP($1) +AC_LIBTOOL_PROG_COMPILER_PIC($1) +AC_LIBTOOL_PROG_CC_C_O($1) +AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1) +AC_LIBTOOL_PROG_LD_SHLIBS($1) +AC_LIBTOOL_SYS_DYNAMIC_LINKER($1) +AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1) +AC_LIBTOOL_SYS_LIB_STRIP +AC_LIBTOOL_DLOPEN_SELF($1) + +AC_LIBTOOL_CONFIG($1) + +AC_LANG_POP +CC=$lt_save_CC +LDCXX=$LD +LD=$lt_save_LD +GCC=$lt_save_GCC +with_gnu_ldcxx=$with_gnu_ld +with_gnu_ld=$lt_save_with_gnu_ld +lt_cv_path_LDCXX=$lt_cv_path_LD +lt_cv_path_LD=$lt_save_path_LD +lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld +lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +])# AC_LIBTOOL_LANG_CXX_CONFIG + +# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME]) +# ------------------------ +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[ +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +ifelse([$1],[],[cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <> "$cfgfile" +ifelse([$1], [], +[#! $SHELL + +# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services. +# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 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 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. +# +# 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. + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi + +# The names of the tagged configurations supported by this script. +available_tags= + +# ### BEGIN LIBTOOL CONFIG], +[# ### BEGIN LIBTOOL TAG CONFIG: $tagname]) + +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1) + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# The host system. +host_alias=$host_alias +host=$host + +# An echo program that does not interpret backslashes. +echo=$lt_echo + +# The archiver. +AR=$lt_AR +AR_FLAGS=$lt_AR_FLAGS + +# A C compiler. +LTCC=$lt_LTCC + +# A language-specific compiler. +CC=$lt_[]_LT_AC_TAGVAR(compiler, $1) + +# Is the compiler the GNU C compiler? +with_gcc=$_LT_AC_TAGVAR(GCC, $1) + +# An ERE matcher. +EGREP=$lt_EGREP + +# The linker used to build libraries. +LD=$lt_[]_LT_AC_TAGVAR(LD, $1) + +# Whether we need hard or soft links. +LN_S=$lt_LN_S + +# A BSD-compatible nm program. +NM=$lt_NM + +# A symbol stripping program +STRIP=$STRIP + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=$MAGIC_CMD + +# Used on cygwin: DLL creation program. +DLLTOOL="$DLLTOOL" + +# Used on cygwin: object dumper. +OBJDUMP="$OBJDUMP" + +# Used on cygwin: assembler. +AS="$AS" + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# How to pass a linker flag through the compiler. +wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + +# Object file suffix (normally "o"). +objext="$ac_objext" + +# Old archive suffix (normally "a"). +libext="$libext" + +# Shared library suffix (normally ".so"). +shrext='$shrext' + +# Executable file suffix (normally ""). +exeext="$exeext" + +# Additional compiler flags for building library objects. +pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) +pic_mode=$pic_mode + +# What is the maximum length of a command? +max_cmd_len=$lt_cv_sys_max_cmd_len + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) + +# Must we lock files when doing compilation ? +need_locks=$lt_need_locks + +# Do we need the lib prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1) + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1) + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1) + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1) + +# Library versioning type. +version_type=$version_type + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Commands used to build and install an old-style archive. +RANLIB=$lt_RANLIB +old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1) +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1) + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) + +# Commands used to build and install a shared archive. +archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1) +archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1) +postinstall_cmds=$lt_postinstall_cmds +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1) +module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1) + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1) + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1) + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd=$lt_file_magic_cmd + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1) + +# Flag that forces no undefined symbols. +no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1) + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval=$lt_finish_eval + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# This is the shared library runtime path variable. +runpath_var=$runpath_var + +# This is the shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# How to hardcode a shared library path into an executable. +hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1) + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist. +hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) + +# If ld is used when linking, flag to hardcode \$libdir into +# a binary during linking. This must work even if \$libdir does +# not exist. +hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) + +# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1) + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1) + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1) + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="$variables_saved_for_relink" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) + +# Compile-time system search path for libraries +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec + +# Fix the shell variable \$srcfile for the compiler. +fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)" + +# Set to yes if exported symbols are required. +always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1) + +# The commands to list exported symbols. +export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1) + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1) + +# Symbols that must always be exported. +include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1) + +ifelse([$1],[], +[# ### END LIBTOOL CONFIG], +[# ### END LIBTOOL TAG CONFIG: $tagname]) + +__EOF__ + +ifelse([$1],[], [ + case $host_os in + aix3*) + cat <<\EOF >> "$cfgfile" + +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test "X${COLLECT_NAMES+set}" != Xset; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +EOF + ;; + esac + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || \ + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +]) +else + # If there is no Makefile yet, we rely on a make rule to execute + # `config.status --recheck' to rerun these tests and create the + # libtool script then. + test -f Makefile && make "$ltmain" +fi +])# AC_LIBTOOL_CONFIG + + +# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], +[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl + +_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + + AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI + + +# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE +# --------------------------------- +AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], +[AC_REQUIRE([AC_CANONICAL_HOST]) +AC_REQUIRE([AC_PROG_NM]) +AC_REQUIRE([AC_OBJEXT]) +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Transform the above into a raw symbol and a C symbol. +symxfrm='\1 \2\3 \3' + +# Transform an extracted symbol line into a proper C declaration +lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) # Its linker distinguishes data from code symbols + if test "$host_cpu" = ia64; then + symcode='[[ABCDEGRST]]' + fi + lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris* | sysv5*) + symcode='[[BDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGISTW]]' ;; +esac + +# Try without a prefix undercore, then with it. +for ac_symprfx in "" "_"; do + + # Write the raw and C identifiers. + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if grep ' nm_test_var$' "$nlist" >/dev/null; then + if grep ' nm_test_func$' "$nlist" >/dev/null; then + cat < conftest.$ac_ext +#ifdef __cplusplus +extern "C" { +#endif + +EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext' + + cat <> conftest.$ac_ext +#if defined (__STDC__) && __STDC__ +# define lt_ptr_t void * +#else +# define lt_ptr_t char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +const struct { + const char *name; + lt_ptr_t address; +} +lt_preloaded_symbols[[]] = +{ +EOF + $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext + cat <<\EOF >> conftest.$ac_ext + {0, (lt_ptr_t) 0} +}; + +#ifdef __cplusplus +} +#endif +EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_save_LIBS="$LIBS" + lt_save_CFLAGS="$CFLAGS" + LIBS="conftstm.$ac_objext" + CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then + pipe_works=yes + fi + LIBS="$lt_save_LIBS" + CFLAGS="$lt_save_CFLAGS" + else + echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD + fi + else + echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD + cat conftest.$ac_ext >&5 + fi + rm -f conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test "$pipe_works" = yes; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done +]) +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + AC_MSG_RESULT(failed) +else + AC_MSG_RESULT(ok) +fi +]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE + + +# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME]) +# --------------------------------------- +AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC], +[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_AC_TAGVAR(lt_prog_compiler_static, $1)= + +AC_MSG_CHECKING([for $compiler option to produce PIC]) + ifelse([$1],[CXX],[ + # C++ specific cases for pic, static, wl, etc. + if test "$GXX" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | os2* | pw32*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix4* | aix5*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68) + # Green Hills C++ Compiler + # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + dgux*) + case $cc_basename in + ec++) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | kfreebsd*-gnu) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux*) + case $cc_basename in + KCC) + # KAI C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + icpc) + # Intel C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + cxx) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC) + # Rational C++ 2.4.1 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx) + # Digital/Compaq C++ + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + sco*) + case $cc_basename in + CC) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + *) + ;; + esac + ;; + solaris*) + case $cc_basename in + CC) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx) + # Green Hills C++ Compiler + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC) + # Sun C++ 4.x + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc) + # Lucid + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC) + # NonStop-UX NCC 3.20 + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + unixware*) + ;; + vxworks*) + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test "$GCC" = yes; then + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + amigaos*) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the `-m68020' flag to GCC prevents building anything better, + # like `-m68040'. + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + + beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + hpux*) + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test "$host_cpu" = ia64; then + # AIX 5 now supports IA64 processor + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + mingw* | pw32* | os2*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT' + ;; + + hpux9* | hpux10* | hpux11*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case "$host_cpu" in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + newsos6) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + linux*) + case $CC in + icc* | ecc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + ccc*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + esac + ;; + + osf3* | osf4* | osf5*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + sco3.2v5*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn' + ;; + + solaris*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sunos4*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec ;then + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + uts4*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)]) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then + AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works], + _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1), + [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +case "$host_os" in + # For platforms which do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])" + ;; +esac +]) + + +# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]) +# ------------------------------------ +# See if the linker supports building shared libraries. +AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS], +[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +ifelse([$1],[CXX],[ + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + case $host_os in + aix4* | aix5*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds" + ;; + cygwin* | mingw*) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + ;; + *) + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac +],[ + runpath_var= + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_AC_TAGVAR(archive_cmds, $1)= + _LT_AC_TAGVAR(archive_expsym_cmds, $1)= + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)= + _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + _LT_AC_TAGVAR(thread_safe_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)= + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_minus_L, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown + _LT_AC_TAGVAR(hardcode_automatic, $1)=no + _LT_AC_TAGVAR(module_cmds, $1)= + _LT_AC_TAGVAR(module_expsym_cmds, $1)= + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_AC_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ` (' and `)$', so one must not match beginning or + # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', + # as well as any symbol that contains `d'. + _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_" + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test "$GCC" != yes; then + with_gnu_ld=no + fi + ;; + openbsd*) + with_gnu_ld=no + ;; + esac + + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + if test "$with_gnu_ld" = yes; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='${wl}' + + # See if GNU ld supports shared libraries. + case $host_os in + aix3* | aix4* | aix5*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to modify your PATH +*** so that a non-GNU linker is found, and then restart. + +EOF + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + + # Samuel A. Falvo II reports + # that the semantics of dynamic libraries on AmigaOS, at least up + # to version 4, is to share data among multiple programs linked + # with the same dynamic library. Since this doesn't match the + # behavior of shared libraries on other platforms, we can't use + # them. + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32*) + # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=no + _LT_AC_TAGVAR(always_export_symbols, $1)=no + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' + + if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $compiler_flags $libobjs $deplibs -o $output_objdir/$soname ${wl}--image-base=0x10000000 ${wl}--out-implib,$lib' + else + ld_shlibs=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris* | sysv5*) + if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then + _LT_AC_TAGVAR(ld_shlibs, $1)=no + cat <&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +EOF + elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sunos4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then + runpath_var=LD_RUN_PATH + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)= + fi + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + if test "$GCC" = yes && test -z "$link_static_flag"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix4* | aix5*) + if test "$host_cpu" = ia64; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag="" + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to AIX nm, but means don't demangle with GNU nm + if $NM -V 2>&1 | grep 'GNU' > /dev/null; then + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + else + _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols' + fi + + # KDE requires run time linking. Make it the default. + aix_use_runtimelinking=yes + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_AC_TAGVAR(archive_cmds, $1)='' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + + if test "$GCC" = yes; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`${CC} -print-prog-name=collect2` + if test -f "$collect2name" && \ + strings "$collect2name" | grep resolve_lib_name >/dev/null + then + # We have reworked collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + else + # We have old collect2 + _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)= + fi + esac + shared_flag='-shared' + else + # not using gcc + if test "$host_cpu" = ia64; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test "$aix_use_runtimelinking" = yes; then + shared_flag='-qmkshrobj ${wl}-G' + else + shared_flag='-qmkshrobj' + fi + fi + fi + + # Let the compiler handle the export list. + _LT_AC_TAGVAR(always_export_symbols, $1)=no + if test "$aix_use_runtimelinking" = yes; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + _LT_AC_TAGVAR(archive_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '" $shared_flag" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + else + if test "$host_cpu" = ia64; then + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib' + _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an empty executable. + _LT_AC_SYS_LIBPATH_AIX + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok' + # -bexpall does not export symbols beginning with underscore (_) + _LT_AC_TAGVAR(always_export_symbols, $1)=yes + # Exported symbols can be pulled into shared objects from archives + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' ' + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + # This is similar to how AIX traditionally builds it's shared libraries. + _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $compiler_flags $libobjs $deplibs ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + fi + fi + ;; + + amigaos*) + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + # see comment about different semantics on the GNU ld section + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + bsdi4*) + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_AC_TAGVAR(allow_undefined_flag, $1)=no + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext=".dll" + # FIXME: Setting linknames here is a bad hack. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $compiler_flags $libobjs `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs' + fix_srcfile_path='`cygpath -w "$srcfile"`' + _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + darwin* | rhapsody*) + if test "$GXX" = yes ; then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + case "$host_os" in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,suppress' + ;; + *) # Darwin 1.3 on + if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + else + case ${MACOSX_DEPLOYMENT_TARGET} in + 10.[012]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-flat_namespace -Wl,-undefined -Wl,suppress' + ;; + 10.*) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-Wl,-undefined -Wl,dynamic_lookup' + ;; + esac + fi + ;; + esac + lt_int_apple_cc_single_mod=no + output_verbose_link_cmd='echo' + if $CC -dumpspecs 2>&1 | grep 'single_module' >/dev/null ; then + lt_int_apple_cc_single_mod=yes + fi + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring' + fi + _LT_AC_TAGVAR(module_cmds, $1)='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs' + # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's + if test "X$lt_int_apple_cc_single_mod" = Xyes ; then + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $compiler_flags $libobjs $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + else + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $compiler_flags $deplibs -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + fi + _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $compiler_flags $libobjs $deplibs~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_automatic, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + else + _LT_AC_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + dgux*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + freebsd1*) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | kfreebsd*-gnu) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $compiler_flags $libobjs $deplibs' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $compiler_flags $libobjs $deplibs~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + ;; + + hpux10* | hpux11*) + if test "$GCC" = yes -a "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*|ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $compiler_flags $libobjs $deplibs' + ;; + esac + else + case "$host_cpu" in + hppa*64*|ia64*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + ;; + esac + fi + if test "$with_gnu_ld" = no; then + case "$host_cpu" in + hppa*64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + ia64*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + ;; + *) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + openbsd*) + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E' + else + case $host_os in + openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + ;; + *) + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $compiler_flags $libobjs $deplibs' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + ;; + esac + fi + ;; + + os2*) + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $compiler_flags $libobjs $deplibs$output_objdir/$libname.def' + _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + ;; + + osf3*) + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test "$GCC" = yes; then + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $compiler_flags $libobjs $deplibs ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' + else + _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ + $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + sco3.2v5*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport' + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ;; + + solaris*) + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs~$rm $lib.exp' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;; + esac + _LT_AC_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $compiler_flags $libobjs $deplibs' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_AC_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_AC_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4.2uw2*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_minus_L, $1)=no + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + hardcode_runpath_var=yes + runpath_var=LD_RUN_PATH + ;; + + sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*) + _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text' + if test "$GCC" = yes; then + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' + else + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $compiler_flags $libobjs $deplibs' + fi + runpath_var='LD_RUN_PATH' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv5*) + _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + ;; + + uts4*) + _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_AC_TAGVAR(ld_shlibs, $1)=no + ;; + esac + fi +]) +AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)]) +test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test "$GCC" = yes; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +# +# Do we need to explicitly link libc? +# +case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test "$enable_shared" = yes && test "$GCC" = yes; then + case $_LT_AC_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_MSG_CHECKING([whether -lc should be explicitly linked in]) + $rm conftest* + printf "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1) + _LT_AC_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) + then + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no + else + _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $rm conftest* + AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)]) + ;; + esac + fi + ;; +esac +])# AC_LIBTOOL_PROG_LD_SHLIBS + + +# _LT_AC_FILE_LTDLL_C +# ------------------- +# Be careful that the start marker always follows a newline. +AC_DEFUN([_LT_AC_FILE_LTDLL_C], [ +# /* ltdll.c starts here */ +# #define WIN32_LEAN_AND_MEAN +# #include +# #undef WIN32_LEAN_AND_MEAN +# #include +# +# #ifndef __CYGWIN__ +# # ifdef __CYGWIN32__ +# # define __CYGWIN__ __CYGWIN32__ +# # endif +# #endif +# +# #ifdef __cplusplus +# extern "C" { +# #endif +# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); +# #ifdef __cplusplus +# } +# #endif +# +# #ifdef __CYGWIN__ +# #include +# DECLARE_CYGWIN_DLL( DllMain ); +# #endif +# HINSTANCE __hDllInstance_base; +# +# BOOL APIENTRY +# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) +# { +# __hDllInstance_base = hInst; +# return TRUE; +# } +# /* ltdll.c ends here */ +])# _LT_AC_FILE_LTDLL_C + + +# _LT_AC_TAGVAR(VARNAME, [TAGNAME]) +# --------------------------------- +AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])]) + + +# old names +AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) +AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) +AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) +AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) +AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) + +# This is just to silence aclocal about the macro not being used +ifelse([AC_DISABLE_FAST_INSTALL]) + +AC_DEFUN([LT_AC_PROG_GCJ], +[AC_CHECK_TOOL(GCJ, gcj, no) + test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS) +]) + +AC_DEFUN([LT_AC_PROG_RC], +[AC_CHECK_TOOL(RC, windres, no) +]) + +############################################################ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +############################################################ +# LT_AC_PROG_SED +# -------------- +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +AC_DEFUN([LT_AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f $lt_ac_sed && break + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test $lt_ac_count -gt 10 && break + lt_ac_count=`expr $lt_ac_count + 1` + if test $lt_ac_count -gt $lt_ac_max; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_MSG_RESULT([$SED]) +]) + +dnl PKG_CHECK_MODULES(GSTUFF, gtk+-2.0 >= 1.3 glib = 1.3.4, action-if, action-not) +dnl defines GSTUFF_LIBS, GSTUFF_CFLAGS, see pkg-config man page +dnl also defines GSTUFF_PKG_ERRORS on error +AC_DEFUN([PKG_CHECK_MODULES], [ + succeeded=no + + if test -z "$PKG_CONFIG"; then + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + fi + + if test "$PKG_CONFIG" = "no" ; then + echo "*** The pkg-config script could not be found. Make sure it is" + echo "*** in your path, or set the PKG_CONFIG environment variable" + echo "*** to the full path to pkg-config." + echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." + else + PKG_CONFIG_MIN_VERSION=0.9.0 + if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then + AC_MSG_CHECKING(for $2) + + if $PKG_CONFIG --exists "$2" ; then + AC_MSG_RESULT(yes) + succeeded=yes + + AC_MSG_CHECKING($1_CFLAGS) + $1_CFLAGS=`$PKG_CONFIG --cflags "$2"` + AC_MSG_RESULT($$1_CFLAGS) + + AC_MSG_CHECKING($1_LIBS) + $1_LIBS=`$PKG_CONFIG --libs "$2"` + AC_MSG_RESULT($$1_LIBS) + else + $1_CFLAGS="" + $1_LIBS="" + ## If we have a custom action on failure, don't print errors, but + ## do set a variable so people can do so. + $1_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` + ifelse([$4], ,echo $$1_PKG_ERRORS,) + fi + + AC_SUBST($1_CFLAGS) + AC_SUBST($1_LIBS) + else + echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." + echo "*** See http://www.freedesktop.org/software/pkgconfig" + fi + fi + + if test $succeeded = yes; then + ifelse([$3], , :, [$3]) + else + ifelse([$4], , AC_MSG_ERROR([Library requirements ($2) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.]), [$4]) + fi +]) + + diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..dd92cb3 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,863 @@ +# 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])]) + +# 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 /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 + +m4_include([acinclude.m4]) diff --git a/config.h.in b/config.h.in new file mode 100644 index 0000000..b846992 --- /dev/null +++ b/config.h.in @@ -0,0 +1,315 @@ +/* config.h.in. Generated from configure.in by autoheader. */ + +/* Define to 1 if you have the header file. */ +#undef HAVE_CARBON_CARBON_H + +/* Define if you have the CoreAudio API */ +#undef HAVE_COREAUDIO + +/* Define to 1 if you have the header file. */ +#undef HAVE_CRT_EXTERNS_H + +/* Defines if your system has the crypt function */ +#undef HAVE_CRYPT + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_DIRENT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_FCNTL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H + +/* Define if you have libjpeg */ +#undef HAVE_LIBJPEG + +/* Define if you have libpng */ +#undef HAVE_LIBPNG + +/* Define if you have a working libpthread (will enable threaded code) */ +#undef HAVE_LIBPTHREAD + +/* Define if you have libz */ +#undef HAVE_LIBZ + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the header file, and it defines `DIR'. */ +#undef HAVE_NDIR_H + +/* Define if your system needs _NSGetEnviron to set up the environment */ +#undef HAVE_NSGETENVIRON + +/* Define if you have res_init */ +#undef HAVE_RES_INIT + +/* Define if you have the res_init prototype */ +#undef HAVE_RES_INIT_PROTO + +/* Define if you have setenv */ +#undef HAVE_SETENV + +/* Define if you have the setenv prototype */ +#undef HAVE_SETENV_PROTO + +/* Define if you have a STL implementation by SGI */ +#undef HAVE_SGI_STL + +/* Define to 1 if you have the `snprintf' function. */ +#undef HAVE_SNPRINTF + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H + +/* Define if you have strlcat */ +#undef HAVE_STRLCAT + +/* Define if you have the strlcat prototype */ +#undef HAVE_STRLCAT_PROTO + +/* Define if you have strlcpy */ +#undef HAVE_STRLCPY + +/* Define if you have the strlcpy prototype */ +#undef HAVE_STRLCPY_PROTO + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_BITYPES_H + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_SYS_DIR_H + +/* Define to 1 if you have the header file, and it defines `DIR'. + */ +#undef HAVE_SYS_NDIR_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_PARAM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_RESOURCE_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SYSCTL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TIME_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_USER_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_VMMETER_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H + +/* Define if you have unsetenv */ +#undef HAVE_UNSETENV + +/* Define if you have the unsetenv prototype */ +#undef HAVE_UNSETENV_PROTO + +/* Define to 1 if you have the header file. */ +#undef HAVE_VM_VMPARAM_H + +/* Define to 1 if you have the `vsnprintf' function. */ +#undef HAVE_VSNPRINTF + +/* Suffix for lib directories */ +#undef KDELIBSUFF + +/* 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 version of this package. */ +#undef PACKAGE_VERSION + +/* The size of `char *', as computed by sizeof. */ +#undef SIZEOF_CHAR_P + +/* The size of `int', as computed by sizeof. */ +#undef SIZEOF_INT + +/* The size of `long', as computed by sizeof. */ +#undef SIZEOF_LONG + +/* The size of `short', as computed by sizeof. */ +#undef SIZEOF_SHORT + +/* The size of `size_t', as computed by sizeof. */ +#undef SIZEOF_SIZE_T + +/* The size of `unsigned long', as computed by sizeof. */ +#undef SIZEOF_UNSIGNED_LONG + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Version number of package */ +#undef VERSION + +/* Defined if compiling without arts */ +#undef WITHOUT_ARTS + +/* + * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system + * headers and I'm too lazy to write a configure test as long as only + * unixware is related + */ +#ifdef _UNIXWARE +#define HAVE_BOOLEAN +#endif + + + +/* + * AIX defines FD_SET in terms of bzero, but fails to include + * that defines bzero. + */ + +#if defined(_AIX) +#include +#endif + + + +#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) +# include +# include +# define environ (*_NSGetEnviron()) +#endif + + + +#if !defined(HAVE_RES_INIT_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +int res_init(void); +#ifdef __cplusplus +} +#endif +#endif + + + +#if !defined(HAVE_SETENV_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +int setenv (const char *, const char *, int); +#ifdef __cplusplus +} +#endif +#endif + + + +#if !defined(HAVE_STRLCAT_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +unsigned long strlcat(char*, const char*, unsigned long); +#ifdef __cplusplus +} +#endif +#endif + + + +#if !defined(HAVE_STRLCPY_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +unsigned long strlcpy(char*, const char*, unsigned long); +#ifdef __cplusplus +} +#endif +#endif + + + +#if !defined(HAVE_UNSETENV_PROTO) +#ifdef __cplusplus +extern "C" { +#endif +void unsetenv (const char *); +#ifdef __cplusplus +} +#endif +#endif + + + +/* + * On HP-UX, the declaration of vsnprintf() is needed every time ! + */ + +#if !defined(HAVE_VSNPRINTF) || defined(hpux) +#if __STDC__ +#include +#include +#else +#include +#endif +#ifdef __cplusplus +extern "C" +#endif +int vsnprintf(char *str, size_t n, char const *fmt, va_list ap); +#ifdef __cplusplus +extern "C" +#endif +int snprintf(char *str, size_t n, char const *fmt, ...); +#endif + + +/* define to 1 if -fvisibility is supported */ +#undef __KDE_HAVE_GCC_VISIBILITY + + +#if defined(__SVR4) && !defined(__svr4__) +#define __svr4__ 1 +#endif + + +/* type to use in place of socklen_t if not defined */ +#undef kde_socklen_t + +/* type to use in place of socklen_t if not defined (deprecated, use + kde_socklen_t) */ +#undef ksize_t diff --git a/configure.files b/configure.files new file mode 100644 index 0000000..7db7fe6 --- /dev/null +++ b/configure.files @@ -0,0 +1,3 @@ +./admin/configure.in.min +configure.in.in +./kerry/configure.in.in diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..8dfc397 --- /dev/null +++ b/configure.in @@ -0,0 +1,251 @@ +dnl ======================================================= +dnl FILE: ./admin/configure.in.min +dnl ======================================================= + +dnl This file is part of the KDE libraries/packages +dnl Copyright (C) 2001 Stephan Kulow (coolo@kde.org) + +dnl This file is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Library General Public +dnl License as published by the Free Software Foundation; either +dnl version 2 of the License, or (at your option) any later version. + +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this library; see the file COPYING.LIB. If not, write to +dnl the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +dnl Boston, MA 02110-1301, USA. + +# Original Author was Kalle@kde.org +# I lifted it in some mater. (Stephan Kulow) +# I used much code from Janos Farkas + +dnl Process this file with autoconf to produce a configure script. + +AC_INIT(acinclude.m4) dnl a source file from your sub dir + +dnl This is so we can use kde-common +AC_CONFIG_AUX_DIR(admin) + +dnl This ksh/zsh feature conflicts with `cd blah ; pwd` +unset CDPATH + +dnl Checking host/target/build systems, for make, install etc. +AC_CANONICAL_SYSTEM +dnl Perform program name transformation +AC_ARG_PROGRAM + +dnl Automake doc recommends to do this only here. (Janos) +AM_INIT_AUTOMAKE(kerry, 0.2.1) dnl searches for some needed programs + +KDE_SET_PREFIX + +dnl generate the config header +AM_CONFIG_HEADER(config.h) dnl at the distribution this done + +dnl Checks for programs. +AC_CHECK_COMPILERS +AC_ENABLE_SHARED(yes) +AC_ENABLE_STATIC(no) +KDE_PROG_LIBTOOL + +dnl for NLS support. Call them in this order! +dnl WITH_NLS is for the po files +AM_KDE_WITH_NLS + +KDE_USE_QT(3.3) +AC_PATH_KDE +dnl ======================================================= +dnl FILE: configure.in.in +dnl ======================================================= + +#MIN_CONFIG(3.3) +# Define a symbol, to know that we're compiling WITH kde. (for apps that +# can compile without KDE, optionally) +AM_CONDITIONAL(KDE_INSTALLED, test "$have_kde" = "yes") + +KDE_ENABLE_HIDDEN_VISIBILITY +CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS" + +dnl ======================================================= +dnl FILE: ./kerry/configure.in.in +dnl ======================================================= + +#MIN_CONFIG +KDE_ENABLE_HIDDEN_VISIBILITY + +AC_HEADER_DIRENT +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h sys/sysctl.h sys/param.h sys/time.h sys/types.h sys/user.h sys/vmmeter.h sys/resource.h vm/vmparam.h unistd.h) + +AC_CHECK_SETENV +AC_CHECK_UNSETENV + +dnl Check for pkg-config +AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + +if test "$PKG_CONFIG" = "no"; then + AC_MSG_ERROR([ +This package requires pkg-config. +]) +fi + +dnl Check for Glib-2.0 +# GLIB_CFLAGS: cflags for compiling glib dependant sources +# GLIB_LIBADD: glib libraries (-l options) +# GLIB_LDFLAGS: flags containing path to glib libraries (-L options) + +GLIB_PACKAGES="gmodule-2.0 gthread-2.0" +GLIB_VERSION="1.3.3" +AC_MSG_CHECKING(for GLib-2.0 (at least $GLIB_VERSION)) + +if $PKG_CONFIG --atleast-pkgconfig-version 0.15 ; then + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs-only-l --libs-only-other $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + fi +else + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs-only-l $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + AC_MSG_WARN([you may need to run make LDFLAGS=-pthread to compile arts]) + fi +fi + +if test -z "$GLIB_LIBADD"; then + AC_MSG_RESULT(not installed) + DO_NOT_COMPILE="$DO_NOT_COMPILE kerry gmcop" +fi + +AC_SUBST(GLIB_CFLAGS) +AC_SUBST(GLIB_LIBADD) +AC_SUBST(GLIB_LDFLAGS) + +dnl Check for libbeagle 0.2.0 +# LIBBEAGLE_CFLAGS: cflags for compiling libbeagle dependant sources +# LIBBEAGLE_LIBADD: libbeagle libraries (-l options) +# LIBBEAGLE_LDFLAGS: flags containing path to libbeagle libraries (-L options) + +LIBBEAGLE_PACKAGES="libbeagle-0.0" +LIBBEAGLE_VERSION="0.2.5" +AC_MSG_CHECKING(for libbeagle-0.2.5 (at least $LIBBEAGLE_VERSION)) + +if $PKG_CONFIG --atleast-pkgconfig-version 0.15 ; then + if $PKG_CONFIG --atleast-version $LIBBEAGLE_VERSION $LIBBEAGLE_PACKAGES >/dev/null 2>&1 ; then + LIBBEAGLE_CFLAGS="`$PKG_CONFIG --cflags $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LIBADD="`$PKG_CONFIG --libs-only-l --libs-only-other $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LDFLAGS="`$PKG_CONFIG --libs-only-L $LIBBEAGLE_PACKAGES`" + AC_MSG_RESULT(yes) + fi +else + if $PKG_CONFIG --atleast-version $LIBBEAGLE_VERSION $LIBBEAGLE_PACKAGES >/dev/null 2>&1 ; then + LIBBEAGLE_CFLAGS="`$PKG_CONFIG --cflags $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LIBADD="`$PKG_CONFIG --libs-only-l $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LDFLAGS="`$PKG_CONFIG --libs-only-L $LIBBEAGLE_PACKAGES`" + AC_MSG_RESULT(yes) + AC_MSG_WARN([you may need to run make LDFLAGS=-pthread to compile arts]) + fi +fi + +if test -z "$LIBBEAGLE_LIBADD"; then + AC_MSG_RESULT(not installed) + DO_NOT_COMPILE="$DO_NOT_COMPILE kerry gmcop" +fi + +AC_SUBST(LIBBEAGLE_CFLAGS) +AC_SUBST(LIBBEAGLE_LIBADD) +AC_SUBST(LIBBEAGLE_LDFLAGS) + +KDE_CREATE_SUBDIRSLIST +AM_CONDITIONAL(kerry_SUBDIR_included, test "x$kerry_SUBDIR_included" = xyes) +AM_CONDITIONAL(po_SUBDIR_included, test "x$po_SUBDIR_included" = xyes) +AC_CONFIG_FILES([ Makefile ]) +AC_CONFIG_FILES([ kerry/Makefile ]) +AC_CONFIG_FILES([ kerry/src/Makefile ]) +AC_CONFIG_FILES([ kerry/src/icons/Makefile ]) +AC_CONFIG_FILES([ kerry/src/kcm/Makefile ]) +AC_CONFIG_FILES([ po/Makefile ]) +AC_CONFIG_FILES([ po/ar/Makefile ]) +AC_CONFIG_FILES([ po/br/Makefile ]) +AC_CONFIG_FILES([ po/ca/Makefile ]) +AC_CONFIG_FILES([ po/cs/Makefile ]) +AC_CONFIG_FILES([ po/da/Makefile ]) +AC_CONFIG_FILES([ po/de/Makefile ]) +AC_CONFIG_FILES([ po/el/Makefile ]) +AC_CONFIG_FILES([ po/es/Makefile ]) +AC_CONFIG_FILES([ po/fi/Makefile ]) +AC_CONFIG_FILES([ po/fr/Makefile ]) +AC_CONFIG_FILES([ po/ga/Makefile ]) +AC_CONFIG_FILES([ po/gl/Makefile ]) +AC_CONFIG_FILES([ po/hu/Makefile ]) +AC_CONFIG_FILES([ po/it/Makefile ]) +AC_CONFIG_FILES([ po/ja/Makefile ]) +AC_CONFIG_FILES([ po/ka/Makefile ]) +AC_CONFIG_FILES([ po/km/Makefile ]) +AC_CONFIG_FILES([ po/nb/Makefile ]) +AC_CONFIG_FILES([ po/nl/Makefile ]) +AC_CONFIG_FILES([ po/nn/Makefile ]) +AC_CONFIG_FILES([ po/pl/Makefile ]) +AC_CONFIG_FILES([ po/pt/Makefile ]) +AC_CONFIG_FILES([ po/pt_BR/Makefile ]) +AC_CONFIG_FILES([ po/sk/Makefile ]) +AC_CONFIG_FILES([ po/sv/Makefile ]) +AC_CONFIG_FILES([ po/th/Makefile ]) +AC_CONFIG_FILES([ po/tr/Makefile ]) +AC_CONFIG_FILES([ po/uk/Makefile ]) +AC_CONFIG_FILES([ po/zh_CN/Makefile ]) +AC_CONFIG_FILES([ po/zh_TW/Makefile ]) +AC_OUTPUT +# Check if KDE_SET_PREFIX was called, and --prefix was passed to configure +if test -n "$kde_libs_prefix" -a -n "$given_prefix"; then + # And if so, warn when they don't match + if test "$kde_libs_prefix" != "$given_prefix"; then + # And if kde doesn't know about the prefix yet + echo ":"`kde-config --path exe`":" | grep ":$given_prefix/bin/:" 2>&1 >/dev/null + if test $? -ne 0; then + echo "" + echo "Warning: you chose to install this package in $given_prefix," + echo "but KDE was found in $kde_libs_prefix." + echo "For this to work, you will need to tell KDE about the new prefix, by ensuring" + echo "that KDEDIRS contains it, e.g. export KDEDIRS=$given_prefix:$kde_libs_prefix" + echo "Then restart KDE." + echo "" + fi + fi +fi + +if test x$GXX = "xyes" -a x$kde_have_gcc_visibility = "xyes" -a x$kde_cv_val_qt_gcc_visibility_patched = "xno"; then + echo "" + echo "Your GCC supports symbol visibility, but the patch for Qt supporting visibility" + echo "was not included. Therefore, GCC symbol visibility support remains disabled." + echo "" + echo "For better performance, consider including the Qt visibility supporting patch" + echo "located at:" + echo "" + echo "http://bugs.kde.org/show_bug.cgi?id=109386" + echo "" + echo "and recompile all of Qt and KDE. Note, this is entirely optional and" + echo "everything will continue to work just fine without it." + echo "" +fi + +if test "$all_tests" = "bad"; then + if test ! "$cache_file" = "/dev/null"; then + echo "" + echo "Please remove the file $cache_file after changing your setup" + echo "so that configure will find the changes next time." + echo "" + fi +else + echo "" + echo "Good - your configure finished. Start make now" + echo "" +fi diff --git a/configure.in.in b/configure.in.in new file mode 100644 index 0000000..8639a63 --- /dev/null +++ b/configure.in.in @@ -0,0 +1,8 @@ +#MIN_CONFIG(3.3) +# Define a symbol, to know that we're compiling WITH kde. (for apps that +# can compile without KDE, optionally) +AM_CONDITIONAL(KDE_INSTALLED, test "$have_kde" = "yes") + +KDE_ENABLE_HIDDEN_VISIBILITY +CXXFLAGS="$CXXFLAGS $KDE_DEFAULT_CXXFLAGS" + diff --git a/kerry/Makefile.am b/kerry/Makefile.am new file mode 100644 index 0000000..38fb058 --- /dev/null +++ b/kerry/Makefile.am @@ -0,0 +1,6 @@ +AUTOMAKE_OPTIONS = foreign 1.5 +DISTCLEANFILES = inst-apps + +MAINTAINERCLEANFILES = subdirs configure.in acinclude.m4 SUBDIRS + +SUBDIRS=src diff --git a/kerry/configure.in.in b/kerry/configure.in.in new file mode 100644 index 0000000..ca0a03e --- /dev/null +++ b/kerry/configure.in.in @@ -0,0 +1,89 @@ +#MIN_CONFIG +KDE_ENABLE_HIDDEN_VISIBILITY + +AC_HEADER_DIRENT +AC_HEADER_STDC +AC_CHECK_HEADERS(fcntl.h sys/sysctl.h sys/param.h sys/time.h sys/types.h sys/user.h sys/vmmeter.h sys/resource.h vm/vmparam.h unistd.h) + +AC_CHECK_SETENV +AC_CHECK_UNSETENV + +dnl Check for pkg-config +AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + +if test "$PKG_CONFIG" = "no"; then + AC_MSG_ERROR([ +This package requires pkg-config. +]) +fi + +dnl Check for Glib-2.0 +# GLIB_CFLAGS: cflags for compiling glib dependant sources +# GLIB_LIBADD: glib libraries (-l options) +# GLIB_LDFLAGS: flags containing path to glib libraries (-L options) + +GLIB_PACKAGES="gmodule-2.0 gthread-2.0" +GLIB_VERSION="1.3.3" +AC_MSG_CHECKING(for GLib-2.0 (at least $GLIB_VERSION)) + +if $PKG_CONFIG --atleast-pkgconfig-version 0.15 ; then + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs-only-l --libs-only-other $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + fi +else + if $PKG_CONFIG --atleast-version $GLIB_VERSION $GLIB_PACKAGES >/dev/null 2>&1 ; then + GLIB_CFLAGS="`$PKG_CONFIG --cflags $GLIB_PACKAGES`" + GLIB_LIBADD="`$PKG_CONFIG --libs-only-l $GLIB_PACKAGES`" + GLIB_LDFLAGS="`$PKG_CONFIG --libs-only-L $GLIB_PACKAGES`" + AC_MSG_RESULT(yes) + AC_MSG_WARN([you may need to run make LDFLAGS=-pthread to compile arts]) + fi +fi + +if test -z "$GLIB_LIBADD"; then + AC_MSG_RESULT(not installed) + DO_NOT_COMPILE="$DO_NOT_COMPILE kerry gmcop" +fi + +AC_SUBST(GLIB_CFLAGS) +AC_SUBST(GLIB_LIBADD) +AC_SUBST(GLIB_LDFLAGS) + +dnl Check for libbeagle 0.2.0 +# LIBBEAGLE_CFLAGS: cflags for compiling libbeagle dependant sources +# LIBBEAGLE_LIBADD: libbeagle libraries (-l options) +# LIBBEAGLE_LDFLAGS: flags containing path to libbeagle libraries (-L options) + +LIBBEAGLE_PACKAGES="libbeagle-0.0" +LIBBEAGLE_VERSION="0.2.5" +AC_MSG_CHECKING(for libbeagle-0.2.5 (at least $LIBBEAGLE_VERSION)) + +if $PKG_CONFIG --atleast-pkgconfig-version 0.15 ; then + if $PKG_CONFIG --atleast-version $LIBBEAGLE_VERSION $LIBBEAGLE_PACKAGES >/dev/null 2>&1 ; then + LIBBEAGLE_CFLAGS="`$PKG_CONFIG --cflags $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LIBADD="`$PKG_CONFIG --libs-only-l --libs-only-other $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LDFLAGS="`$PKG_CONFIG --libs-only-L $LIBBEAGLE_PACKAGES`" + AC_MSG_RESULT(yes) + fi +else + if $PKG_CONFIG --atleast-version $LIBBEAGLE_VERSION $LIBBEAGLE_PACKAGES >/dev/null 2>&1 ; then + LIBBEAGLE_CFLAGS="`$PKG_CONFIG --cflags $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LIBADD="`$PKG_CONFIG --libs-only-l $LIBBEAGLE_PACKAGES`" + LIBBEAGLE_LDFLAGS="`$PKG_CONFIG --libs-only-L $LIBBEAGLE_PACKAGES`" + AC_MSG_RESULT(yes) + AC_MSG_WARN([you may need to run make LDFLAGS=-pthread to compile arts]) + fi +fi + +if test -z "$LIBBEAGLE_LIBADD"; then + AC_MSG_RESULT(not installed) + DO_NOT_COMPILE="$DO_NOT_COMPILE kerry gmcop" +fi + +AC_SUBST(LIBBEAGLE_CFLAGS) +AC_SUBST(LIBBEAGLE_LIBADD) +AC_SUBST(LIBBEAGLE_LDFLAGS) + diff --git a/kerry/src/Makefile.am b/kerry/src/Makefile.am new file mode 100644 index 0000000..1843fe2 --- /dev/null +++ b/kerry/src/Makefile.am @@ -0,0 +1,44 @@ +# set the include path for X, qt and KDE +INCLUDES = $(all_includes) $(LIBBEAGLE_CFLAGS) $(GLIB_CFLAGS) + +# these are the headers for your project +noinst_HEADERS = kerryapp.h searchdlg.h hitwidget.h kwidgetlistbox.h beaglesearch.h dcopinterface.h kerrylabel.h query.h + +KDE_OPTIONS = nofinal + +# let automoc handle all of the meta source files (moc) +METASOURCES = AUTO + +messages: rc.cpp + $(EXTRACTRC) *.ui >> rc.cpp + $(XGETTEXT) *.cpp -o $(podir)/kerry.pot + +######################################################################### +# APPLICATION SECTION +######################################################################### +# this is the program that gets installed. it's name is used for all +# of the other Makefile.am variables +bin_PROGRAMS = +lib_LTLIBRARIES = +kdeinit_LTLIBRARIES = kerry.la + +# the application source, library search path, and link libraries +kerry_la_SOURCES = main.cpp beaglesearch.cpp kerryapp.cpp searchdlg.cpp searchdlg_layout.ui \ + hitwidget_layout.ui hitwidget.cpp kwidgetlistbox.cpp \ + dcopinterface.skel dcopinterface.stub kerrylabel.cpp query.cpp + +kerry_la_LDFLAGS = -Wl,-export-dynamic $(KDE_RPATH) $(all_libraries) -module $(KDE_PLUGIN) $(GLIB_LDFLAGS) $(LIBBEAGLE_LDFLAGS) +kerry_la_LIBADD = -lkio -lkonq $(LIB_KDEUI) $(LIBBEAGLE_LIBADD) $(GLIB_LIBADD) $(LIB_KABC) + +autostartdir = $(datadir)/autostart +autostart_DATA = kerry.autostart.desktop beagled.desktop + +shutdowndir = $(prefix)/shutdown +shutdown_SCRIPTS = beagled-shutdown.sh + +xdg_apps_DATA = kerry.desktop + +kerry_anim_datadir = $(datadir)/apps/kerry +kerry_anim_data_DATA = search-running.mng + +SUBDIRS=kcm icons diff --git a/kerry/src/beagled-shutdown.sh b/kerry/src/beagled-shutdown.sh new file mode 100755 index 0000000..e2f80cf --- /dev/null +++ b/kerry/src/beagled-shutdown.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +BEAGLED_PID=`pidof mono-beagled` + +if test -n "$BEAGLED_PID"; then + beagle-shutdown +fi diff --git a/kerry/src/beagled.desktop b/kerry/src/beagled.desktop new file mode 100644 index 0000000..6c880d4 --- /dev/null +++ b/kerry/src/beagled.desktop @@ -0,0 +1,26 @@ +[Desktop Entry] +X-SuSE-translate=true +Encoding=UTF-8 +Exec=sleep 5 && beagled --bg +Name=Beagle Daemon +Name[ar]=مراقب القرص و التنفيذ Beagle +Name[br]=Diaoul Beagle +Name[cs]=Démon Beagle +Name[da]=Beagle dæmon +Name[de]=Beagle-Daemon +Name[es]=Demonio Beagle +Name[fi]=Beagle-demoni +Name[ga]=Deamhan Beagle +Name[gl]=Servizo Beagle +Name[it]=Demone Beagle +Name[ja]=Beagle デーモン +Name[ka]=Beagle დემონი +Name[pt]=Servidor do Beagle +Name[sv]=Beagle-demon +Name[th]=แดมอน Beagle +Name[uk]=Даемон Beagle +Name[zh_CN]=Beagle 守护进程 +X-KDE-autostart-condition=kerryrc:Beagle:AutoStart:true +X-KDE-StartupNotify=false +X-KDE-autostart-after=kerry +X-KDE-autostart-phase=2 diff --git a/kerry/src/beaglesearch.cpp b/kerry/src/beaglesearch.cpp new file mode 100644 index 0000000..e7e281a --- /dev/null +++ b/kerry/src/beaglesearch.cpp @@ -0,0 +1,460 @@ +/*************************************************************************** + * Copyright (C) 2005 by Debajyoti Bera * + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#include "beaglesearch.h" +#include +#include +#include +#include +#include + +struct PropertyInfo +{ + int tilegroup; + const char* identifier; + const char* label; +}; + +static const PropertyInfo propertiesInfo[] = +{ +/* { BeagleSearch::Application, "fixme:Name", I18N_NOOP("Name: %1")"
" }, + { BeagleSearch::Application, "fixme:Comment", I18N_NOOP("Comment: %1")"
" }, + { BeagleSearch::Application, "fixme:Categories", I18N_NOOP("Categories: %1")"
" },*/ + { BeagleSearch::Application, "fixme:Name", 0 }, + { BeagleSearch::Audio, "fixme:title", 0 }, + { BeagleSearch::Audio, "fixme:album", I18N_NOOP("Album: %1")"
" }, + { BeagleSearch::Audio, "fixme:ExactFilename", I18N_NOOP("Title: %1")"
" }, + { BeagleSearch::Audio, "fixme:artist", I18N_NOOP("Artist: %1")"
" }, + { BeagleSearch::Image, "fixme:width", I18N_NOOP("Width: %1")"   " }, + { BeagleSearch::Image, "fixme:height", I18N_NOOP("Height: %1")"   " }, + { BeagleSearch::Image, "fixme:colortype", I18N_NOOP("Color type: %1")"
" }, + { BeagleSearch::Contact, "fixme:Name", 0 }, + { BeagleSearch::Contact, "fixme:Email1", 0 }, + { BeagleSearch::Contact, "vCard:FN", 0 }, + { BeagleSearch::Contact, "vCard:EMAIL", 0 }, + { BeagleSearch::Contact, "fixme:BusinessPhone", I18N_NOOP("Business phone: %1")"
" }, + { BeagleSearch::Contact, "fixme:HomePhone", I18N_NOOP("Home phone: %1")"
" }, + { BeagleSearch::Contact, "fixme:MobilePhone", I18N_NOOP("Mobile phone: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImAim", I18N_NOOP("AIM: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImYahoo", I18N_NOOP("Yahoo: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImMsn", I18N_NOOP("MSN: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImJabber", I18N_NOOP("Jabber: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImIcq", I18N_NOOP("ICQ: %1")"
" }, + { BeagleSearch::Contact, "fixme:ImGroupWise", I18N_NOOP("GroupWise: %1")"
" }, +// { BeagleSearch::Conversations, "fixme:speakingto", I18N_NOOP("From: %1")"
" }, + { BeagleSearch::Conversations, "fixme:speakingto", 0 }, + { BeagleSearch::Conversations, "fixme:protocol", I18N_NOOP("Protocol: %1")"
" }, + { BeagleSearch::Conversations, "fixme:starttime", I18N_NOOP("Start time: %1")"
" }, + { BeagleSearch::Conversations, "fixme:endtime", I18N_NOOP("End time: %1")"
" }, + { BeagleSearch::Conversations, "dc:title", 0 }, + { BeagleSearch::Conversations, "fixme:from", 0 }, + { BeagleSearch::Conversations, "fixme:date", 0 }, + { BeagleSearch::Conversations, "fixme:folder", I18N_NOOP("Folder: %1")" " }, + { BeagleSearch::Conversations, "fixme:account", I18N_NOOP("(%1)")"
" }, +/* { BeagleSearch::Conversations, "fixme:isAnswered", I18N_NOOP("Was answered.")"   " }, + { BeagleSearch::Conversations, "fixme:isSeen", I18N_NOOP("Was seen.")"   " }, + { BeagleSearch::Conversations, "fixme:hasAttachments", I18N_NOOP("Has Attachments.")"   " },*/ +// Presentation + { BeagleSearch::Documents, "dc:title", I18N_NOOP("Title: %1")"
" }, + { BeagleSearch::Documents, "dc:author", I18N_NOOP("Author: %1")"
" }, + { BeagleSearch::Documents, "fixme:slide-count", I18N_NOOP("Slides: %1")"   " }, +// Text Document + { BeagleSearch::Documents, "fixme:page-count", I18N_NOOP("Pages: %1")"   " }, + { BeagleSearch::Documents, "fixme:word-count", I18N_NOOP("Words: %1") }, + { BeagleSearch::Feed, "dc:title", 0 }, + { BeagleSearch::Feed, "dc:identifier", 0 }, +/* { BeagleSearch::Feed, "dc:date", I18N_NOOP("Date: %1")"
" }, + { BeagleSearch::Feed, "dc:source", I18N_NOOP("Source: %1")"
" },*/ + { BeagleSearch::Website, "dc:title", 0 }, + { BeagleSearch::Website, "Title", 0 }, + { BeagleSearch::Note, "dc:title", 0 }, +// Packages (ebuild, RPM, etc.) + { BeagleSearch::Packages, "dc:title", I18N_NOOP("Title: %1")"
" }, + { BeagleSearch::Packages, "dc:subject", 0 }, + { BeagleSearch::Packages, "fixme:category", I18N_NOOP("Category: %1")"
" }, + { BeagleSearch::Packages, "fixme:version", I18N_NOOP("Version: %1")"
" }, + { BeagleSearch::Packages, "dc:source", 0 }, + { BeagleSearch::Packages, "fixme:packager_name", I18N_NOOP("Packager name: %1")"
" }, + { BeagleSearch::Packages, "fixme:packager_email", I18N_NOOP("Packager email: %1")"
" }, + { BeagleSearch::Packages, "fixme:size", 0 }, + { BeagleSearch::Packages, "fixme:install_time", 0 }, + { BeagleSearch::Packages, "fixme:contents_byte_count", 0 }, + { BeagleSearch::Unknown, "dc:author", I18N_NOOP("Author: %1")"
" }, + { BeagleSearch::Unknown, "dc:title", I18N_NOOP("Title: %1")"
" }, +// Calendar + { BeagleSearch::Unknown, "fixme:summary", 0 }, + { BeagleSearch::Unknown, "fixme:starttime", 0 }, + { BeagleSearch::Unknown, "fixme:endtime", 0 }, + { BeagleSearch::Unknown, "fixme:location", I18N_NOOP("Location: %1")"
" }, + { BeagleSearch::Unknown, "fixme:page-count", I18N_NOOP("Pages: %1")"
" }, +// { BeagleSearch::, "", I18N_NOOP(": %1")+"
" }, +// { "", "", I18N_NOOP("") }, + { 0, 0, 0} +}; + +struct HitFlavorInfo +{ + int tilegroup; + const char* uri; + const char* type; + const char* mimetype; +}; + +static const HitFlavorInfo hitflavorinfos[] = +{ + { BeagleSearch::Application, 0, 0, "application/x-desktop" }, + { BeagleSearch::Audio, 0, 0, "audio/" }, + { BeagleSearch::Audio, 0, 0, "application/ogg" }, + { BeagleSearch::Contact, 0, "Contact", 0 }, + { BeagleSearch::Conversations, 0, "IMLog", 0 }, + { BeagleSearch::Conversations, 0, "MailMessage", 0 }, + { BeagleSearch::Conversations,"email://", 0, 0 }, + { BeagleSearch::Feed, 0, "FeedItem", 0 }, + { BeagleSearch::Folder, 0, 0, "inode/directory" }, + { BeagleSearch::Folder, 0, 0, "x-directory/normal" }, + { BeagleSearch::Image, "file://", 0, "image/" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.impress.template" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.impress" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.ms-powerpoint" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.presentation" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.presentation" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.calc" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.calc.template" }, + { BeagleSearch::Documents, 0, 0, "application/excel" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.ms-excel" }, + { BeagleSearch::Documents, 0, 0, "application/x-excel" }, + { BeagleSearch::Documents, 0, 0, "application/x-msexcel" }, + { BeagleSearch::Documents, 0, 0, "application/x-gnumeric" }, + { BeagleSearch::Documents, 0, 0, "text/spreadsheet" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.spreadsheet" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.spreadsheet.template" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.writer" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.sun.xml.writer.template" }, + { BeagleSearch::Documents, 0, 0, "application/msword" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.ms-word" }, + { BeagleSearch::Documents, 0, 0, "application/x-msword" }, + { BeagleSearch::Documents, 0, 0, "application/pdf" }, + { BeagleSearch::Documents, 0, 0, "application/x-abiword" }, + { BeagleSearch::Documents, 0, 0, "application/rtf" }, + { BeagleSearch::Documents, 0, 0, "application/x-chm" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.text" }, + { BeagleSearch::Documents, 0, 0, "application/vnd.oasis.opendocument.text.template" }, + { BeagleSearch::Note, "note://", 0, 0 }, + { BeagleSearch::Note, "knotes://", 0, 0 }, + { BeagleSearch::Video, 0, 0, "video/" }, + { BeagleSearch::Website, 0, "Google", 0 }, + { BeagleSearch::Website, 0, "WebHistory", 0 }, + { BeagleSearch::Website, 0, 0, "beagle/x-konq-cache" }, + { BeagleSearch::Packages, "*.ebuild", 0, 0 }, + { BeagleSearch::Packages, "*.rpm", 0, "application/x-rpm" }, + { BeagleSearch::Packages, "*.deb", 0, "application/x-deb" }, + { BeagleSearch::Unknown, "file://", "File", 0 }, // mimetype wildcard must be last + { 0, 0, 0, 0} +}; + +BeagleSearch::BeagleSearch(int id, QObject *parent, QString term) + : id (id), kill_me (false), parent (parent) +{ + query = beagle_query_new (); + beagle_query_set_max_hits(query, 100); + beagle_query_add_text (query, term.ascii()); + + client = beagle_client_new (NULL); + + client_mutex = new QMutex (); + + main_loop = g_main_loop_new (NULL, FALSE); +} + +void BeagleSearch::run() +{ + g_signal_connect (query, "hits-added", + G_CALLBACK (hits_added_cb), + this); + g_signal_connect (query, "hits-subtracted", + G_CALLBACK (hits_subtracted_cb), + this); + g_signal_connect (query, "finished", + G_CALLBACK (finished_cb), + this); + beagle_client_send_request_async (client, + BEAGLE_REQUEST (query), + NULL); + g_main_loop_run (main_loop); + kdDebug () << "Finished query ..." << endl; + + bool run = true; + while (run) { + g_main_context_iteration(0, false); + sleep(1); + client_mutex->lock (); + run = !kill_me; + client_mutex->unlock (); + } + kdDebug() << "!!! run ending" << endl; + + QCustomEvent *ev; + ev = new QCustomEvent (KILLME, this); + qApp->postEvent(parent, ev); +} + +void BeagleSearch::stopClient() +{ + if (finished ()) + return; // duh! + kdDebug () << "Query thread " << id << " not yet finished ..." << endl; + // get ready for suicide + client_mutex->lock (); + kill_me = true; + g_signal_handlers_disconnect_by_func ( + query, + (void *)hits_added_cb, + this); + g_signal_handlers_disconnect_by_func ( + query, + (void *)hits_subtracted_cb, + this); + g_signal_handlers_disconnect_by_func ( + query, + (void *)finished_cb, + this); + g_main_loop_quit (main_loop); + client_mutex->unlock (); +} + +BeagleSearch::~BeagleSearch() +{ + if (! finished ()) { + kdDebug () << "Thread " << id << " still running. Waiting.........." << endl; + wait (); + } + + g_object_unref (client); + g_main_loop_unref (main_loop); + g_object_unref (query); + kdDebug() << "Deleting client ..." << id << endl; + + delete client_mutex; +} + +QString *BeagleSearch::get_uri_from_file_hit(BeagleHit *hit) +{ + return new QString (beagle_hit_get_uri (hit)); +} + +QString *BeagleSearch::get_parent_uri_from_file_hit(BeagleHit *hit) +{ + return new QString (beagle_hit_get_parent_uri (hit)); +} + +QString *BeagleSearch::get_source_from_file_hit(BeagleHit *hit) +{ + return new QString (beagle_hit_get_source (hit)); +} + +QString *BeagleSearch::get_uri_from_feed_hit(BeagleHit *hit) +{ + const char *result; + beagle_hit_get_one_property (hit, "fixme:itemuri", &result); + return new QString (result); +} + +void BeagleSearch::hits_added_cb (BeagleQuery *query, BeagleHitsAddedResponse *response, BeagleSearch *client) +{ + GSList *hits, *l; + gint i; + gint nr_hits; + BeagleResultList* results; + results = new BeagleResultList; + + // check if we are supposed to be killed + client->client_mutex->lock (); + if (client->kill_me) { + kdDebug () << "Suicide time before processing" << endl; + client->client_mutex->unlock (); + return; + } + client->client_mutex->unlock (); + + // This is necessary only once, not for each item + BeagleSnippetRequest *snippetrequest = beagle_snippet_request_new(); + beagle_snippet_request_set_query(snippetrequest, query); + + hits = beagle_hits_added_response_get_hits (response); + nr_hits = g_slist_length (hits); + kdDebug() << "---------- hits added:" << nr_hits << endl; + for (l = hits, i = 1; l; l = l->next, ++i) { + //print_hit (BEAGLE_HIT (l->data)); + beagle_result_struct *result = new beagle_result_struct; + BeagleHit *hit = BEAGLE_HIT (l->data); + + result->hit_type = QString(beagle_hit_get_type (BEAGLE_HIT (l->data))); + + const char *_mime_type = beagle_hit_get_mime_type(BEAGLE_HIT (l->data)); + const char *mime_type = (_mime_type == NULL ? "-" : _mime_type); + + if (result->hit_type=="MailMessage" && QString(mime_type)!="message/rfc822") { + delete result; + continue; + } + + result->mime_type = new QString(mime_type); + result->score = beagle_hit_get_score(BEAGLE_HIT (l->data)); + result->uri = get_uri_from_file_hit (BEAGLE_HIT (l->data)); + result->tilegroup = Unknown; + result->parent_uri = get_parent_uri_from_file_hit (BEAGLE_HIT (l->data)); + result->source = get_source_from_file_hit (BEAGLE_HIT (l->data)); + result->client_id = client->id; +#if 0 + kdDebug() << "Properties of " << *(result->uri) << endl; + GSList *properties, *p; + gint i; + properties = beagle_hit_get_all_properties (hit); + for (p = properties, i = 1; p; p = p->next, ++i) { + BeagleProperty* property = (BeagleProperty*)p->data; + const char* key = beagle_property_get_key( property ); + const char* value = beagle_property_get_value( property ); + kdDebug() << " \"" << key << "\" = \"" << value << "\"" << endl; + } + kdDebug() << "parent_uri = " << *(result->parent_uri) << endl; + kdDebug() << "source = " << *(result->source) << endl; + kdDebug() << "tilegroup = " << result->tilegroup << endl; +#endif + + for( uint i = 0; hitflavorinfos[i].tilegroup!=0; i++ ) { + if( (hitflavorinfos[i].uri == 0 || (*(result->uri)).startsWith(hitflavorinfos[i].uri) || (hitflavorinfos[i].uri[0]=='*' && (*(result->uri)).endsWith(hitflavorinfos[i].uri+1))) && + (hitflavorinfos[i].type == 0 || hitflavorinfos[i].type==result->hit_type) && + (hitflavorinfos[i].mimetype == 0 || (*(result->mime_type)).startsWith(hitflavorinfos[i].mimetype))) { + result->tilegroup = (TileGroup)hitflavorinfos[i].tilegroup; + break; + } + } + + for( uint i = 0; propertiesInfo[i].identifier!=0; i++ ) { + if( propertiesInfo[i].tilegroup==0 || propertiesInfo[i].tilegroup==result->tilegroup ) { + GSList *properties = beagle_hit_get_properties( hit, propertiesInfo[i].identifier ); + if (g_slist_length(properties)>0) { + const char *property = (char*)properties->data; + if (property) { + if (propertiesInfo[i].label) { + QString propertystr = i18n(propertiesInfo[i].label).arg(property); + result->properties.append(propertystr); + } + else + result->properties.append(QString(propertiesInfo[i].identifier)+'='+property); + } + } + } + } + + beagle_snippet_request_set_hit(snippetrequest, hit); + + GError *err = NULL; + BeagleResponse *response; + response = beagle_client_send_request (client->client, BEAGLE_REQUEST (snippetrequest), &err); + if (err) { + g_error_free (err); + result->snippet = 0; + } + else + result->snippet = new QString( beagle_snippet_response_get_snippet( BEAGLE_SNIPPET_RESPONSE(response)) ); + + if (response) + g_object_unref(response); + + BeagleTimestamp *timestamp = beagle_hit_get_timestamp (BEAGLE_HIT (l->data)); + time_t index_time; + if (beagle_timestamp_to_unix_time (timestamp, &index_time)) + result->last_index_time = index_time; + else + result->last_index_time = 0; + + results->append (result); + } + + g_object_unref(snippetrequest); + + // check if we are supposed to be killed + client->client_mutex->lock (); + if (client->kill_me) { + kdDebug () << "Suicide time before sending ..." << endl; + client->client_mutex->unlock (); + delete results; + return; + } + client->client_mutex->unlock (); + + QCustomEvent *ev = new QCustomEvent (RESULTFOUND, results); + qApp->postEvent (client->parent, ev); +} + +void BeagleSearch::hits_subtracted_cb (BeagleQuery */*query*/, BeagleHitsSubtractedResponse *response, BeagleSearch *client) +{ + GSList *uris; + gint nr_hits; + BeagleVanishedURIList* vanished; + vanished = new BeagleVanishedURIList(); + vanished->client_id = client->id; + + // check if we are supposed to be killed + client->client_mutex->lock (); + if (client->kill_me) { + kdDebug () << "Suicide time before sending ..." << endl; + client->client_mutex->unlock (); + return; + } + client->client_mutex->unlock (); + + uris = beagle_hits_subtracted_response_get_uris (response); + nr_hits = g_slist_length (uris); + kdDebug() << "---------- hits subtracted:" << nr_hits << endl; + while (uris != NULL) { + char *uri = (char*)uris->data; + + g_print ("removed: %s\n", uri); + + vanished->list.append(QString(uri)); + uris = uris->next; + } + + QCustomEvent *ev = new QCustomEvent (RESULTGONE, vanished); + qApp->postEvent (client->parent, ev); +} + +void BeagleSearch::finished_cb (BeagleQuery */*query*/, + BeagleFinishedResponse */*response*/, + BeagleSearch *client) +{ + kdDebug() << "---------- finished" << endl; + + // check if we are supposed to be killed + client->client_mutex->lock (); + if (client->kill_me) { + kdDebug () << "Suicide time before sending ..." << endl; + client->client_mutex->unlock (); + return; + } + client->client_mutex->unlock (); + + g_main_loop_quit (client->main_loop); + + QCustomEvent *ev = new QCustomEvent (SEARCHOVER, client); + qApp->postEvent (client->parent, ev); +} diff --git a/kerry/src/beaglesearch.h b/kerry/src/beaglesearch.h new file mode 100644 index 0000000..28a4602 --- /dev/null +++ b/kerry/src/beaglesearch.h @@ -0,0 +1,145 @@ +/*************************************************************************** + * Copyright (C) 2005 by Debajyoti Bera * + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#ifndef BEAGLESEARCH_H +#define BEAGLESEARCH_H + +#include +#include +#include +#include +#include + +extern "C" { +#include +#include +#include +} + +#define RESULTFOUND (QEvent::Type)1001 /* QEvent::User + 1 */ +#define RESULTGONE (QEvent::Type)1002 /* QEvent::User + 2 */ +#define SEARCHOVER (QEvent::Type)1003 /* QEvent::User + 3 */ +#define KILLME (QEvent::Type)1004 /* QEvent::User + 4 */ + +/** + Interface to beagle-query +*/ +class BeagleSearch : public QThread { + +public: + +enum TileGroup { + Application=1, // in scope list + Contact, + Folder, + Documents, // in scope list + Conversations, // in scope list + Image, // in scope list + Audio, // in scope list + Video, // in scope list + Website, // in scope list + Feed, + Note, + Packages, + Unknown +}; + +typedef QValueList PropertyList; + +class beagle_result_struct { +public: + beagle_result_struct () { + uri = NULL; + parent_uri = NULL; + source = NULL; + mime_type = NULL; + snippet = NULL; + last_index_time = 0; + show_expanded = false; + } + + ~beagle_result_struct () { + delete uri; + delete parent_uri; + delete source; + delete mime_type; + delete snippet; + } + + QString *uri; + QString *parent_uri; + QString *source; + PropertyList properties; + QString hit_type; + QString *mime_type; + time_t last_index_time; + double score; + QString *snippet; + TileGroup tilegroup; + int client_id; + bool show_expanded; +}; + +typedef QPtrList BeagleResultList; + +typedef QValueList VanishedURIList; + +class BeagleVanishedURIList { +public: + BeagleVanishedURIList() { + client_id = 0; + } + + ~BeagleVanishedURIList () {} + + int client_id; + VanishedURIList list; +}; + + BeagleSearch(int id, QObject *parent, QString term); + ~BeagleSearch(); + + virtual void run(); + + void stopClient(); + + int id; + bool kill_me; + +private: + QObject *parent; + + static void hits_added_cb (BeagleQuery *, BeagleHitsAddedResponse *, BeagleSearch* client); + static void hits_subtracted_cb (BeagleQuery *, BeagleHitsSubtractedResponse *, BeagleSearch* client); + static void finished_cb (BeagleQuery *, BeagleFinishedResponse *, BeagleSearch* client); + + static QString *get_uri_from_feed_hit (BeagleHit *); + static QString *get_uri_from_file_hit (BeagleHit *); + static QString *get_parent_uri_from_file_hit (BeagleHit *); + static QString *get_source_from_file_hit (BeagleHit *); + + QMutex *client_mutex; + + BeagleClient *client; + BeagleQuery *query; + GMainLoop *main_loop; +}; + +#endif diff --git a/kerry/src/dcopinterface.h b/kerry/src/dcopinterface.h new file mode 100644 index 0000000..69f25c9 --- /dev/null +++ b/kerry/src/dcopinterface.h @@ -0,0 +1,36 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#ifndef DCOPINTERFACE_H +#define DCOPINTERFACE_H + +#include + +class dcopIface : virtual public DCOPObject +{ + K_DCOP + +k_dcop: + virtual ASYNC showSearchDialog() = 0; + virtual ASYNC search(const QString&) = 0; + virtual ASYNC search(const QString&, const QString&) = 0; + virtual ASYNC configChanged() = 0; +}; + +#endif // DCOPINTERFACE_H diff --git a/kerry/src/hitwidget.cpp b/kerry/src/hitwidget.cpp new file mode 100644 index 0000000..dee7534 --- /dev/null +++ b/kerry/src/hitwidget.cpp @@ -0,0 +1,223 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#include "hitwidget.h" +#include "kerrylabel.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +HitWidget::HitWidget(QString uri, QString mimetype, KWidgetListbox *parent, const char *name) + : HitWidgetLayout(parent, name), m_uri(uri), m_mimetype(mimetype), m_collapsed(false), + m_is_collapsible(false), m_icon(QString::null), m_result(0) +{ + HitWidgetLayoutLayout->setMargin(4); + toolButton1->setEnabled(false); + + score->setText(""); + setDescriptionText(""); + setPropertiesText(""); + icon->installEventFilter(this); + pFileTip = new KonqFileTip(parent); + pFileTip->setItem(0L); + qsv=parent; + + connect(toolButton1, SIGNAL(clicked()), SLOT(toggleCollapsed())); +} + +HitWidget::~HitWidget() +{ + delete pFileTip; +} + +void HitWidget::setIcon(const QString name) +{ + m_icon = name; + if (m_collapsed) + icon->setPixmap(KGlobal::iconLoader()->loadIcon(m_icon, KIcon::NoGroup, KIcon::SizeSmall)); + else + icon->setPixmap(KGlobal::iconLoader()->loadIcon(m_icon, KIcon::NoGroup, KIcon::SizeLarge)); +} + +void HitWidget::toggleCollapsed() +{ + setCollapsed(!m_collapsed); +} + +void HitWidget::setCollapsible(BeagleSearch::beagle_result_struct *result) +{ + m_result = result; + m_is_collapsible = (m_result!=0); + + bool show_expanded; + if (result) + show_expanded = m_result->show_expanded; + + m_collapsed=!m_collapsed; + toggleCollapsed(); + + if (result) + m_result->show_expanded = show_expanded; + + if (m_is_collapsible) + toolButton1->setEnabled(true); +} + +void HitWidget::setCollapsed(bool collapsed) +{ + if (!m_is_collapsible || m_collapsed==collapsed) + return; + + if (collapsed) { + icon->setPixmap(KGlobal::iconLoader()->loadIcon(m_icon, KIcon::NoGroup, KIcon::SizeSmall)); + toolButton1->setIconSet(SmallIconSet("kerry_info")); + toolButton1->setTextLabel(i18n("Expand")); + description->setHidden(true); + properties->setHidden(true); + score->setHidden(true); + icon->setMinimumSize( QSize( 64, 16 ) ); + icon->setMaximumSize( QSize( 64, 16 ) ); + m_collapsed = collapsed; + } + else { + icon->setPixmap(KGlobal::iconLoader()->loadIcon(m_icon, KIcon::NoGroup, KIcon::SizeLarge)); + toolButton1->setIconSet(SmallIconSet("kerry_arrow")); + toolButton1->setTextLabel(i18n("Collapse")); + description->setHidden(false); + properties->setHidden(false); + score->setHidden(false); + icon->setMinimumSize( QSize( 64, 64 ) ); + icon->setMaximumSize( QSize( 64, 64 ) ); + m_collapsed = collapsed; + emit uncollapsed(this); + } + + if (m_result) + m_result->show_expanded = !collapsed; + + if (qsv) + qsv->adjustSize(this); +} + +bool HitWidget::isCollapsed() const +{ + return m_collapsed; +} + +bool HitWidget::isCollapsible() const +{ + return m_is_collapsible; +} + +void HitWidget::setDescriptionText(QString text) +{ + description->setText(text); +} + +void HitWidget::setPropertiesText(QString text) +{ + properties->setText(text); +} + +void HitWidget::insertHeaderWidget( int index, QWidget * widget) +{ + layoutHeader->insertWidget(index,widget); +} + +void HitWidget::insertHitWidget( int index, QWidget * widget) +{ + layoutButton->insertWidget(index,widget); +} + +void HitWidget::insertTextWidget( int index, QWidget * widget) +{ + layoutText->insertWidget(index,widget); +} + +void HitWidget::insertHitSpacing( int index, int size) +{ + layoutButton->insertSpacing(index,size); +} + +QString HitWidget::uri() const +{ + return m_uri; +} + +void HitWidget::setUri(const QString uri) +{ + pFileTip->setItem(0L); + m_uri = uri; +} + +QString HitWidget::mimetype() const +{ + return m_mimetype; +} + +void HitWidget::adjustSize() +{ + int dwidth, pwidth; + + HitWidgetLayout::adjustSize(); + if (m_is_collapsible) { + dwidth = width()-160; + pwidth = width()-160; + } + else { + dwidth = description->size().width(); + pwidth = properties->size().width(); + } + + description->setFixedSize(dwidth,description->heightForWidth(dwidth)); + properties->setFixedSize(pwidth,properties->heightForWidth(pwidth)); + HitWidgetLayout::adjustSize(); +} + +bool HitWidget::eventFilter( QObject *obj, QEvent *ev ) +{ + if ( obj == icon && !m_uri.isEmpty() ) { + if ( ev->type() == QEvent::Enter && parent() ) { + pFileTip->setOptions(true, true, 6); + KFileItem *fileitem=new KFileItem(m_uri,m_mimetype,KFileItem::Unknown); + QPoint viewport = qsv->viewport()->mapFromGlobal(mapToGlobal(icon->pos())); + QRect qr(qsv->viewportToContents(viewport),QSize(icon->width()*2,icon->height())); + pFileTip->setItem(fileitem,qr,icon->pixmap()); + } + else if ( ev->type() == QEvent::Leave ) + pFileTip->setItem(0L); + return HitWidgetLayout::eventFilter( obj, ev ); + } + return false; +} + +int HitWidget::collapsedHeight() const +{ + return description->fontMetrics().height()+14; +} + +#include "hitwidget.moc" diff --git a/kerry/src/hitwidget.h b/kerry/src/hitwidget.h new file mode 100644 index 0000000..002bc47 --- /dev/null +++ b/kerry/src/hitwidget.h @@ -0,0 +1,76 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#ifndef HITWIDGET_H +#define HITWIDGET_H + +#include +#include "kwidgetlistbox.h" +#include "beaglesearch.h" + +class QScrollView; +class KonqFileTip; + +class HitWidget : public HitWidgetLayout +{ + Q_OBJECT + public: + HitWidget(QString uri, QString mimetype, KWidgetListbox *parent = 0, const char *name = 0); + ~HitWidget(); + + void setCollapsible(BeagleSearch::beagle_result_struct *result); + bool isCollapsible() const; + + void setCollapsed(bool); + bool isCollapsed() const; + + int collapsedHeight() const; + + void setIcon(QString name); + + void setDescriptionText(QString text); + void setPropertiesText(QString text); + void setUri(const QString uri); + QString uri() const; + QString mimetype() const; + + void insertHeaderWidget( int index, QWidget * widget); + void insertTextWidget( int index, QWidget * widget); + void insertHitWidget( int index, QWidget * widget); + void insertHitSpacing( int index, int size); + + virtual void adjustSize(); + virtual bool eventFilter(QObject*, QEvent*); + + signals: + void uncollapsed(HitWidget*); + + private slots: + void toggleCollapsed(); + + private: + KWidgetListbox* qsv; + QString m_uri, m_mimetype; + KonqFileTip* pFileTip; + bool m_collapsed, m_is_collapsible; + QString m_icon; + BeagleSearch::beagle_result_struct * m_result; +}; + +#endif diff --git a/kerry/src/hitwidget_layout.ui b/kerry/src/hitwidget_layout.ui new file mode 100644 index 0000000..c4d61d3 --- /dev/null +++ b/kerry/src/hitwidget_layout.ui @@ -0,0 +1,377 @@ + +HitWidgetLayout + + + HitWidgetLayout + + + + 0 + 0 + 308 + 108 + + + + + 3 + 3 + 0 + 0 + + + + + unnamed + + + 0 + + + + toolButton1 + + + + + + true + + + + + spacer5_2 + + + Vertical + + + Expanding + + + + 20 + 1 + + + + + + layoutIcon + + + + unnamed + + + + spacer59 + + + Vertical + + + Fixed + + + + 20 + 2 + + + + + + icon + + + + 0 + 0 + 0 + 0 + + + + + 64 + 64 + + + + + 64 + 64 + + + + image0 + + + AlignCenter + + + + + score + + + + 5 + 5 + 0 + 0 + + + + Score: 0 + + + RichText + + + WordBreak|AlignCenter + + + + + spacer5 + + + Vertical + + + Expanding + + + + 20 + 0 + + + + + + + + spacer6_3 + + + Horizontal + + + Fixed + + + + 8 + 20 + + + + + + spacer6_3 + + + Horizontal + + + Fixed + + + + 8 + 20 + + + + + + layout8 + + + + unnamed + + + 0 + + + 0 + + + + layoutHeader + + + + unnamed + + + + spacer_2 + + + Horizontal + + + Expanding + + + + 210 + 1 + + + + + + + + layout27 + + + + unnamed + + + 0 + + + 0 + + + + spacer6 + + + Horizontal + + + Fixed + + + + 16 + 20 + + + + + + layoutText + + + + unnamed + + + 2 + + + 2 + + + + description + + + + 7 + 5 + 0 + 0 + + + + Description + + + WordBreak|AlignTop + + + + + properties + + + + 7 + 5 + 0 + 0 + + + + Properties + + + WordBreak|AlignTop + + + + + layoutButton + + + + unnamed + + + + spacer + + + Horizontal + + + Expanding + + + + 10 + 0 + + + + + + + + + + + + spacer6_2 + + + Vertical + + + MinimumExpanding + + + + 10 + 0 + + + + + + + + + + + + 89504e470d0a1a0a0000000d4948445200000040000000470806000000b76c4166000013c349444154789cd59b797c54e5b9c7bfef39b36526939504123611300ae202294a412c52aca0423197c5da96aa148b8ab6b4f45a976b5d3ef62af4f6aab5d88216efd52ab457f40388209b20d42218a0e06509040890852c6499c96ce73cf78f33998430249310d4fb7c3eef273367ce79dff7f77b96f7799ff704bea6f20790c9203920ce68f380f407b91de437205ff51c2f8a3c07721988b200b6d9d2406680ac834b3b3b9eea8a4977853c0bf20670a8c5355dd7e9dbb72fbd7bf72635351511a1bcbc9c03070e505b5b1bbb2f1df829f0e4d7084f5c590d3b5a7e7f03e46e90dc165acdcbcb93471e7944366edc28959595621886b416bfdf2f6bd7ae955b6fbd55945242d4620abe8e6ef12ac850103b881ef5653788a305e8a4a4249932658aac5fbf5e2291c83980cf27a669caf2e5cb25232323d6d7ad1d24e1a29acc22909f00b9bd7b3369d224b2b3b3a9afafe7f4e9d3d4d5d5919999c9f5d75fcf6db7dd46767676a7c7d9b3670f37df7c33e5e5e500dc0ffce1ebe00e4341aeb9e61aa9aaaa4a58ab9d95ad5bb78acbe512a2d6b5fcab7687c7409240366fde7cd1c137c9534f3d157385895f3501978278bd5e0904025f1a010d0d0d9293932344738644e6a95d2c026c80520aa5da77c56030d8e9714cd38c7df6783ccc983103001ff06202245c340286000d0d0d1c3d7af4bcf7048341e6cd9bc7c183073bdcffce9d3bb9e1861bf0fbfdb16b7bf7ee25292929f67d7f02fd5c3402be81a59d0d1b36c4fd7dfbf6ed8c1c3992d75f7f9d81030776a8efa3478f3261c204f2f2f2484e4e8e5d1f3c7830c1603066751f004f7d55b1e0896830bae38e3b623eba7bf76e79e2892764c48811a2699a003266cc980ef9792412911b6fbc51745d975dbb76c5bde785175e88f50fc8c82e24c10ef402ae044601e3807c6002f063e0c9eb60cfd5205a74f0dcdc5c314d53f6eedd2bd9d9d9e7e4f34f3cf144870858b2648900327efc7889442262188698a629a6699e75dfc2850bcf22a1b359621e3017f81b701808b706d0d49452a2699a689a26baae4b5a5a9a0c19324466cf9e2da1504844444a4b4b65d8b061b1679c4ea7ecdbb72f61f0a15048060c1820802c5dba541a1b1b25100848301894502824e17038468a6118f2ca2bafc448d0acbd46c2240c063e04ccf3016ed95e7ae925a9aaaa129fcf27a150e81c6db494aaaa2a993a75aae4e7e7cbead5ab3ba4fd356bd608206eb75b4a4a4aa4b6b656eaeaeaa4bebe5e1a1a1ac4e7f389dfef3f8b98c71f7f3c36cf6f2748c0f5407d4bcdde70c30dd2bf7fffb8e0dd6eb79497977708486765eedcb90248efdebda5a2a2422a2b2ba5aaaa4aaaababa5a6a6466a6a6ae4cc993367115357572763c78e8d6588adc1c65b057e072403a4a5a5b164c91294521c3e7c382e5bf7de7bef05e5f11d91a625d5eff7e3f7fb09854267b570387c4e330c83f9f3e7e3743a0901cfb722211e01c300bc5e2f1b366ce0e0c1836cdebc39ee84ba77efce934f3ed9a520db926eddba01505d5d4d5959590c646b225ab75ebd7af1ddef7e1780ddadfa8c47400540414101575d75158b162d8a3b194dd358b870219999995d06b03d193264080022427d7d7d9b9a6fdd264e9c089c5d70012b636d2dab8199cb972f273737978a8a8ab89379e08107983c7972d7a14b401c0e07006eb79bb4b434c2e130d09c72b7d5060d1a84aeeb941bc6597dc623603130b3b6b696e79e7b2eee446ebae926162c58d095d81292eddbb703306ad4286c361ba150a84dd0d04c8ec7e3c1e57251ebf39dd5673c02fe01ac07c6c69b446e6e2e6fbdf5564c1b5f961c3f7e9c65cb96e1743a9931634687b4dfd4448448ab7ee31100300ff814380ba5a669bcf6da6bf4e8d1a3cb01b625c16090993367525f5fcf9c3973e8d3a74f87b4af94a2a1a1816030481ad64eb149ce474021f024f09b96171f7cf0416eb9e5968b81f1bc120e8799356b161f7df411e3c78f67e2c48984c3e1b820db6abb76edc2300c7280aa16fd9f8f0080e7817f018629a59832650af3e7cfbf7848e388dfefe7eebbef66d9b2658c1c3992d9b367138944300c2361cd37b5f7df7f1fb0362e7b5b8cd11601027c020c9b3a752a6fbffd7642c58dae92d2d252a64d9bc6962d5b183e7c380f3ffc3022d2aee9c76bfbf6ed63d3a64dd88149c09216e3b44500c03ae0e1eaeaea2f157c61612105050514171773cd35d73067ce1c8036c1437ccdd7d4d4f0ecb3cf6218063380c9adaac5ed11f031e02b2c2cf498a689a65db4fa494c3efcf043a64f9f4e6d6d2d7dfaf461f6ecd928a53ae5f7814080679e79868a8a0a4602afc72995b787a81ef8b0aaaa8a03070e743dda56b272e54a0a0a0aa8adadc5e572316bd6acd87adf5ed6d73afdf5f97c3cfffcf3ecdfbf9f41c0d6f39c1324a2d2b74484952b57762dda56525858c85d77dd15abf14d983081cccccc7681c62326180cf2eaabaf525858487fe03fe1bef38d9b88633b81e343870ecddeb163c74589055bb66c61ecd8b1b1e4a667cf9edc77df7de8ba9e90a943b35b78bd5ede7bef3d56ac58410656c09bd8064e3d81f919408fb2b2b26f8e1a358a4b2fedf449f47965f4e8d1d4d4d400169049932691969686699ab16618c659dfe3b55028c4eeddbb59b66c1922c263c08fdb5172a2eabc1cd8377cf8706debd6add86cedc5cec465cb962d8c1e3d3af6fdb2cb2ee38e3beee890d69bdad6ad5bd9b8712381408041c01709e04b34acef1f33668cb67dfb761e7df451443a5f646d6868a0a8a888a2a222bea7d459e001860d1b9690dfb7bea7a6a6864d9b36110804f83570245d91d93fa9dd8926acca871e7a888d1b37b260c1024cd3e4e9a79fc6ed769f739f8870faf4690e1d3ac4912347282929e1c489131c3f7e9ca2a2224a4b4ba9afafc71387445dd7494e4eee709eaf9462c3860d343636320d583f7a048e439fa1b9c2ede2ea5044bbfdf6db65c58a1500e4e5e5316bd62cf2f3f3d1759da2a222b66ddbc6d6ad5b3974e810a150a8ddfe92812ca0b8c5b569d3a6919e9edea135fff0e1c3ac58b102d334599a99c9627f0dbbb234f42c8db29da12e890100141616568f1f3f3ebdacac2ca1fb1d580708df02928008e0029a6a48e380b780675b3c3362c408060d1a745e025a5fabacac64f9f2e531c22b74c549b1f1fb94086b07da29f9ac0b090058bb76ad4c9b362d16b5e3890db816f835d03dceefce68d3a313180194b7f8bd4f9f3e8c1b37eebcfd1f3f7e9c8f3ffe985028c40d585bd6eb95429410128d1a143b75e1992b1decd8156813638773db9b6fbe59ad59b3863163c69c93132403538095c042e2838766e082b5c64e6bf5fb891327a8afaf3fe7b96030c8b66ddb58b76e1d4628c443c046ac3a3e8012d004c024d3807e67cc73fa682d9dce6a0a0b0babef9f3933fdf0e79f932c829de6a442c7327f2f90035ca2147d95d0cf840c2c775058a72e260a0d611450dba2fffcfc7caebefa6ac00aac454545ecd8b103bfdf8f07788156e95d144948e99c128362a5f17696c6ebe5913631766a41dffe8f4fe5de1f7c9fa37bf7e146a16399921605a5015e4f32975f974fff9c9ef44a4d21f0d9a7a81dbb4184306028e0f23c7acdb887fadd3b29787b29afb718a3a2a202d33429292961d7ae5d54565602d659ddd34041eb4989022518a6494841c814c291f697eb0e13b061e306f9e1f4e9d4141fc781c286c4fcc8c452840674efd387abf2f3e9df3d975edd32d8b16e2388c2a74c6c28f4c183b976feef503db2c8b8ed76e6b9dd2c7dedcfb172d5c9932779e79d77686c6c042cabf911f0721b731320a484b08288d2d01adb27a0433160d5aa5572ef9ddfa3bcf818214cec08369ab5af68f26f45cf4bfa92ee4e26d5e3417c7e42a52789208494c2183090ab17bc80caed86386de080febf7a9cdb5b8c6518068d8d8d3880c9c05fdb052f180a02a2f0a3b15f4ccada5f8913b78065cb96ca8c1ffc005f4d0d9a1252c53a2bb745416b28246a0d769b4eaf3e7d48732793e27653b1670f2e9f8fb0022d27876be7ff165b4e0ecae604cd86681aa7febc98bb80e54008e80d7c07ab82730bcd8791cd0e1dfda49ab5ec13c52107acefeb64756588eada2e728155ab56c9b4a95309f87d68026e9ac15b9a57688044ff66a4a791969e86c7e3c2ed7472fac86122220492dc5cfff8e3b8fae6a2940dc3aea38be2d8ab7f447bf925c62a8d37c4c40bdcccd9113a7e245310cd28439ac63e37bc36c6cdc9fe0edc675239bdae064eb4fdfe5142042c7ff75d7c3e1fba5238109c58098d9d26b31754f4b31dc8cecec6e372e3763871d874ce949e22aceb8cfaf94f49cbbf1e74856836f44884838b16a1fd7e213d2361ec62c6825bbbcb939218789422ace96cced43998e22a8f94998b7d3567360732a496136d7793500cb8ffc107f8ef37ff8b4179797850b8b0986b6a4de075c0a6203525058fcb4592cd8e8970faf871ae2828e092f1b7a1e9825296bd1c58fc1abcfc0772c2215c22984d569dc8a45adc18528add221cccd08a03bec043e5871b5f3a7dd8d834f492d1dbdbeb22210b187aed500570efd429b276ff7eec58eb7c53c46f5afe9a129ccc8c0c5c4e3b4ebb83706323e9fd0770dd3df7806e0365bd3cb3eb4f0b712c5c448e118ae5054deedcd273cf478600261a4a991802fe017a79ed58e7e29c24d7aaddef95fa005617ad6b175b8796416f4a0a0e9acd1f9aa3bf169d9443c0e34d21c9e1c06eb3a1743b53e6fe0c9bc70d4a81283e5ff657fc0bff489611c24d7c336cca14db169388b2713a4bd83627b33a3d4b5fbe647a89afddc75a488796c1cb075f891d8583666d5be0ade0e7049251646677c3ed70a1db34323d29a4a665a0340d34eb7c2eb4e333bc86894314365131c0f1e4bc24886575b52e838f7e9285ef0ae7dd4ba697fc6f47f04082163079ca6d2a6fe0e05bcb2b2b2d3f152b876f39691d6b75f0ea36b2bb75c36577e0d46d883210cd8c2e92a06c3ad7cc7b84034507318b8e6228b0c541190fb8b4ba5e69d3587d4f7af93f873baefefdb78bcbe33cd2ae24521364ff1707d97364fbf12dffd83cc31692548fd9acb526137261fde7469ac3c988f1b790969a863dc9c59677dfa757cf5cec6eaf75aea02bb4b454bc03f2a85ab3066f38823dc1b067288552105150e6547cf2a3ece2f5dfd02f5d3ced645dc7a15b92b00bd49d0c071c5ef58b60ba865f596b7e186b8f6f62c5043790a4295c0e079a4dc7268adada1ab6bff917cc480843039442b36978467d13cfd871849560b431aea2a5ab0986d8a84e52ec999553bea3c071dd9bf794b55ff669433a14031c6eb5da9163aff7b92de04d26a9d3b4bf57b8535248727b2c82c206015f3dbb57aea064ed1ad06ce07060daec689a46b7390f509f9a8ed9cae055abbf4de318288e5daaf8e0d93e4c7cf9548fdf7da7e4f48580870e129092e5687067d90f491f3bf5766216d0b432a0846e970f4477ba30cd08758d0d94edde455238cc3f5f5b8271a61c250a655a9b37c71583f03e703f215dc7542a464353ca2b2afaa2a202bf43f1e98454fee7c55ef7cd9a7baccb0e273a4440d126bf1c5adf30cc96ad08f476128c461085550c49164873b81011c434894422d81b032403ea741927feb214d314ab0ea0039a8ef7de1904877dc302defad0452cf0b55e8d0f66f760ccaa33eab1db8bfff4fdb7bb27d345d2a9d3cee28f83ca4c127cc92ae6ffc9401aa0f91b0946c2440c033122b882615281145194bff357fc9ffd1d9b802e764cbb42f36692f6e27c1abbe7a25ab98280ef54ae7ddfdf7ed1f7b13b5f2c55003f7abb6fd69b7796375c18ec66e9fc71af29d4db21a859feef069215786d3a4a8bee0c952229ba6b4c42e8e66fa0fcf15f13a92a25a229547d030dbb0a096eda86ad5b7a748dd32d7f578aa22b92f8db2ffbfd7df6bf153ff7d467570e025872e7b184fdfe81d59764b4774fa78f78c261938809018f06f5e0c2c42d60b3390847045d45f0979c44852328acf258b280f3d4294eff6c1e221ab62345786aaab01b26ba98a0744c6560a23839c4cd964707ac0877b7ffe5df770ed31f19b6f38b8ecef195f147abdbbba7d3c124294b856c76cd9ee2d6187ccce05b11931c14de4157e0bcb41f75c5c7683c70889470901c057d059214248915344d05280d4d045309ba680882a914a7ae4c62e78b831f9b32667bfcf7f41290c92f65bb963f541168efbe4e5940bf51eee492c2c677bc39fad8a41c2dd7a61cb88bfcf412a8fc623f27f77d8189c2ab04b7d2f18a810d7088b59d1605ba2814621545a3ae5f97a9537a4f5ff6dd9a31f0a8e9efd699b93549c84f02f5a00bb0004f37dd95ded7f1e39e03ddf9791ed788fc374a075e1d3169c0aaf15763b1db17b882e66ab093e832a73454b48a682a28bbc4f9c9a167f24a2b87273f327de0d6239d9d5747a5d331c05769047c958d2f0fbb3163822bcbe93432f481f60a21036844a800ec28d251b8306315242babb336d0a65288521c1895b27ff7dc7e2ffc7052e18aae8195b85cf04b3f8d6163475d205c549be540a1a12b65d50480de2892317160f9bd2d6a70a612ab9a85c61763d3d838b7dfab5f0578e80202d6be5c5611f4199b6b339d9c5626d562620049283c982d8ec1a2db4865e5f4268aa0078a1feab7e0a7930a5ffc8f6dc3fb5de85c3a235df2da573062d41a5e1d44a8538a10908a908922052b4d8e6efb31a39a0fdb14c7bedfb3aae0b69df300e67e737bf17907b888d22504f86bcdaa804b8868e017c10da462253f764057a02989fe2b99c29704077e7559fdd6821e3fffed27d726b425bf5872c1efba5c31da9b545a1c4c72191a95285211d25131f076ac034b0584743899a31f7d7778f2e707f0fdabfe79e389c5bf3cd6d66ef8ff87f4186c5f9493a9c98b369bbc0fb201e43334398a92332001a5a4bc9b4d3e9fd3bfee836da3ee03f8a8fca68bffd6650272c11670cb4fb25424647f3f5cdf38b3fa5484cc6d3e9c62e251824b29fc3d1d278ede98f645f9949eafc865362dbdbb6d1bc0b8ee1bda3fbbfe12e4ff00e8dbd0e166c8e7ef0000000049454e44ae426082 + + + + + + hitwidget_layout.ui.h + + diff --git a/kerry/src/hitwidget_layout.ui.h b/kerry/src/hitwidget_layout.ui.h new file mode 100644 index 0000000..379c5f9 --- /dev/null +++ b/kerry/src/hitwidget_layout.ui.h @@ -0,0 +1 @@ +#include "kerrylabel.h" diff --git a/kerry/src/icons/Makefile.am b/kerry/src/icons/Makefile.am new file mode 100644 index 0000000..8b7ecca --- /dev/null +++ b/kerry/src/icons/Makefile.am @@ -0,0 +1 @@ +KDE_ICON = kerry kerry_systemtray kerry_info kerry_arrow diff --git a/kerry/src/icons/hi128-app-kerry.png b/kerry/src/icons/hi128-app-kerry.png new file mode 100644 index 0000000000000000000000000000000000000000..86fe2576b72be798ca8f877797fbbee676c0aa81 GIT binary patch literal 8796 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 Sn5#(u0000=yC33bSXRF^Eyi_S zbrno3!YT%m2@oX-k~0&SVTK7^b-zEVs=KPgOm|Or&y4FkPd(jLT~+tiocEq{?m73~ z5>iTjKRJxB}qfdDZe zgy;{9!xVg>^S6FIyE1CTNgO};AdWnwA9(?Pi}%{s(8N0*e9lX6e#l3keq$g08n{wQ z`9%h*pA>!|fCV9h0L}s?0A~Zj{w>Gv<=ium<>wci#tBCaOu3BLXD#3le|m?Wqm^YYAYf_wK-9n1UY$^mLwc=zv~aIr2;{I%_ETdGY+b%(5I_jg54Z^U8E{Op*ZX}Q&im1ETsL|IhaA|m^$XH~ zH{M&wHMc&7C4*(aPo$LFvr@Q)PEP(DaAD+c1$hCwmK8=_1CX2Jr(4$&dhB1u zDaQ`t)MF1N$M4N-WnZ!QtAP`wloi=1yVDXt2+#PI_1xx(C?DyR>36G{Rpl>&OcTlFw>#PJ=2}ppgJ1X0B zqiwsY_}eS9(^03i;YTMPVSnu+gve;urc)9?N?8Z22iUZ2S4#J&tghwJ=ig!IPbac^ z-Ig@gE;hbiy@5n~Tt^<<*SUL8Mk-`M%jC^7j4yz`8@KLG_=1MUCf=R<1+UGV$NLMG z*@+nX_ufB4RRk#|k3RnnexH{^2lP(pngjcEbMD?Egt%Br*_es?b!Gy54vgHqz4eIc z7t7Z0(wiUg`g;qg-McU9_e>F>xjD#Hw>-+bAAHWb51&f-y3*nTN{aHRtlkT7KJb&?=_xk%Wg%3C*aA`v@sE34q;ZKeyKQAZY zYrAzV;q9j|b8e;yJ0{`n#Xx-48wo;Fe#HO#1o(eY^4Qv`O^oQEneP0hlX<=#sWdk|h%$gzy77 zjxBOOa%<^#=WqJHh9<3|s+Q8?d{>!$dX(eyd0MU8*{2O@`vXQ``g;p`<=uGz9MG#P zeS3CI={~)>b>Z!&@8F_wlUeoM7JwsxkA)CtN-5Lgxu%@}LWpj_FM*4JK9~Z_Xij$X z_T5ngIIvGQW=@;L$njHJ^zze9fL)b)xbgmHL;I%>J-kgR>HWGC^VUB`=UeAUBu1K!89Xhd@pa zIe{FI248=<0K*94^Jo<2$BqVe>srdJ=kDT$KThNISqoghsj9-TQ;v%4atF`pr8TKK5>QR_w74{ZmSLNviitxy1@0 z4hQ~C4B`9zeufVp&hX*G2?P>P)n0MgMG4tUy`iSV2_N8#uh&E!OZSkpK0V5L^|6}> z_{~#i<7j7{J7d6B#&gAl22?)YT;(ySV75i9JWKE-S<3 zlE#kR)ltWSdisev=)hjwI?mO#{EIa>Hff})0nQ*sjC%0k!AzPoiQ?j78X6jyH*a3T z@$Uf#^x?>3PD$uo#p6e4zSd97G6Ff#bqeZvRLMJIw(2@oax zBaS$NDO0B4@tA$@S+i!bcW>g8U7mRKL4=x^t@IXlr)bdm_`4ngqT|G}ViBOZIhc{M z6h+}ycYrCS0i>z^_go$8Kp?;~&pbm;jv4NpKYu=J*RD{c+}zB6{_~%NZ_vMAZzkO{xeZl_hQF*og#(A7 z`qLleX$_I#XfSPcFsP&J28Ll^7&2kUxHUxh7b$6glp_>U$~8iW*MX7s_4Q1gIFY=( zJofBKoQSjEosQ;9|B!Air-;IV!`QoFAx%{q(tiJVC@qR6KuJL^x?vy)#{`5Bm|xwW z$;J#C)1U#`8lt)%7zrfR@&Tq!xtl%*9ofd><3lJKd3{cxRu9r#lldWE0CoG^4&PCO z`q8DN5Iv}y!nK5K%3Op=AwVD;1hGldG9erqKu>jjfj0G_q?DfnA0&I-(Sr|V{O@jV zOVJ5I2!;H9C!yt*WxOnar7PBlzLyl{@#vk`Ad%>Xfv%foK)1|+uItuuBfRf87S#1t zO^3q=NI4;tj!yLb$(-!H-(97r(e7Fd`JmM{%V(AIv?A>?38ZQ&+E zLt|)Zp_CV-Ojnv}G_VAS_JSOE@#(1?HT29h6`347xn+3r_oKNsy$f(iDf!)ff8*u1 zJ_g{_V+V27&(1{GjgXyp+W1&bU(|70@fWP?8pCmblr=zF2q2~WP6#m$cp=_7zn}0+ zE*m>O9mS=Loc#_>I{|K-{46g{p9`4Ny6*k$Wf+FUkhOSmzF8LuZ0_qa_A>pl(w zw7UjCO8KG?Vi<6F(RLX z#w!Tqc&*kS(ZX@J;P^cOaFZe2Gr*-qpfPL$+Rq1wz<9uw6Ybf3f2Plvf!aZ`cmA%2 zq~$($JoI;-{^xt4{fSqfPyb%~S++fFyA6j8560;U1S1^0SUrJACsEha;{>L4P^gr0 zj}T%iFv&jl@3&sXpI6+%RoR6nue|k>TERV2U*@lWpBdUe=d>XVKXnMYZbaF3`!lZX zH@`T(ht+*+ren>9ZFUvf-vl`D3>E<<{`Oi98GK>}ibx%b=0ox3VKk+-F5{p6?^UKg z_jYLiz~1|D{g@Hxy56ebqmM-#cQ}9HV=+vG5X_jph`EbG3y|+f>0!vw5-~!E?|{D5 zyEao;mde7~nMKXo4{6@BIqB;jc=C1bf8zDfeqO-O6Zc+Aw=N|y9k)>HrSyKdvc|t)Q14EbLh@W8}3x67hGq~dn5`{M-DokuTms6jAmzCdz zavRr4DVMk9e~~Eyd<^i(yalbD*G@=0>-O|NXLHw||KU1zkc>80!8ZSyIpK0rVA|nK_mO9<^*33DXxP6;pG$l5C z?v3{ra?1nHyN;C><#WT8=OU$a#q14d_b*1Px6d&Q8BLfFLF_z0Wcb)%S5*!7KK80z zjn%-f)A7H^Y!jO6^=f<$@%A1?Zuad-UHm4Qd~Tn~#uDzQW%62L3SlS*mL402+ad)3v;OCPQEC-lw+fF?<%qO z9n5u+u9Z?QN!R});{=%T#`Fvpkv#N$RUqR})>yl7I~QL!#rd8e08Th^0B4NgTJ9gU66-1(Q6`R3bAb~VOJDW6N{|082d#agq6D)-;7ylBgotq7%k z25LrP-;U+fZ&@7kx9z*C7(VtMHg0t-RNs@q`DW zgzxuyxc>69@v3T+>NfNUN6_W%e$9Rf({E@k83)DL7m56 zp3R&E%j_!LEu~EF&}j!UO@NsI4^DkNZ9}2kg2t-#AfxB%z5V`Yyzs`{sN+9A{xFU@ zxUXw8kM3ygk^OgfTtJWM@EH-;J6nH4LlaY`&0yxoArm!ON_kfX|0S7UE?x++7U=iw z*PqgVP|~mRNh_*XylXmv4s6{~!6}#AN_CBU7IXieUHSc(5on6)8ie7D?c1Nugih#~ z^Za;8A;)jEbqzf5%$uxUA2Lx>q?9+M?cw7f8zVH{0Jv<-)kr-v6D1QtbM1~O;Twj* zuWtWql<)yYpK~$-VU5TQtMt%!yA>N@mG27PI9q*$>4-dM%Z^I!nEJ9U{NT;7Ac*pD zRHZV2Y!KjefX}}8ikUNB&O&j~kWx~=b!pV`KR@%9^Zk7xnsTr`@cpZ4VN zV@}ONu^^2g_0>CB`2Gw&|7;=Kc2==%XC>QqRk3|n6>B%f9v|4fyx3gUCX|*n&7}Q3 ztlnk#9BdOHUDvtJ#cd`Qezlru(?28_)X9gPpCIxFA?yW((ld0a6=a+MQc5X=_!ICq zfWgO~!O~CXa_Eqg(^^ijVJ{Usx3F&QY8EeE!UrGCW7hj0Q&XG#w0Qv`0=V<{(voj% z;kx_sPJv6;JsO*ud1>Z+<}X|@tlc`5%h zc`_wkdnJ4yDJ8+iI;tyovSrgomM{OB1q(mpy*YDP{ayT5?d5^&2J{5c3+Roxw$0<1 z>&{1=AMkVg)#u~$dhGg}pXN>|2;_3=LL+wV&lu+dn|D_7^uOL`yS2#Ec~JciM3FCc zhH{`P^;NNcNEfp9(kLOsHNX>*$1fXs9z%~mnu7-pq*w1g7=}S@O$}AmRa8_~v3qv~ z8#is{o8>E5^!XAhDx=roag_t~1bGOEfxzKFKLq)h@0rO3auIj{4awQam~-1s8hj8J zoIWIWf`=FbI;_H7M2I-{@fRz3ZO*3zbsYtQlM(vw5iO0Dy-}6=11&yq8<9-{Xuu3$ zcslQ^fb4?Vx_bltfpP=|5ZdysE!Wxt2sFS4R3JGRX;j8=h%Y+x7>+-zf4D_Qj`A@d z%*@(3zDJsln!0*keQyy+xIxP%%^Ef70=nFeI_wQ)j-0OoM9<5Rqa z^g%EmJa&uT4^y2Nx;EhwegV$b4><@_!poWd6C-*u1LhpRt1mc>1A3N+S~0{?_Yr-3 z07EzU@XM9Vn*UX3D)%{1`2wOOKk-2+(^RQnmFUUIBJ1xB6hf2&vw+qX=?yAS?*Tmr za`V7jgyVH#fJ&s`-2||O?^OSJ2>gIVV%uGb$n{%{ zSiOE5Z+!4MyQ*sKx;8$BFs?=P=1fHqx`$a168y0fZ1az;ppWu?6B3bfnq z08Zh@(g60gt~w!j5E*mL)xGr%e7SNx#}4Xey{pXKum5`O7G};{${xoXNsfiBe@Ard zi%7>p2pJnw*Iw@odcqcdq>!Cti2QUy1AKlTf&2pU{C*0&UJ9io-!RAx2GMrzL~Ck} z&;Y_x{}LqzrOrj+FbtMO{Q`@Yt>x&0`(QhJjZHz8t=-J$%h$1WSGa3h0M$<-w2_Ez zF>aG8lJy%BM%D=+gcuKujwkeZ8o)kgEAAeL4x;?vgD40DC@(CcOMW4x`S}#)<`U2} zHs5eV6af^+J@9BW-*!7<>lW14UPDxxiJ}`2TuHQJysNsFPnN8ve~)rLU$KE@Yc{zS zY0^NBfz1ygdgiuG-N!;|@5W02StWoF;sh*bCZ2#J$q-Kq6n5JmMN!E0`3ZP^z#D1jXGDGy*AcPt(R6B2B}U4Um1e1IYbrN`FCLoBP5 z7G!h9hCc({>_X$I{aD_=^B6!uaWO&&0zN-EULQFgtMz+4$htZjzWFAG^Jm)s#?hlO zh7Ch#8rYknpycErANXJJXk3FCGl&NPTnnr~@bmPm`$)X6N_}3YZk`na2qA_8mqB7` zKb{t_kzZ0AYWV@5j~t&b)cW_XSb=89m|ei&dFP>z8ik^$plJweLsdah5IuV$FS&$5 z1lPxS4nJ@WupGf-C=_K@_%*;EfMJ;|B;!7S5F#H(5-75z#}altEnu@Xx1>1A_WQkF zJgQ3ls#P(CFHb#{=CN1d5lXoA+k#gVP!yzLAoiJExmysth-4E`28=^64k*ifiwBqu zj8>(d^1S~X}j1oWyQKp*a(%dKU zZeJ`dAOXMEOHo;w+w-^7f3Ri``t}{}aPYu`kP~l0^Jplc)^C{rRRvW=?%Rj@>t7+} zyJs`^L6EU5Of)1gQI-0G*()-`KEPnORdD3eUmfKK#eiY$o{c70xlhxIzKfgRm`0ao@vn_ncFahe|YUh3;_CKB$uq#?pUT&%W zaO<}T(71j>hyb3lGJLn)ftr_(q6ielVf!@|p(q4*@22wdOKDoR3}OU-vWPc;``V-6 zjGBPc;o$*ro&bFZ^j!=kt=a#0TEM_;)x{+xmijkazgN?+*VAj-xWQEWfgJK~xf!jr z)D*r@%%qLO_BU5ov*QaqCOtq+-t z$n0PiF-etrTITwvf~*CC_9FFU?SEtpKm&@3Oby`EG`yN-s&*l0uBt+*-Ak9NuEKZt z5n;8jC?V%hXd2D?_Obj|*Pws9CX_x_!O{X*Z-mvr+pV6JL1c{p9wLm-Ege@ANZJY@rJUMTn5+ZwSHS-~NWC6)R0YfpCtXos7V% zs?;0Xr)U$|Oa>Lk3;VXz^>bF#=k-vSmmjkIszd$z%gYHIHN^Dxg)m!w$oW$dn#Qsx zAE$2dVoGt38E8km)V{@MQ3FUQOeEVENeEjhYe0T}LCE%d9IamnK~DD`sH%#hSi-mM zzp8?&vFWqV*!bMD)^PA>0S0zRuP!5SH2( zmfE*WfYtRg6on7(y9Xh`i*%@e5upLHY6zZGrJkAh$|iwqYJi$Vg)YL^fVHmyg+)c7 zsGn2#!fx$Wu*X*YX5dFf^?K+x>}+(*te~^?hee)M9q9 zseT9(ptz(YO892$7a`{_L*0_%ZuRH>)@malXpYXqo+ z>KqbJ{5atxfJarMgdeP`Le|z=F#*Mq^l_(rdyE)CmrE}tNO*V{kgZ7IXTb5Q)Hi0M zutbqH0^B2w;28L2A;{Le|Hum31PBBIF5wHSySI1#0=A7GN7Gkdh3vmQ+{>Br6{^Ys zcioLPU;u`rtSpFsI&fMx^83jmn?u65Ps*n+hYP!c9?R~>^ZxD4=k>aUZ>fH{rwXO9 zk=pz2L4NzK%l6wTUlav|Kn(=w@%R%o`F%+1FT;2QxJZ?H@(UGY0a+ygz#US~7zrnJ zgXY#$KSWIS@Oa$9w>*AXRc+?~gE~!9?x(4#(UtNQiWLvAuJa8XNbVp1gkkEFOg*X& zOi-o%yN=@U#X{Bz0C1C(3r~W-MQQg}53NfhlyfCs z1Pr_NN5a|qH9&J}043b@!$APMtEt_8KU7qhCcx499h3M`N=o37sp)*IWtg7+m+8D| zCedyL0GJ}>`4>WeAMx$KD|YYkfFRuOR|M!f%D#q>wg?50>grJ*emL9>wAH^u10V$a z_{VU?6>WKpZNNjo$-t2vt((^x+LZtRzmalXw>U38jGFDMX)e{T2nCvhai)KRGGjVo z@nTcZPW2x_0(tMf&?BXnTRn@pgv$-8)IaIS&R#sUI{^R+A?n>SQLUe_58zDsieR%t z_`>x-QcA?#cY&0#TfhA^5J29P^s21CR;B(6Rq83fw6P#6{{#HKEzjGL z&|V8fMB#QRcWo5n-DPmDGyLn^^!oa!l&_4?0M15iV4$EtMJ3|+9YzBH+$-ghbwX_320fw)AlS8N5yfR?=-akYy>%;ft5%_{ zSWY>RW4Cq-BANnifyA7w*`~L2c0^=-oxnsePKfVzL*H0y{}mz8F`HumbLMUt=30O~ z5Ga;Hm&kO+`R`Pveowk?){)SmOn{AEa78Q=;6c(P%)#{bfKkJ-xyM(hMferK*zc?G zp@V7wfZqtQ&j7!z0g8YF1?<3V{i-yVdbKq`5$2LDxhU579)lG4EivD3FcY)_GTDq+y5hx?8RI*vk9}c2MM=+2(SH{qW#|jj8LT>{c4f#F*>9P z04Re$h6aNo>4GU>zqKhMEPNeP;d`(bZL$HPdjJ3d;z>k7R83l|Z39mDZxcRrU;>Ph za!CNB2K2R#`5c?yI;LZiAgs!gZvFd!^E+D-Ctc{U1OO<6dJiJBP_Eyxc`;kPtp(ib zKVeAVN>%EgrKiT74;`8Sd9d4D65gD_AV5N#AXnv1c zSjz7>w*><1#Z>#>yHsvE(4h&S!*|udJ}b@ZB!F}Me;||wj=)l2h${8@8Lw<7MTaK9 zIZ{^TA{v{l3Ec5!5JSudc>;5iM#kQ@@qIvtCICPo@^&4l!m0k<6tIVcTUd%Y8~0Z~ zc>ArR!;S}VVzUqjDe#yI0~?`ChuQ{M*9?Ii@RY)qLX_#iB30^(+Pl7;3I7iOJNVBR Sn5#(u0000b{xwkY8@sVWO!z{7CJPZsNlTu- zws?8ow#@Y8ycf-Fx9>mnR;lX1c+I~IL}cc%{aafKass_lIDq}YnEBw7l4-N5LG z{+>Rj*(LxLJJu(izHnzT&=55?Tf2x{`|$2fnYczhV`t1I6znJHZ^h^D#kS(``+JFw zjv_D+1n7%kkiRIWer8r~1PEh_N#Bp39Iw94io7{=fB8mx=VuO|x%vQj9Ky++xBS%7%@O_e7E7ugHx%XD{WivmX_*wPrlxrJ5P(^ zZM`Q(w}YV$#*l+yg*D?0%0;3>P~ip=r`n`sWDu&Xq+~Ei~d)+@YhGW zs5(3ky4*lvN-F6^#dJ3{!G{inaV%9X4PA`@J@K#v_E5r00009a7bBm000XU z000XU0RWnu7ytkYO=&|zP*7-ZbZ>KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde00d`2O+f$vv5tKEQIh}w03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(` z>RI+y?e7jKeZ#YO-C0*XmQK~#9!d{a$GR8bf`_x)rWwH!wgDKwSH28B{`KvzLQ zi)26|3<;S8(M7b7wk{19(n2>jLP(-*q!b5@3R7VMk!eOnvB+USP;p)}Z{GiX@3znx zrnC+mxZHcrf$!XV31bYoXnpAC3Jdam)s>g(nr=0;sH&QbL^mVff5s!plsx@zGT{7S zV2owyYwxNa8=sgwN=TAz+bjdyw%JialE%g-CVlN))w!PRqOGIbv$(txO37)eC@MRP zDLG9Smsdh<9o?Rck1)pY;Bk+5_jb#h`}gkn2q6Og1I8GAKesSF|8eQj+t(u&2LPq+ zqRwV-qgT^(LDh6`9*hG{`F6g1qpiQ~Q*7)W_dRYiR^pxEUqGYyk~5O9RRq7<{U^Dqn(0I<3m z0pWOfuGPXhE{+ttTx9^j`Fs0_APS;knJ`TghGF8<=PyVkr0m?5MG*;az%WiUmI*-= zM1OA|;R3^hEG5f()UrWs8{uzJ#A5MN<)sxB^9vt9Z5!0Gk&@-T!0;dw06H@1R91N}SM002lx$5r00009a7bBm000XU z000XU0RWnu7ytkYO=&|zP*7-ZbZ>KLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde00d`2O+f$vv5tKEQIh}w03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(` z>RI+y?e7jKeZ#YO-C0=G#-K~#9!Y?DoB6G0e;-I(H#K!+S!*U55@Hiw&NL*XwoLSk4(M-wH<6w4Odo z%?8^HN~y*gzIdf;ZvJtqSSpvLlxkB_N>wbC%X9OOQ^OapbZzxCHY20sJuequr%kIS zY`dRMr;0hqdVGoQ(Rd@h9l zim`RboAg^~8Ute#?~U9BfI09BfaH&lscRsaA107*qo IM6N<$f;EVffdBvi literal 0 HcmV?d00001 diff --git a/kerry/src/icons/hi16-app-kerry_systemtray.png b/kerry/src/icons/hi16-app-kerry_systemtray.png new file mode 100644 index 0000000000000000000000000000000000000000..4e6cc91bd6f1a755933101acd4c7cbe21e53ff24 GIT binary patch literal 753 zcmVb{xwkY8@sVWO!z{7CJPZsNlTu- zws?8ow#@Y8ycf-Fx9>mnR;lX1c+I~IL}cc%{aafKass_lIDq}YnEBw7l4-N5LG z{+>Rj*(LxLJJu(izHnzT&=55?Tf2x{`|$2fnYczhV`t1I6znJHZ^h^D#kS(``+JFw zjv_D+1n7%kkiRIWer8r~1PEh_N#Bp39Iw94io7{=fB8mx=VuO|x%vQj9Ky++xBS%7%@O_e7E7ugHx%XD{WivmX_*wPrlxrJ5P(^ zZM`Q(w}YV$#*l+yg*D?0%0;3>P~ip=r`n`sWDu&Xq+~Ei~d)+@YhGW zs5(3ky4*lvN-F6^#dJ3{!G{inaV%9X4PA`@J@K#v_E1ljwEP)5 zm2FIwWf;eQ*Eyh^0~|mQ2vNwXfrLr0uv}s*Dd!4ZSm2nsUY52(H|;|oT+A7zv|8F? zv9+1S7F#UHn7uHgE&D(gFo*(-R|Uj)IdD91Jm=x+11}-xfc9+nm;1V}-~QMCdhY8+ zRk_mzEC=>(NQf`beR4}%Y;^eRK#;GqGM%vCw=6Vx=L7ex-D?Z7CZ#2>S)2KAimbdV z0)R1xlanQ14HlQ4PgB*-xp{tzK}96w_~E=S_wRYa>?+9>;v->GN zFRNhE<6^X}8e@FKtCTm2&XSk4m85m60J!0tV8;u`&NjAmJvZNqs=mHHRF!v&PEM8M zx0H~C?F2-v_X4|IZbEHV48s5*&>BEgM3{9ZKHEH1{a!?BN=~2H8og@WEI`DBHD)88 zv1@pog8V^}89zTWH{I@0FOO%ed;aBvUg|^yvo#EW_MUz|`t%#N zq$M&mJjU?IC_}@eoU5+YU+Y>wTL}E!;I$qvFn}6vt`FJCf3t+_%uS5g9oX#-Mn)Vo zwscYWarwb8xwcwLZv`wzcZ*U(g+mYQO|+}h^s{Jp_4d9l{Cd3=HZcEo)VZkG9$bbivdN56R z&6W8ZX>imAx&|~OC`i98EY!M~7;xHy6%mJ|P2CRdIeK?bhR zKkflu^YYghcp3ZV<%xbt7ReC$c6%gMJ+7EUQ grdR&YqpPa?3x$naqk5V#IsgCw07*qoM6N<$f^E&~p#T5? literal 0 HcmV?d00001 diff --git a/kerry/src/icons/hi22-app-kerry_systemtray.png b/kerry/src/icons/hi22-app-kerry_systemtray.png new file mode 100644 index 0000000000000000000000000000000000000000..5b6014b8a76b5bda1bdfcdfb2c04ee7a62f88f03 GIT binary patch literal 1062 zcmV+>1ljwEP)5 zm2FIwWf;eQ*Eyh^0~|mQ2vNwXfrLr0uv}s*Dd!4ZSm2nsUY52(H|;|oT+A7zv|8F? zv9+1S7F#UHn7uHgE&D(gFo*(-R|Uj)IdD91Jm=x+11}-xfc9+nm;1V}-~QMCdhY8+ zRk_mzEC=>(NQf`beR4}%Y;^eRK#;GqGM%vCw=6Vx=L7ex-D?Z7CZ#2>S)2KAimbdV z0)R1xlanQ14HlQ4PgB*-xp{tzK}96w_~E=S_wRYa>?+9>;v->GN zFRNhE<6^X}8e@FKtCTm2&XSk4m85m60J!0tV8;u`&NjAmJvZNqs=mHHRF!v&PEM8M zx0H~C?F2-v_X4|IZbEHV48s5*&>BEgM3{9ZKHEH1{a!?BN=~2H8og@WEI`DBHD)88 zv1@pog8V^}89zTWH{I@0FOO%ed;aBvUg|^yvo#EW_MUz|`t%#N zq$M&mJjU?IC_}@eoU5+YU+Y>wTL}E!;I$qvFn}6vt`FJCf3t+_%uS5g9oX#-Mn)Vo zwscYWarwb8xwcwLZv`wzcZ*U(g+mYQO|+}h^s{Jp_4d9l{Cd3=HZcEo)VZkG9$bbivdN56R z&6W8ZX>imAx&|~OC`i98EY!M~7;xHy6%mJ|P2CRdIeK?bhR zKkflu^YYghcp3ZV<%xbt7ReC$c6%gMJ+7EUQ grdR&YqpPa?3x$naqk5V#IsgCw07*qoM6N<$f^E&~p#T5? literal 0 HcmV?d00001 diff --git a/kerry/src/icons/hi32-app-kerry.png b/kerry/src/icons/hi32-app-kerry.png new file mode 100644 index 0000000000000000000000000000000000000000..59d1dc55b27ff1ddf4c13d9e3d4deac59eec5d0f GIT binary patch literal 1672 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 jya)``#n{++6rb1QpPVD2h(7(vDOSMQ}Q{JRAkB zigi%2g4k9&)>5qCfM`ch42nF(5Gvsz2}vXgZ1#Eg*FQE18?xC)h<<0z+}-o|o$vQ| ze)pVn&ru@6FA1eoU!WN12lNE?0b77gA`(d0-Y+3QDP;ks0wsCfvxbkndH}t0v&rj` zMP+pz+rIveP1|4ZFdg;J_`?1+I~@4tNvBZm~ClxoxN zz@cN5EO^Dguk6SS5qT%>{yIy5QtA=lp|lixudMVmvNF=h?Uuo11-%$E>~i|#cZ+Gm z)#%~InNJ7zl^wZTMApXDZ)XTlNJMW!F5PvIV2D2esmV4{l5P1)sVif(?JNO1E2~cdP+oC@ z`{upK$X`9lKR^DG%lr3^+VIP7zi02k3bgQ8%t6s^4}TA@~@u`Gu5tVL;q<;B`rKdN-~u4S*}lkoCy!>@#B2Ki zYa*4mC!l}Vu3ecwe?I&7?{8J`+gUTP*iu^MrS%&}QbzPxkA%9@ApwqLThw~m7vo$XA z&9FH0BIY0Yv6@LGiy1zsfNQSokH_o7;|=$E$n)+d5gw0^JqHd0)J3uvbs+=ZpEh;k zYbohDvFf!!q?h@4RV}y7T1=Y5&dkZzv`i(ejR=i$c zQ}TyB{dk)48(kjeFIyX|s;Rq6L`vK1C!WpR*3z%O=zxIQmfs7Pt>v@rdzn1uYA(#{ z)Q=R4^V|x+AQ_=>tehSjaMR*yGcQb4X&{_H8c^5k7T=@%9j&H@q?%f+3IcN;L5hl?s0j1#=CBw= zGVtqQko_p;q3ou%U#sEx5AgR`++qq)O6g8msfUr)!;;c8diTsHBP9jbu3cDxqBV3r0`Kd&kHWVq?^!nouniy zW|Il!u!Gx8GC~4p-+O`OiI9f`1mwV(aPI@yf!y3&G+iTDU4!oTquXp)(=#Yowj8Ub zH3d%0@Hq%f(#7!qYyw6@|9tQ_dmkVfuxJ{(rsLi9E#9XV5=^q7EEY0~hN9p90K^`H z&w(Ocj6;c%Pe{N#krQL#K1*1mWIziTm`o*FnM_#bJq}r!(agRL zjMl}djaI2s1OUtzdHWLh9zvs#3}{9Gv&n?H(S-$tdDSX7dK9H;XbuN5|H(+EJ_m;B zVocZNoO8*aQvg5?j4*-Nn*`{A049?elgot#z#l+8wGc{6Ve@9Ft_HnTH#>oGx)|He zhj=qObVpXA)Rt-(c`;CY+hn@;>4UcVE%GW)#%fvxT$Sil84Vr2No&(cvqm zE>Lz6q1$XH5CkIZE)N3}e=hQH9s-=OBNZVXP!hUtItR5tu`Wh+$LYn!`3U$JARu4{ z(pne0feD=*?~%}90i)5rIRzLfOhD+CSOJ^@Zqda^{4}fs=&%4?jGzfsrX!LH-Xu5) jya)``#n{++6r;$1h@cr38(>-;dH1zJ-Vn- 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 literal 0 HcmV?d00001 diff --git a/kerry/src/icons/hisc-app-kerry_arrow.svgz b/kerry/src/icons/hisc-app-kerry_arrow.svgz new file mode 100644 index 0000000000000000000000000000000000000000..1ee61ae5236117868e520f785b1fbf66c55ac095 GIT binary patch literal 3085 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 bE(nFJMiL-M_UAfKXrKQZN;58AUNQgx5Rvoz literal 0 HcmV?d00001 diff --git a/kerry/src/icons/hisc-app-kerry_info.svgz b/kerry/src/icons/hisc-app-kerry_info.svgz new file mode 100644 index 0000000000000000000000000000000000000000..5e1f3cd534917432f73c1ce16a039b5e1687d9ab GIT binary patch literal 4111 zcmV+q5b*CGiwFoy2~R};188Y;V=ZBDa4lMk3E^~Hg0L@x!Z`)Q9{apVF zLP3EBD^vIVaBLTC+!O^G>|)b)_gg?qlr2P-3`vgd{`x(0DUz2IDa(nwyK0h3hveKl zGiP2TPrrY-nJ1s~)q1vEoDF!&21&jcFDJ9b)!E?p-`*X&L9*Uti%B+LF7mU%VmbK! z{OEN3`RXW15?s7kpJZo)>&@o&WHef=(`>T5%+vAmX7mGn`|!ulf6VgxeD%}ACSTAh z>yb>^Xi#518CTce-mT{8a&~BO#7)#_{@bvB@5e7wcEirO>bIQo$G-;aGjjn$NCpMi=?|(`I=)Dg;2MkFznD-rPa{aJyV>j;FJEUMzQrh*4`#AGvVp?c%Ca z^uy#9obiY+YrN<@<*|9n`ROE|u1lNJcW&VH^V3x}nPu~z>3;~q@`NTTJTELc1{Iu2 zxn+vU0(rzDA~jw+#sjiC8(5ce<=FO=>CQ#dor|uvEB(HhZ4hdAu-6CT!`~M$-QfJ_ z8~U8CVYfiK>2#fgrmS$;=5Y=q)4}8Ma=u)h++WW&`I`VNA!W9CJmGI@LIH%JfC*Tt#<^WN5yuJdUnnGK1PRH_zeT#UB)9mDCHu=YLw%B|) z&^E6we)@^Odsj(~ujg9X1Er_>%jEk*stEhs2PS72IZfwxGggP)|uyHY$2Q9XOBg43YF*NdX=M6zWVq3Uw^sy$koSc z6RmhRTpkdXRYuUMw~|-+z#4c@>pJ+O6Wuh!&yrE7gNjbQOkU-v+NVjvJGbyk#~ws=Gp42 zlybFFO=(cd9;nm<$EHQh~FwzvM|bnXdT6Gg@(tN7gNITQNle#31d_1g|3uv zsS`$2TA&R~z3`P5T!_>mPD2(fK1o7?kSr5rZdwEeRTylp~C6Kk~UzHR36oZ8Su zSF+obeA|=wS67$cA?*#fe_uBWJIA6?=HKZVScllMM__LbUd6DwI-ZW2hCHuLO#l3) zfxx{vG--WtAjIN-TV;zirl}j$+ibI%J$%Pg<*d_U$nanFtL^M zx_K89wv*5$-!c8^c0{m4Yiz`B1ZBG!u6@hP2{!l}IMY?)%vhCK^r}rN=WTmzECY7u zq9{DgzVI~rnhXWPyIsOR5uBzk`H@I2hmh*cSBB8Gz5I*HgXt}GFH;_DZ*lvdm51F? zy;&SIV^O~nU$VC}*gf4!Dnx%KoXClu*r!^SPA1k1pcAG?MEh^}@~3Y2y8U!_z2ZaL z)qOwti;3@gQ)6d#4<>%@5{KMc{tEWHUZ-=&gaBOFUZz-|KVvgSq(e z;!6Vfuf3bc4!&pfVt4aia3uRG+w?q3>oSt~g8S3GJ@X;Y-F8~<{|AFT`FMhfL+_&Q zjQn@is3-mG4<} zzN;}A-^}Rb(TB}!KL3S8hwKsrjkcQ#+Z|Q=Jsp+G(EB9i^L2VMKB4yuN{#7hdob-S zgobPeDon#Cz?aL_Bwv*WO!!0xwgs+uwWYx~l2;vNT}Ri~*@RwUXgx{)bGf_;_Zqd( zg8Ak_VwTmZves`4N_`0H7?r~BnzcmU&lXtexP0wG_8c$Y!|+UZ9)BorwzLmmWziBj zzFVz8)Z=;fn6K*BDTZG$Wlr=%WWi%bCX&$T|Qd4#@;4g zrw*Bp*$CwV8<%K8f<(mx(-GEKI-t_)XpgnTT9q!P|4c$G@7hu}T8$|}<^;j?UArV8 zpS^xVN9#6iOVh&6GSz5+y{U2snOUR`xxx4vw5boSVaX4DK z#$XJXO(?YK5lZ~iPDma}tg(3M3as}S1ftHUNS7|Hdr7C=fuvK1kxr)uf#{_oL*s|? z*mi_+f!c{!)kEP@sWd5DK@HDWDB2Qco#8GL$eE#DTg!&FB?d$DR62p_K0-N%Agxp^ zvBsLLE759`L7-xqN4j)r-D_yC4l^`&ue??6RhCtxcES?SLk?dL|k?tI;NX(7`g(B3c<$yM%1= zRtm>O%hv@K)2v2YAW;vl*Z@kL$ zMMNiByO;*FGb!`T7p0I1 z*q2-E*rw1QjaEW~1T?eA<BJ+Ks%vn-X8?wR6Zfl}m{mU3u0Z2?_Q0__nD z)`+2%2oWu{?z9+e-xSND#MZ7v_L2euPs5+dZdv= z%annKS5UvK}m?u+r4Vaj!k0 zit>pi%qgRl96FD0aF0lc4#sf!8yH7ZCa9+bY8+Yx^puWNP|gtMd|;%rkmx=4F-9p0 zH6j?JLg^b*MinAU5R;y<9t+VjpoRd3;5UweyTB0JP9YzF*$87tG95&7!rpgyIUcqGVmDCp<6&fx%Q^$Tu3z18tF` z2NGiILcw4m!eDSCEIC^!G)M%Ysw?jjg+y+Ir_&gbT*3@Brh>sxmw?)^S+HiP$VDCw zDNv7?L_?;iorA$$1Es1!g@U3sLXpcTyc3J!gF+(7HEnlZZ2cuyM6L5y4dgzq`hBY-@;D#ZI!fG_u7>`hPQX0z9@E%p)vTIzqv#Fgex&1yROgs*Y9`$V38Eqid@jVkn~^#wxWYm>&>)oGN&w zbB(qwLo=HoN*4O9|^Kn2zWYg^D(#4D3q3>B(sgON)sJ-XbyEg?N+`{r)GncdDG z`-;WxocPL2sQ+wr=yfpw_bu7d(PWDf&ym#-dI(M2J15 zsrV}wG9V8aH;A;5OB4#H4j8368}cV59W+;l;@KO|DFq_eNTgDFY)7#N6H>xLF4W;s z9!=ZMg#?P!raa^m%8`hPgpx9V;2~+iA5s=sG2AtysWQZJNS~BQKqG*tW(@lQhCYB( z9-)kaXw)$VZ+d|rR17KR2mti3oj-z)a!=cwwsQ(&0CBjb8O8*&u2=kTPYIHF#`P*%JGfuDrH~cN?8O-q)UWFT1P0nwT87a z7*)`|BFjZ;*Vx-&APu;2CWanLzB-Z!llxH58*2yOAU<5Q%gBe7HeKE>2D_u9Q@RO% N{vS)F7H5e$007BC?74G>+~4^?Ob=IU+eCMaIJ7;vxRCU!n{oBWP zSF=CXH@BDD&9fuDP)D=%=3=|L+`M^q^vmC09;c((?e2WDI=|X(*3XVM+oQjI{pHht zJ3gL$v)-(4&Uf3JC$rPl_SJg!?bX%$+nrpRX+3-X{_<)y(>cy(KmYp8?8V3H?aglX zzfxJck2yDdwXIR>g4F|_SMDy{_FQQSBveccE7mm{$c%U zakIYNzQ4Ix%WW4I&7L=_*LPh%d{}(2(n;r>Pn0<^<`_MWZ$E8z=O2$Zw_i1G#rxfN zt5HgwpzW^bxL!|g@nx>@|Gs;DVNpi^8uzUioAvJG?C)p$#$&Zu?N$vnmz&>jFV3&m zt*6!(<=LC_ckA2h^NaQENqt@J|8Tk5y~RQ?NyNA7%QtU#ck&?mKE)aS z3L($5vNLURJ%T5q`PtDmCVhSLN6~z_dUk}DH6qj_f3jbiYGF%LJ)CBfbM3oU+Y7$H zv!mbFH#eUa^&B?aU!C8g{p8o})qA|@$v=Mh>AP=!`r(%!|LeP;Prkjt`YJEf+#0RN zuVpI+20=hG|+{Z{FOi=;P`dpEckAluvcz*H7QAcjv3~-FZD{wQRCS zD^}u@pUz%>{q*AE$v?I?zq1$r@cQ|y?R$JH^jcj!!Af~|zWe&}-T9j}7ukQ}yF5L) zYha((=j zTyX`pX5ho+X0`orT(2~jIx|$YR|_+^PV+TJar+i%^5NN$Ic(ZuC1TKAMCHae?=M&D z-S!I5w&8o~eZvi&aL@JatN&SF?CxuMwY^!bZ}v~nt;-kNtL@FRqpyPekp_;ZzWiGL z>^BBiYj?w4f9&i?T)=dH`Nh-K`t@ynC;#n^c=d$;tBAg} z92UyDnN%u&9Htoz4h3DBWbmV97dJ&?YXN}L|XWlG)gf_0X-wWvZib-1*K%_ ztdFyx7g1rp97e;j29J9Jzk$Wru{@kj^N1PoW-rBs#*8fYvWHqbiyViYN3$@PAugRc zF8R!%VsWskh!DI>^T1gNrDF(q97oE#xePHlO@U*<5R*-m6lNx%hhtB?y*CsCKDx(z zVH(lLD?Rfb6Qyej?~k>)Z^H{?W0)$0qGcvE)m7f-J)H|z78Z*I<4mmn;An<(HVd(z>*3X4jgUpALJ zP>1)hqCeB5{;>I_!ikR>a2FRTX)E$4$e4C4`XYZcfYQ83%4Sty@e{7#qblV?&VmbH zJiXm*uLa{?zrJ1X1SCUr&G%rBV*#xvUn%)>XUx&0RrPZB=`v3FK3)37p)NC^%W0+i zblG&M%MIyrIrr&u=1^A{(B*aPeMf(Gs4ETV3d*HET`5DAZs{^Zb01Z-eY%$ZP}k7h z$837%{^e3ucuUva+@C*rce(m;d%4;D{AX6$7&R`~-btIH=Hc}bMvjNQ@X$6-5dz6l1ER7*h|6=`h@AO5faBkoQ`+1Wje&Zg6+iUE8r0OYOy3Tuk>N5&Qr{o88R0-hhEcTPY-n2A#>rh z>&30KJTMn_$XsB<#9q^LXvXZ2sgB^0eY#$}I50hS$W%`>V>XR~>W4q*DDz|eKds%c z57`avg%aoFXg4(c3`(HIcd4&q~(s2mJ7Dpf~~P&s}^ic1zLR#t-e63E6}P7wz`6?xnQfW zu{9QK4Fy|c!PX?$>I<~G3R+!3)>x3$7qrv`S$#oP|JcZCCn2kuhO8J3d^mlFs~9Uh zU3KTTcv2CSo45)C?t#XSg{y7|zb4|U8+0|M;i?;SHKyUJ8?qe}an%pH8q;vqo4;_i z+BY3s)mG0V&;}g!dj@*43k<_#T}5nkVZ#Y58{0j2iDy_+vPcwQ8=0Mii~=cHSXiKG zTXS0)0S0Cg80d*$0Gh3Bs7Mvz0JJ>nV5`Mk!GTFCHsOFig>pGP5*+xUZ8s4P{Lr?W z2nS(k+f9UnFzDe=gM%F1RCfD8pu4|j|i`}yWRGk-0>Mc7??p; zd;bboK$?;RHE8%?mM(8-fWuv%o)tP_amJwy7*y!pfY0p#FvOt^m{so8_2Mv$82dM1 z|H6EEsAkmO8@19O2#Y;}juF#6YA8DNPSI#J4^8sO-QTxMTE}v6k+e7yD%4(y7FQ$1 zC{erOchIyqg(WS$hi3-=C6t}cU=?_SvurZSh?C@W<;1B(coBCi!vtscwL!v2;O8QF z38p1+<1&w)G9~LIJe8H}47LwW`oZB(Bg;e|1mpCeMonaK3u98w;SO0G51yK^;uQRp zI2Be-^8u`+Az0CHPD`7xaK7^GtXxFvvJvBK!Jk3c%oGNAAYlqMBp{^lL zg>}~pFK5dGU3nBtJn%6;3-c!E7_k;U4}Qn%7_pQ_4aNJ%P&4AAe-;LthcGziP>$~{ z0n!&lwx%lywAv6D{xROuGgD5^-Mz{Wz%YT=MYaYPDXDTQP{A<%k-ePgm&kuIiD4vF zP6_@r44cn^;i=xAS%e6#)_`G+*U7E{!#r#9Cf6RK5vWees{UY5@5YOVXfT9$O1oah zaT*SF4SJC=_a0N`Q>DAQ27@==^y&fu>FUzs_S6HjHp;y+ruRs9f|?O?^;xJlLC1)x z{w$p7IDJ_C+R7fU860KoYRcI0BDo@^BE_n2E&Enqiw!10`D~dMWD0QXB_8u;Q$Mi% z_-U}AAC3}zH<6eQY3j;_Jzdb0hVn13Fg=Z>37-p^Q7?n^m+F!ho;|0-HU`T)0sMJ zlXyLt%M-lsf6ddgmoIcj*yI>!-*wHPR)(3!L9&1$2U{|cb6_BYJ)jKF_A~y+M1HO8z?c$R}y=(k%M7p zot*BPK*`3gwCuLhLP}y(s3Js6gn|Q=spMmB9X{{B?DH@%sUb@@dXf zcq_|?*H*V1)Myt zlZ^Yq!YVz-Cv~nUJ3O$G&@o6Lu#)5cwjAv&GMZ;(aE4#5Eknw|%pDW|;$GtEVkmthzB&VC zSOZXRou89=VnW)|vfIiWh`II5pOy^oB$ATCgDQ`kX@yG9Fcr$=Ii@Y(lQ7pi_*#-z zi|~6ZnKO?&7T;!jyPlY{?FgG; z&uKZe9-Hs(L<8>v=e?O#cGqX>iH7`Xn_w7_$wvoH@xP9qQTFqJk$qn9YOIcj-fN_h z>U{Pl=cvN^Z zAQwTN=>8p#6Im=mCu(N!@KwyjTuHIwDEgEc6+ zyoqxgZhLo&=&{4_We(R3emzK#LKKWc{*! z0^opF#diTdfno$B29<9u)iLm}m7g;o3~Diw6!hE{rV;{XCWs^kpV`#tYm=mO5XW_~ zHK{9oPY}ejsh50U*^wbRyf_d|3T8mXaIdWslOvDIiJut;5BSM~A*-ZDh;Ifpl_dD7 z@?OStL`wL}#+j6lm|7Csl%wEj_NiVCxEM+Tabs=VR|>PfxLBRLVPM6jX=qBTqMcHA zH82L>#j11{At24rwh=x|%u_dJAbG^%9eRD#?!r6qAU0F^5lFs8JqH9#1+VpfY)P)SMzTQVfC#Bw^))=CQOQu-R8oFltR1uR_y zEF04Du+@QqH=xvXkW}xXl<00+=)V7CeO9+X+P$Xs>hfAF?T5FQyEdKR84};7@Z;rP zh9lyItOh5RR)O=f%@%v)s&gS$c~Iu@e5BD5s|;V{|HmqG(K@rY%7AF`VCc_CaSUy8 zjJjkoDQhTu<}%=ku)2ZHsG$_tCSitRzeBF*P~Oi-;BirBzV7)HGR60OgY~D*%wy0l z(h=~^mQ2cqEVNB#p84W3!dOeCQWWd8Ze@ao^mSSab+NAGBl+Ub^WYC^6V@4|M8leS z-nW;MlqW5v##iamT1ZY5P65}nGrT*$rMKYQG)XJg5f~9;9(+}uS>7XFVu&-C%@8Fp z5L_(~XxOt7y?jN@Jbt#py{iR}6~x_Mi41-u3OdMfCs_3G<;VL(F+3ZMf%yo+v^Ki z>fXTCc_5-yDt>(>Y9dD{A%OY<%L%~Hy~W5hNtWJ=nCHUvYnc%g$L+=iPEjYRRA9B1 z<}NIS6^wdWxez6(&l)SrxZ=rf10Tf*k*nyfO}Ky|C5cgGY1a~Tz%B;cttBx8EUM-O zhk;|uVOeuV1IwyOS|UWCvojUAMyWZsInI))i_8taV%RB zgS(&k{t_3-jH-oN&P?R9vr5-WA( z7dbT9o`)|INC+il&L7Jl%d7%e!N^gGSV$VeA}K@D4B`@*C@KV_#9u+U8C-7=4BI3a zrcE%K{K7T)g>UnV*y0yWdg0pi!nEi`YS9bdr58xorLIu04@sa7oMQAqu-U#Db;%m#M0mQWCkgP|4B z@~cixeg@34DGMSA1SKEoDDXH{XNe!@EDoRmZR)ylrtQYHy|}Iu*Y@E|+lMn!T*rrV70gakhe4Q()FtFl!3T#tLR#Wps0{fHoAM)fLd@ z0<^vYT2}*YC_r0+2sP5Wg0!h1ZGK#&wUdz6OhZ~$w?r2jKf93_ce0J*aEBK(wq5Y$ z@Vy=nYts;-O~u+Y=zdJZ+BE2XOvKteWKyPLZ60(#CSq;&e_?I4ds=9;1@K=Vc{9pv*li1~vKgl6KG@$^CEUy+e%9ICVNS+-KwXM1>jj9o! zf(d#WCh*uJH%bHmWj?fiFM^ccH!~(OTmlv7dp!~)5fX@0j|K@w4Q;%MkYLoH z-#-l!j2h%}6Ms`qjY~=V*M|h%f&?eYob+WGr2L+7UwUpz4h*Xt!zlGemNi83YhRLN z$a5q^(!vzJm~>T9q`WxLx}&%)jVcrOpHn72%{!wb@9t8n$e-ZmHcE&hkGYyT0Q)Xe z6RPf6nR;jgPOK3(dT0YqED|@me*;db5;uC(-W#>j|0)xI#4_>LVIDR?FydP%iDS`I zapklrGa-v7CzWeL-=i%`Nh1%HwPcxzPXL-AUXkU`DKlp#6({Qd+B>`Cwv8YNzvmP@ zfUIC=|EpYn;bU@--2VoduNN=@*n+j8DpiU7rV%L-#81!8Y!G7Qj7pJQSxBb zT&>Dek^R^a#*GiBqDmH!#=e&au&qu9KC2mj0%j&l6P=mXcUCnaXodA~s$u6lro59Q z0W@C9rVkK}d(rc8s&TU`pqZ47n_Xu5Io-I~)lzFxIBpkg*Jve)TWBhGk?VV~ZiTLVL>8LE2y$+Nag= z@4R5-(7K63P;+<=ne7>5o-7a}j*Y$SWaJ@WE4f<&TBg5PcDUS8sJvMpzWD%tDoQT}gWrt@@MQ-Ui^!ueEzdY4Xs>ly*qOk#|$6OW^4ii{K&`37fYGcs~ zqO>BOpL)`wijJk4Vu$ToA8$q`7uC`)w4|e)zwhT?*x-V^`{u{FmBO(ts#bE68YkHj{23>U5CNj15pOR$(ylUusPia9m8<;xAmDK)uWlY!>c zUQ5ph-2kU2=gY)#P@`1)5Zo+cg(xPEBs*>Hik_N!C8~>@yF-+Ywu%#tR|*s+PoP;A;0RT*Yl`RS zeu^>HgxuOSazY|u{%sfi7K(k++zSnH%7Z@2XPu+_DW-$l10CGn^&!}NvrjX00&8q6 zJNe6ywP(J>B1UjsH_gK;h(kwDtq?WU!Su5so8JfbW2nv$%&KLOmQfma1|g+Uf6z99 zDePaA+NEk^zS0yrMECQn$mYjV!HOD6d2J{yW$hsKWxPENZb8omdw?F&@e;o+DbF*K z^3y%!7t`XZ$A}obXJXjvIC8!C`YHE*`1yW_K84rjwHoxf9&Q?UhP1Be44Yp92>?pH zjlFp`_hY+3!wZ|Ng@4Gz5jFMs+=_t#^t!a?+NE*2DD~DD2Ur+-y8yDkO3D{w6N%zeT@X#C{xxLvAjkHqOU~i5yBP;5s~J2J!qas89i8~ zwJ(mPmBLt9-L#xw2qBv32J`%e4~>HnWwBo^Txk3P@ihfpEC9$GLCzMnNgf^$XAt;$ zmSE^;JocPU43&eaSA|ScG3D3?e@bKXV$15^v5y+3DZPY|t64L!03hx2#{AkubVKt3 zGM4T~s!y-uJlc9FWf5&{gnmwfe|-nPER9~zaShZA!0NKTwp6woz`p=l=6E|iqYs~x z#t7W|j!yOo;$H|4@(4rCLfUl(eSy?k$RDK+w|2?)m{W&ayR7Wy)Zuo?bDLC$+a=F! zQXOvXeI>*HSslIyQ-MPp;E*-b3iU-(l&SwQMsip#=~k1lS{t3Vh|J3_M(Br_ft%(u1Km) zowP;Uu8Y5y#T~-sl+GaeEPVC><#`X~U$54cF#L_QdK88qvMR<@(R<;vl8i05>TeGTgJ35LfA;#S##YdcwBULU# z&f-{k`r9Hgu(ExP(TI;_5RVC%k#)uTstWff17ER4VpQ1kP~jP?I3n8c@?ycl!OI+8 l#RGuBKaq$h;dpdgP4fBozrOtTnMv?p{ssn+oQ)NN004g*#=QUl literal 0 HcmV?d00001 diff --git a/kerry/src/kcm/Makefile.am b/kerry/src/kcm/Makefile.am new file mode 100644 index 0000000..b841726 --- /dev/null +++ b/kerry/src/kcm/Makefile.am @@ -0,0 +1,20 @@ +AM_CPPFLAGS = $(all_includes) $(LIBBEAGLE_CFLAGS) $(GLIB_CFLAGS) +AM_LDFLAGS = $(all_libraries) + +METASOURCES = AUTO + +kde_module_LTLIBRARIES = kcm_beagle.la + +kcm_beagle_la_SOURCES = main.cpp beagle.cpp kerry.cpp indexing.cpp backends.cpp status.cpp search.cpp \ + select_privacy_resource.ui + +kcm_beagle_la_LDFLAGS = $(all_libraries) -module -avoid-version -no-undefined +kcm_beagle_la_LIBADD = $(LIB_KDEUI) $(LIB_KIO) $(LIBBEAGLE_LIBADD) + +xdg_apps_DATA = kcmbeagle.desktop + +silent_DATA = kcmkerry.desktop +silentdir = $(kde_appsdir)/.hidden/ + +messages: rc.cpp + $(XGETTEXT) *.cpp -o $(podir)/kcmbeagle.pot diff --git a/kerry/src/kcm/backends.cpp b/kerry/src/kcm/backends.cpp new file mode 100644 index 0000000..8d86233 --- /dev/null +++ b/kerry/src/kcm/backends.cpp @@ -0,0 +1,221 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "backends.h" + +#include +#include +#include +#include +#include +#include +#include + +KCMBeagleBackends::KCMBeagleBackends(QWidget *parent, const char * ) + : KCModule(parent, "kcmbeaglebackends") +{ + QVBoxLayout* general_layout = new QVBoxLayout( this, KDialog::spacingHint() ); + + general_layout->addWidget( new QLabel(i18n( "Select which of the available Beagle backends you want to have enabled." ), this) ); + + listview = new KListView(this); + listview->addColumn(i18n("Backends")); + listview->setResizeMode( QListView::LastColumn ); + listview->setFullWidth( true ); + general_layout->addWidget(listview); + connect(listview, SIGNAL(clicked(QListViewItem*)), SLOT(changedValue())); + + load(); +} + +KCMBeagleBackends::~KCMBeagleBackends() +{ +} + +void KCMBeagleBackends::changedValue() +{ + emit changed( true ); +} + +void KCMBeagleBackends::load() +{ + load( false ); +} + +void KCMBeagleBackends::load( bool useDefaults ) +{ + listview->clear(); + + KProcess *proc = new KProcess; + connect(proc, SIGNAL(receivedStdout(KProcess *, char *, int)), SLOT(gotAvailableBackends(KProcess *, char *, int))); + *proc << "beagled" << "--list-backends"; + if (!proc->start(KProcess::Block,KProcess::Stdout)) + kdError("Could not ask Beagle daemon for available backends."); + + if (!useDefaults) { + QStringList disabledBackends = readDisabledBackends(); + for ( QStringList::Iterator it_backends = disabledBackends.begin(); it_backends != disabledBackends.end(); ++it_backends ) { + QListViewItem *item = listview->findItem(*it_backends,0); + if (item) + ((QCheckListItem*)item)->setOn(false); + } + } + + emit changed( useDefaults ); +} + +void KCMBeagleBackends::defaults() +{ + load( true ); +} + +void KCMBeagleBackends::save() +{ + QStringList disabledBackends; + QListViewItemIterator it_items(listview); + while (it_items.current()) + { + if (!((QCheckListItem*)it_items.current())->isOn()) + disabledBackends << it_items.current()->text(0); + it_items++; + } + saveDisabledBackends(disabledBackends); +} + +void KCMBeagleBackends::gotAvailableBackends(KProcess*, char *buffer, int len) +{ + QString myBuf = QString::fromLatin1(buffer, len); + if (myBuf.startsWith("User:")) { + QStringList list = QStringList::split('\n',myBuf); + for ( QStringList::Iterator it = list.begin(); it != list.end(); ++it ) + if ((*it).startsWith(" - ")) { + QCheckListItem *item = new QCheckListItem(listview,(*it).mid(3),QCheckListItem::CheckBox); + item->setOn(true); + } + } +} + +QStringList KCMBeagleBackends::readDisabledBackends() +{ + QStringList disabledBackends; + + QDomDocument doc( "mydocument" ); + QFile file( QDir::home().absPath()+"/.beagle/config/daemon.xml" ); + if ( !file.open( IO_ReadOnly ) ) + return disabledBackends; + + if ( !doc.setContent( &file ) ) { + file.close(); + return disabledBackends; + } + file.close(); + + QDomElement docElem = doc.documentElement(); + + QDomNode n = docElem.firstChild(); + while( !n.isNull() ) { + QDomElement e = n.toElement(); + if( !e.isNull() ) { + if (e.tagName()=="DeniedBackends") { + QDomNode ro = n.firstChild(); + while( !ro.isNull() ) { + QDomElement exel = ro.toElement(); + if( !exel.isNull() ) + disabledBackends << exel.text(); + ro = ro.nextSibling(); + } + } + } + n = n.nextSibling(); + } + return disabledBackends; +} + +bool KCMBeagleBackends::saveDisabledBackends(QStringList disabledBackends) +{ + QDir beagleDir(QDir::home().absPath()+"/.beagle"); + if (!beagleDir.exists()) + beagleDir.mkdir(QDir::home().absPath()+"/.beagle"); + + QDir beagleConfigDir(QDir::home().absPath()+"/.beagle/config"); + if (!beagleConfigDir.exists()) + beagleConfigDir.mkdir(QDir::home().absPath()+"/.beagle/config"); + + QFile configFile( QDir::home().absPath()+"/.beagle/config/daemon.xml" ); + + QDomDocument doc( QString::null ); + QDomElement root; + + if (configFile.exists()) { + if ( !configFile.open( IO_ReadOnly ) ) + return false; + + if ( !doc.setContent( &configFile ) ) { + configFile.close(); + return false; + } + configFile.close(); + + root = doc.documentElement(); + + QDomNode n = root.firstChild(); + while( !n.isNull() ) { + QDomElement e = n.toElement(); + if( !e.isNull() ) + if (e.tagName()=="DeniedBackends") + root.removeChild( e ); + n = n.nextSibling(); + } + } + else { + doc.appendChild( doc.createProcessingInstruction( + "xml", "version=\"1.0\" encoding=\"UTF-8\"" ) ); + + root = doc.createElement( "DaemonConfig" ); + root.setAttribute("xmlns:xsd","http://www.w3.org/2001/XMLSchema"); + root.setAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance"); + doc.appendChild( root ); + } + + QDomElement rootselement = doc.createElement( "DeniedBackends" ); + root.appendChild(rootselement); + + for ( QStringList::Iterator it = disabledBackends.begin(); it != disabledBackends.end(); ++it ) { + QDomElement tag = doc.createElement( "anyType" ); + tag.setAttribute("xsi:type","xsd:string"); + rootselement.appendChild( tag ); + + QDomText t = doc.createTextNode( *it ); + tag.appendChild( t ); + } + + configFile.remove(); + if ( !configFile.open( IO_WriteOnly ) ) + return false; + + QTextStream stream( &configFile ); + stream << doc.toString(); + configFile.close(); + + return true; +} + +#include "backends.moc" diff --git a/kerry/src/kcm/backends.h b/kerry/src/kcm/backends.h new file mode 100644 index 0000000..f8db5a0 --- /dev/null +++ b/kerry/src/kcm/backends.h @@ -0,0 +1,54 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __BACKENDS_H__ +#define __BACKENDS_H__ + +#include +#include +#include +#include + +class KCMBeagleBackends : public KCModule +{ + Q_OBJECT + +public: + KCMBeagleBackends(QWidget *parent=0, const char *name=0); + ~KCMBeagleBackends(); + + virtual void load(); + virtual void load( bool useDefaults ); + virtual void save(); + virtual void defaults(); + +protected slots: + void gotAvailableBackends(KProcess*, char *buffer, int len); + void changedValue(); + +private: + KListView* listview; + + QStringList readDisabledBackends(); + bool saveDisabledBackends(QStringList disabledBackends); +}; + +#endif diff --git a/kerry/src/kcm/beagle.cpp b/kerry/src/kcm/beagle.cpp new file mode 100644 index 0000000..9762758 --- /dev/null +++ b/kerry/src/kcm/beagle.cpp @@ -0,0 +1,100 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include +#include +#include +#include +#include +#include + +#include "beagle.h" +#include "indexing.h" +#include "backends.h" +#include "status.h" + +KCMBeagle::KCMBeagle(QWidget *parent, const char *name) + : KCModule( parent, "kcmbeagle" ) +{ + setButtons(Default+Apply); + + QVBoxLayout *layout = new QVBoxLayout(this); + m_tab = new QTabWidget(this); + layout->addWidget(m_tab); + + m_indexing = new KCMBeagleIndexing( m_tab, name ); + m_indexing->layout()->setMargin( KDialog::marginHint() ); + + m_backends = new KCMBeagleBackends( m_tab, name ); + m_backends->layout()->setMargin( KDialog::marginHint() ); + + m_status = new KCMBeagleStatus( m_tab, name ); + m_status->layout()->setMargin( KDialog::marginHint() ); + + m_tab->addTab(m_indexing, i18n("&Indexing")); + m_tab->addTab(m_backends, i18n("&Backends")); + m_tab->addTab(m_status, i18n("&Daemon Status")); + + connect(m_indexing, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_backends, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_status, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_tab, SIGNAL(currentChanged(QWidget *)), SIGNAL(quickHelpChanged())); +} + +void KCMBeagle::load() +{ + m_indexing->load(); + m_backends->load(); + m_status->load(); +} + +void KCMBeagle::defaults() +{ + m_indexing->defaults(); + m_backends->defaults(); + m_status->defaults(); +} + +void KCMBeagle::save() +{ + m_indexing->save(); + m_backends->save(); + m_status->save(); + + KProcess *proc = new KProcess; + *proc << "beagle-config"; + *proc << "--beagled-reload-config"; + if (!proc->start()) + kdError("Could not make Beagle reload its config."); +} + +QString KCMBeagle::quickHelp() const +{ + QWidget *w = m_tab->currentPage(); + if (w->inherits("KCModule")) + { + KCModule *m = static_cast(w); + return m->quickHelp(); + } + return QString::null; +} + +#include "beagle.moc" diff --git a/kerry/src/kcm/beagle.h b/kerry/src/kcm/beagle.h new file mode 100644 index 0000000..a292362 --- /dev/null +++ b/kerry/src/kcm/beagle.h @@ -0,0 +1,49 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __KCMBEAGLE_H__ +#define __KCMBEAGLE_H__ + +#include + +class KConfig; +class QTabWidget; + +class KCMBeagle : public KCModule +{ + Q_OBJECT + +public: + KCMBeagle(QWidget *parent=0, const char *name=0); + + virtual void load(); + virtual void save(); + virtual void defaults(); + virtual QString quickHelp() const; + +private: + KCModule *m_indexing; + KCModule *m_backends; + KCModule *m_status; + QTabWidget *m_tab; +}; + +#endif diff --git a/kerry/src/kcm/indexing.cpp b/kerry/src/kcm/indexing.cpp new file mode 100644 index 0000000..fa7ba76 --- /dev/null +++ b/kerry/src/kcm/indexing.cpp @@ -0,0 +1,410 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "indexing.h" +#include "select_privacy_resource.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +KCMBeagleIndexing::KCMBeagleIndexing(QWidget *parent, const char * ) + : KCModule(parent, "kcmbeagleindexing") +{ + QVBoxLayout* top_layout = new QVBoxLayout( this, KDialog::spacingHint() ); + + // General + QGroupBox* gb_general = new QGroupBox(0, Qt::Vertical, i18n("General"), this); + top_layout->addWidget(gb_general); + gb_general->setFlat(true); + QVBoxLayout* gb_general_layout = new QVBoxLayout( gb_general->layout(), KDialog::spacingHint() ); + + startBeagle = new QCheckBox(i18n("Start Beagle indexing service automatically"), gb_general); + gb_general_layout->addWidget( startBeagle); + + indexOnBattery = new QCheckBox(i18n("Index data while on battery power"), gb_general); + gb_general_layout->addWidget( indexOnBattery ); + + // Index + QGroupBox* gb_index = new QGroupBox(0, Qt::Vertical, i18n("Index"), this); + top_layout->addWidget(gb_index); + gb_index->setFlat(true); + QVBoxLayout* gb_index_layout = new QVBoxLayout( gb_index->layout(), KDialog::spacingHint() ); + + QHBoxLayout* qh_index = new QHBoxLayout(gb_index_layout); + indexHome = new QCheckBox(i18n("Index my home folder"), gb_index); + qh_index->addWidget( indexHome ); + qh_index->addStretch(1); + + QLabel* label_index = new QLabel(i18n( "Add any additional folder to be included for indexing." ), gb_index); + gb_index_layout->addWidget(label_index); + + QGridLayout* grid_index = new QGridLayout( gb_index_layout, 1, 1, KDialog::spacingHint()); + + index_list = new KListView( gb_index ); + index_list->addColumn( i18n( "Name" ) ); + index_list->setResizeMode( KListView::LastColumn ); + index_list->setFullWidth( true ); + grid_index->addMultiCellWidget( index_list, 0, 2, 0, 0 ); + label_index->setBuddy(index_list); + + QPushButton* add_index = new QPushButton( i18n("Add..."), gb_index ); + grid_index->addWidget( add_index, 0, 1 ); + + remove_index = new QPushButton( i18n("Remove"), gb_index ); + remove_index->setEnabled(false); + grid_index->addWidget( remove_index, 1, 1 ); + + QSpacerItem* index_spacer = new QSpacerItem( 20, 30, QSizePolicy::Minimum, QSizePolicy::Preferred ); + grid_index->addItem( index_spacer, 2, 1 ); + + connect( add_index, SIGNAL( clicked() ), this, SLOT( slotAddSearch() ) ); + connect( remove_index, SIGNAL( clicked() ), this, SLOT( slotRemoveSearch() ) ); + connect( index_list, SIGNAL( selectionChanged(QListViewItem*) ), this, SLOT( slotSearchSelectionChanged(QListViewItem*) ) ); + + // Privacy + QGroupBox* gb_privacy = new QGroupBox(0, Qt::Vertical, i18n("Privacy"), this); + top_layout->addWidget(gb_privacy); + gb_privacy->setFlat(true); + QVBoxLayout* gb_privacy_layout = new QVBoxLayout( gb_privacy->layout(), KDialog::spacingHint() ); + + QLabel* label_privacy = new QLabel(i18n( "Specify any resource, such as folder or pattern, you wish to exclude from indexing." ), gb_privacy); + gb_privacy_layout->addWidget(label_privacy); + + QGridLayout* grid_privacy = new QGridLayout( gb_privacy_layout, 1, 1, KDialog::spacingHint()); + + privacy_list = new KListView( gb_privacy ); + privacy_list->addColumn( i18n( "Type" ) ); + privacy_list->addColumn( i18n( "Name" ) ); + privacy_list->setResizeMode( KListView::LastColumn ); + privacy_list->setFullWidth( true ); + privacy_list->setAllColumnsShowFocus( true ); + grid_privacy->addMultiCellWidget( privacy_list, 0, 2, 0, 0 ); + label_privacy->setBuddy(privacy_list); + + QPushButton* add_privacy = new QPushButton( i18n("Add..."), gb_privacy ); + grid_privacy->addWidget( add_privacy, 0, 1 ); + + remove_privacy = new QPushButton( i18n("Remove"), gb_privacy ); + remove_privacy->setEnabled(false); + grid_privacy->addWidget( remove_privacy, 1, 1 ); + + QSpacerItem* privacy_spacer = new QSpacerItem( 20, 30, QSizePolicy::Minimum, QSizePolicy::Preferred ); + grid_privacy->addItem( privacy_spacer, 2, 1 ); + + connect( add_privacy, SIGNAL( clicked() ), this, SLOT( slotAddPrivacy() ) ); + connect( remove_privacy, SIGNAL( clicked() ), this, SLOT( slotRemovePrivacy() ) ); + connect( privacy_list, SIGNAL( selectionChanged(QListViewItem*) ), this, SLOT( slotPrivacySelectionChanged(QListViewItem*) ) ); + + // Add some spacing at the end + QWidget *dummy = new QWidget( this ); + top_layout->addWidget(dummy); + top_layout->setStretchFactor( dummy, 1 ); + + load(); + + connect(indexOnBattery, SIGNAL(clicked()), SLOT(changedValue())); + connect(startBeagle, SIGNAL(clicked()), SLOT(changedValue())); + connect(indexHome, SIGNAL(clicked()), SLOT(changedValue())); +} + +KCMBeagleIndexing::~KCMBeagleIndexing() +{ +} + +void KCMBeagleIndexing::changedValue() +{ + emit changed( true ); +} + +void KCMBeagleIndexing::load() +{ + load( false ); +} + +void KCMBeagleIndexing::load( bool useDefaults ) +{ + bool _indexHomeDir, _indexOnBattery, _startBeagle; + QStringList roots, excludeTypes, excludeValues; + + if (useDefaults) { + _indexHomeDir = true; + _indexOnBattery = true; + _startBeagle = true; + } + else { + KConfig *config = new KConfig("kerryrc"); + config->setGroup("Beagle"); + _startBeagle = config->readBoolEntry("AutoStart",false); + delete config; + + readIndexConfig(_indexHomeDir, _indexOnBattery, roots, excludeTypes, excludeValues); + } + + indexHome->setChecked(_indexHomeDir); + indexOnBattery->setChecked(_indexOnBattery); + startBeagle->setChecked(_startBeagle); + + index_list->clear(); + remove_index->setEnabled(false); + for ( QStringList::Iterator it = roots.begin(); it != roots.end(); ++it ) { + new KListViewItem(index_list,*it); + } + + privacy_list->clear(); + remove_privacy->setEnabled(false); + QStringList::Iterator it_values = excludeValues.begin(); + for ( QStringList::Iterator it_types = excludeTypes.begin(); it_types != excludeTypes.end(); ++it_types ) { + new KListViewItem(privacy_list,*it_types,*it_values); + it_values++; + } + + emit changed( useDefaults ); +} + +void KCMBeagleIndexing::defaults() +{ + load( true ); +} + +void KCMBeagleIndexing::save() +{ + KConfig *config = new KConfig("kerryrc"); + config->setGroup("Beagle"); + config->writeEntry("AutoStart",startBeagle->isChecked()); + config->sync(); + delete config; + + + QStringList roots; + for (int i=0;ichildCount();i++) + roots << index_list->itemAtIndex(i)->text(0); + + QStringList excludeTypes; + for (int i=0;ichildCount();i++) + excludeTypes << privacy_list->itemAtIndex(i)->text(0); + + QStringList excludeValues; + for (int i=0;ichildCount();i++) + excludeValues << privacy_list->itemAtIndex(i)->text(1); + + saveIndexConfig(indexHome->isChecked(), indexOnBattery->isChecked(), roots, excludeTypes, excludeValues); +} + +void KCMBeagleIndexing::slotAddSearch() +{ + KURL path = KDirSelectDialog::selectDirectory( QDir::home().absPath(), true, this, i18n("Select Folder")); + new KListViewItem(index_list,path.path()); + changedValue(); +} + +void KCMBeagleIndexing::slotSearchSelectionChanged(QListViewItem* item) +{ + remove_index->setEnabled( item ); +} + +void KCMBeagleIndexing::slotRemoveSearch() +{ + QListViewItem *item = index_list->currentItem(); + if (item && + KMessageBox::warningContinueCancel(this, i18n("Do you really want to remove this folder from the list of folders to be included for indexing?"),i18n("Remove Folder"),KStdGuiItem::del()) == KMessageBox::Continue) + { + delete item; + remove_index->setEnabled( index_list->childCount() ); + changedValue(); + } +} + +void KCMBeagleIndexing::slotAddPrivacy() +{ + KDialogBase dlg(this, 0, true, i18n("Add Resource"), KDialogBase::Ok | KDialogBase::Cancel); + AddPrivacyResource w(&dlg); + dlg.setMainWidget(&w); + connect(w.radioButtonFolder, SIGNAL(toggled(bool)), w.folderRequester, SLOT(setEnabled(bool))); + connect(w.radioButtonFolder, SIGNAL(toggled(bool)), w.patternEdit, SLOT(setDisabled(bool))); + connect(w.radioButtonPattern, SIGNAL(toggled(bool)), w.patternEdit, SLOT(setEnabled(bool))); + connect(w.radioButtonPattern, SIGNAL(toggled(bool)), w.folderRequester, SLOT(setDisabled(bool))); + w.folderRequester->setCaption(i18n("Select Folder")); + w.radioButtonFolder->setChecked(true); + w.folderRequester->setMode(KFile::Directory | KFile::LocalOnly); + if (dlg.exec()) + { + if ( w.radioButtonFolder->isChecked()) { + if (!w.folderRequester->lineEdit()->text().isEmpty()) + new KListViewItem(privacy_list,"Path",w.folderRequester->lineEdit()->text()); + } + else + if (!w.patternEdit->text().isEmpty()) + new KListViewItem(privacy_list,"Pattern",w.patternEdit->text()); + changedValue(); + } +} + +void KCMBeagleIndexing::slotRemovePrivacy() +{ + QListViewItem *item = privacy_list->currentItem(); + if (item && + KMessageBox::warningContinueCancel(this, i18n("Do you really want to remove this item from the list of data to be excluded from indexing?"),i18n("Remove Item"),KStdGuiItem::del()) == KMessageBox::Continue) + { + delete item; + remove_privacy->setEnabled( privacy_list->childCount() ); + changedValue(); + } +} + +void KCMBeagleIndexing::slotPrivacySelectionChanged(QListViewItem* item) +{ + remove_privacy->setEnabled( item ); +} + +void KCMBeagleIndexing::readIndexConfig(bool &indexHomeDir, bool &indexOnBattery, QStringList &roots, QStringList &excludeTypes, QStringList &excludeValues) +{ + indexHomeDir = true; + indexOnBattery = true; + roots.clear(); + excludeTypes.clear(); + excludeValues.clear(); + + QFile file( QDir::home().absPath()+"/.beagle/config/indexing.xml" ); + if ( !file.open( IO_ReadOnly ) ) + return; + + QDomDocument doc( "mydocument" ); + if ( !doc.setContent( &file ) ) { + file.close(); + return; + } + file.close(); + + QDomElement docElem = doc.documentElement(); + + QDomNode n = docElem.firstChild(); + while( !n.isNull() ) { + QDomElement e = n.toElement(); + if( !e.isNull() ) { + if (e.tagName()=="IndexHomeDir") + indexHomeDir = e.text()=="true"; + if (e.tagName()=="IndexOnBattery") + indexOnBattery = e.text()=="true"; + else if (e.tagName()=="Roots") { + QDomNode ro = n.firstChild(); + while( !ro.isNull() ) { + QDomElement exel = ro.toElement(); + if( !exel.isNull() ) + roots << exel.text(); + ro = ro.nextSibling(); + } + } + else if (e.tagName()=="Excludes") { + QDomNode ex = n.firstChild(); + while( !ex.isNull() ) { + QDomElement exel = ex.toElement(); + if( !exel.isNull() ) { + excludeTypes << exel.attribute("Type"); + excludeValues << exel.attribute("Value"); + } + ex = ex.nextSibling(); + } + } + } + n = n.nextSibling(); + } +} + +bool KCMBeagleIndexing::saveIndexConfig(bool indexHomeDir, bool indexOnBattery, QStringList roots, QStringList excludeTypes, QStringList excludeValues) +{ + QDir beagleDir(QDir::home().absPath()+"/.beagle"); + if (!beagleDir.exists()) + beagleDir.mkdir(QDir::home().absPath()+"/.beagle"); + + QDir beagleConfigDir(QDir::home().absPath()+"/.beagle/config"); + if (!beagleConfigDir.exists()) + beagleConfigDir.mkdir(QDir::home().absPath()+"/.beagle/config"); + + QFile configFile( QDir::home().absPath()+"/.beagle/config/indexing.xml" ); + if ( !configFile.open( IO_WriteOnly ) ) + return false; + + QDomDocument doc( QString::null ); + doc.appendChild( doc.createProcessingInstruction( + "xml", "version=\"1.0\" encoding=\"UTF-8\"" ) ); + + QDomElement root = doc.createElement( "IndexingConfig" ); + root.setAttribute("xmlns:xsd","http://www.w3.org/2001/XMLSchema"); + root.setAttribute("xmlns:xsi","http://www.w3.org/2001/XMLSchema-instance"); + doc.appendChild( root ); + + QDomElement rootselement = doc.createElement( "Roots" ); + root.appendChild(rootselement); + + for ( QStringList::Iterator it = roots.begin(); it != roots.end(); ++it ) { + QDomElement tag = doc.createElement( "Root" ); + rootselement.appendChild( tag ); + + QDomText t = doc.createTextNode( *it ); + tag.appendChild( t ); + } + + QDomElement tag = doc.createElement( "IndexHomeDir" ); + root.appendChild( tag ); + + QDomText t = doc.createTextNode( indexHomeDir ? "true" : "false" ); + tag.appendChild( t ); + + tag = doc.createElement( "IndexOnBattery" ); + root.appendChild( tag ); + + t = doc.createTextNode( indexOnBattery ? "true" : "false" ); + tag.appendChild( t ); + + QDomElement excludeselement = doc.createElement( "Excludes" ); + root.appendChild(excludeselement); + + QStringList::Iterator it_types = excludeTypes.begin(); + for ( QStringList::Iterator it = excludeValues.begin(); it != excludeValues.end(); ++it ) { + QDomElement t = doc.createElement( "ExcludeItem" ); + t.setAttribute("Type", *it_types); + t.setAttribute("Value", *it); + excludeselement.appendChild( t ); + + ++it_types; + } + + QTextStream stream( &configFile ); + stream << doc.toString(); + configFile.close(); + + return true; +} + +#include "indexing.moc" diff --git a/kerry/src/kcm/indexing.h b/kerry/src/kcm/indexing.h new file mode 100644 index 0000000..c29de01 --- /dev/null +++ b/kerry/src/kcm/indexing.h @@ -0,0 +1,63 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __INDEXING_H__ +#define __INDEXING_H__ + +#include +#include +#include +#include + +class KCMBeagleIndexing : public KCModule +{ + Q_OBJECT + +public: + KCMBeagleIndexing(QWidget *parent=0, const char *name=0); + ~KCMBeagleIndexing(); + + virtual void load(); + virtual void load( bool useDefaults ); + virtual void save(); + virtual void defaults(); + +private slots: + void slotAddSearch(); + void slotRemoveSearch(); + void slotSearchSelectionChanged(QListViewItem*); + void slotAddPrivacy(); + void slotRemovePrivacy(); + void slotPrivacySelectionChanged(QListViewItem*); + void changedValue(); + +private: + QCheckBox *startBeagle; + QCheckBox *indexOnBattery; + QCheckBox *indexHome; + KListView* index_list, *privacy_list; + QPushButton* remove_index, *remove_privacy; + + void readIndexConfig(bool &indexHomeDir, bool &indexOnBattery, QStringList &roots, QStringList &excludeTypes, QStringList &excludeValues); + bool saveIndexConfig(bool indexHomeDir, bool indexOnBattery, QStringList roots, QStringList excludeTypes, QStringList excludeValues); +}; + +#endif diff --git a/kerry/src/kcm/kcmbeagle.desktop b/kerry/src/kcm/kcmbeagle.desktop new file mode 100644 index 0000000..1855938 --- /dev/null +++ b/kerry/src/kcm/kcmbeagle.desktop @@ -0,0 +1,49 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=Application +Icon=kerry +Exec=kcmshell beagle + +X-KDE-Library=beagle +X-KDE-FactoryName=beagle +X-KDE-ParentApp=kcontrol + +Name=Desktop Search +Name[ar]=بحث على سطح المكتب +Name[br]=Klask ar vurev +Name[da]=Desktopsøgning +Name[de]=Desktop-Suche +Name[es]=Búsqueda de escritorio +Name[fi]=Työpöytähaku +Name[ga]=Cuardach Deisce +Name[ja]=デスクトップ検索 +Name[nl]=Desktop-zoekopdracht +Name[pt]=Pesquisa no Ambiente de Trabalho +Name[sv]=Skrivbordssökning +Name[uk]=Стільничний пошук + +Comment=You can configure the Beagle daemon here +Comment[ar]=هنا يمكنك إعداد مراقب القرص و التنفيذ Beagle +Comment[da]=Her kan du indstille Beagle-dæmonen +Comment[de]=Sie können hier den Beagle-Daemon einrichten +Comment[es]=Puede configurar aquí el demonio de Beagle +Comment[fi]=Voit määrittää Beagle-demonin täällä +Comment[ga]=Is féidir leat deamhan Beagle a chumrú anseo +Comment[ja]=ここで Beagle デーモンを設定します +Comment[nl]=Hier kunt u de Beagle-daemon instellen +Comment[pt]=Poderá configurar aqui o servidor do Beagle +Comment[sv]=Här kan du ställa in Beagle-demonen +Comment[uk]=Тут можна налаштувати даемон Beagle +Keywords=beagle,desktop search,file search,search,kerry +Keywords[ar]=beagle,بحث على سطح المكتب,بحث ملف,بحث,kerry +Keywords[da]=beagle,desktop søg,filsøgning,kerry +Keywords[de]=Beagle,Desktop-Suche,Dateisuche,Suche,Kerry +Keywords[es]=beagle,búsqueda de escritorio,búsqueda de archivo,buscar,kerry +Keywords[ga]=beagle,cuardach deisce,cuardach comhaid,cuardach,kerry +Keywords[ja]=beagle,デスクトップ検索,ファイル検索,検索,kerry +Keywords[nl]=beagle,desktop search,desktop zoekopdracht,bestanden zoeken,zoeken,kerry +Keywords[pt]=beagle,pesquisa no ambiente de trabalho,pesquisa de ficheiros,pesquisa,procura,kerry +Keywords[sv]=beagle,skrivbord sök,filsökning,kerry +Keywords[uk]=beagle,desktop search,file search,search,kerry,пошук файлів,стільничний пошук,пошук + +Categories=Qt;KDE;X-KDE-settings-components; diff --git a/kerry/src/kcm/kcmkerry.desktop b/kerry/src/kcm/kcmkerry.desktop new file mode 100644 index 0000000..b0942b4 --- /dev/null +++ b/kerry/src/kcm/kcmkerry.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=Application +Icon=kerry +Exec=kcmshell kerry + +X-KDE-Library=beagle +X-KDE-FactoryName=kerry +X-KDE-ParentApp=kcontrol diff --git a/kerry/src/kcm/kerry.cpp b/kerry/src/kcm/kerry.cpp new file mode 100644 index 0000000..a728f2b --- /dev/null +++ b/kerry/src/kcm/kerry.cpp @@ -0,0 +1,113 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "kerry.h" +#include "search.h" +#include "indexing.h" +#include "backends.h" +#include "status.h" + +KCMKerry::KCMKerry(QWidget *parent, const char *name) + : KCModule( parent, "kcmkerry" ) +{ + setButtons(Default+Apply); + + QVBoxLayout *layout = new QVBoxLayout(this); + m_tab = new QTabWidget(this); + layout->addWidget(m_tab); + m_search = new KCMKerrySearch( m_tab, name ); + m_search->layout()->setMargin( KDialog::marginHint() ); + + m_indexing = new KCMBeagleIndexing( m_tab, name ); + m_indexing->layout()->setMargin( KDialog::marginHint() ); + + m_backends = new KCMBeagleBackends( m_tab, name ); + m_backends->layout()->setMargin( KDialog::marginHint() ); + + m_status = new KCMBeagleStatus( m_tab, name ); + m_status->layout()->setMargin( KDialog::marginHint() ); + + m_tab->addTab(m_search, i18n("&Search")); + m_tab->addTab(m_indexing, i18n("&Indexing")); + m_tab->addTab(m_backends, i18n("&Backends")); + m_tab->addTab(m_status, i18n("&Daemon Status")); + + connect(m_search, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_indexing, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_backends, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_status, SIGNAL(changed(bool)), SIGNAL(changed(bool))); + connect(m_tab, SIGNAL(currentChanged(QWidget *)), SIGNAL(quickHelpChanged())); +} + +void KCMKerry::load() +{ + m_search->load(); + m_indexing->load(); + m_backends->load(); + m_status->load(); +} + +void KCMKerry::defaults() +{ + m_search->defaults(); + m_indexing->defaults(); + m_backends->defaults(); + m_status->defaults(); +} + +void KCMKerry::save() +{ + m_search->save(); + m_indexing->save(); + m_backends->save(); + m_status->save(); + + DCOPClient *client = kapp->dcopClient(); + client->send("kerry", "default", "configChanged()", ""); + + KProcess *proc = new KProcess; + *proc << "beagle-config"; + *proc << "--beagled-reload-config"; + if (!proc->start()) + kdError("Could not make Beagle reload its config."); +} + +QString KCMKerry::quickHelp() const +{ + QWidget *w = m_tab->currentPage(); + if (w->inherits("KCModule")) + { + KCModule *m = static_cast(w); + return m->quickHelp(); + } + return QString::null; +} + +#include "kerry.moc" diff --git a/kerry/src/kcm/kerry.h b/kerry/src/kcm/kerry.h new file mode 100644 index 0000000..c6bf31a --- /dev/null +++ b/kerry/src/kcm/kerry.h @@ -0,0 +1,50 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __KCMKERRY_H__ +#define __KCMKERRY_H__ + +#include + +class KConfig; +class QTabWidget; + +class KCMKerry : public KCModule +{ + Q_OBJECT + +public: + KCMKerry(QWidget *parent=0, const char *name=0); + + virtual void load(); + virtual void save(); + virtual void defaults(); + virtual QString quickHelp() const; + +private: + KCModule *m_search; + KCModule *m_indexing; + KCModule *m_backends; + KCModule *m_status; + QTabWidget *m_tab; +}; + +#endif diff --git a/kerry/src/kcm/main.cpp b/kerry/src/kcm/main.cpp new file mode 100644 index 0000000..2d5c896 --- /dev/null +++ b/kerry/src/kcm/main.cpp @@ -0,0 +1,43 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "beagle.h" +#include "kerry.h" + +#include +#include + +extern "C" +{ + KDE_EXPORT KCModule *create_beagle(QWidget *parent, const char *name) + { + KGlobal::locale()->insertCatalogue("kcmbeagle"); + return new KCMBeagle(parent, name); + } + + KDE_EXPORT KCModule *create_kerry(QWidget *parent, const char *name) + { + KGlobal::locale()->insertCatalogue("kcmbeagle"); + return new KCMKerry(parent, name); + } +} + + diff --git a/kerry/src/kcm/search.cpp b/kerry/src/kcm/search.cpp new file mode 100644 index 0000000..15a296c --- /dev/null +++ b/kerry/src/kcm/search.cpp @@ -0,0 +1,150 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "search.h" + +#include + +KCMKerrySearch::KCMKerrySearch(QWidget *parent, const char * ) + : KCModule(parent, "kcmkerrysearch") +{ + QVBoxLayout* top_layout = new QVBoxLayout( this, KDialog::spacingHint() ); + + // General + QGroupBox* gb_general = new QGroupBox(0, Qt::Vertical, i18n("General"), this); + gb_general->setFlat(true); + top_layout->addWidget(gb_general); + QVBoxLayout* gb_general_layout = new QVBoxLayout( gb_general->layout(), KDialog::spacingHint() ); + + QHBoxLayout* qh_layout = new QHBoxLayout(gb_general_layout); + QLabel* label_order = new QLabel(i18n("Default result sort order:"), gb_general); + qh_layout->addWidget(label_order); + combo_order = new QComboBox(gb_general); + combo_order->insertItem(i18n("Type")); + combo_order->insertItem(i18n("Date Modified")); + combo_order->insertItem(i18n("Name")); + combo_order->insertItem(i18n("Relevance")); + QWhatsThis::add(combo_order,i18n("Define the default sort order at startup.")); + label_order->setBuddy(combo_order); + qh_layout->addWidget(combo_order); + + QHBoxLayout* qh_number = new QHBoxLayout(gb_general_layout); + QLabel* label_number = new QLabel(i18n( "Maximum number of results displayed:" ), gb_general); + qh_number->addWidget(label_number); + maxResultsDisplayed = new QSpinBox( 1, 100, 1, gb_general ); + maxResultsDisplayed->setSpecialValueText(i18n("No Limit")); + QWhatsThis::add(maxResultsDisplayed,i18n("Define how many results shall be displayed on one result page.")); + label_number->setBuddy(maxResultsDisplayed); + qh_number->addWidget(maxResultsDisplayed); + + showBigTiles = new QCheckBox(i18n("Show search results with details by default"), gb_general); + gb_general_layout->addWidget(showBigTiles); + + // Global Shortcuts + QGroupBox* gb_keys = new QGroupBox(0, Qt::Vertical, i18n("Global Shortcuts"), this); + QVBoxLayout* gb_keys_layout = new QVBoxLayout( gb_keys->layout(), KDialog::spacingHint() ); + top_layout->addWidget(gb_keys); + gb_keys->setFlat(true); + + globalKeys = new KGlobalAccel(this); + globalKeys->insert( "Program:kerry", i18n("Kerry Beagle Search") ); + + KShortcut showDialogShortcut = KShortcut(ALT+Key_Space); + showDialogShortcut.append( KKey( Key_F12 ) ); + globalKeys->insert( "Show Kerry Dialog", i18n("Show Search Dialog"), QString::null, showDialogShortcut, showDialogShortcut, 0, 0); + globalKeys->insert( "Search Primary Selection with Kerry", i18n("Search Primary Selection"), QString::null, CTRL+ALT+Key_Space, CTRL+ALT+Key_Space, 0, 0); + + KConfig *config = new KConfig("kerryrc"); + globalKeys->readSettings(config); + delete config; + + keysWidget = new KKeyChooser( globalKeys, gb_keys ); + gb_keys_layout->addWidget(keysWidget); + + // Add some spacing at the end + QWidget *dummy = new QWidget( this ); + top_layout->setStretchFactor( dummy, 1 ); + top_layout->addWidget(dummy); + + connect(maxResultsDisplayed, SIGNAL(valueChanged(int)), SLOT(changedValue())); + connect(combo_order, SIGNAL(activated(int)), SLOT(changedValue())); + connect(keysWidget, SIGNAL(keyChange()), SLOT(changedValue())); + connect(showBigTiles, SIGNAL(clicked()), SLOT(changedValue())); + + load(); +} + +KCMKerrySearch::~KCMKerrySearch() +{ +} + +void KCMKerrySearch::changedValue() +{ + emit changed( true ); +} + +void KCMKerrySearch::load() +{ + load( false ); +} + +void KCMKerrySearch::load( bool useDefaults ) +{ + if (useDefaults) { + maxResultsDisplayed->setValue(20); + combo_order->setCurrentItem(0); + keysWidget->allDefault(); + showBigTiles->setChecked(false); + } + else { + KConfig *config = new KConfig("kerryrc"); + config->setGroup("General"); + maxResultsDisplayed->setValue(config->readNumEntry("DisplayAmount", 20)); + combo_order->setCurrentItem(config->readNumEntry("DefaultSortOrder",0)); + showBigTiles->setChecked(config->readBoolEntry("ShowBigTiles",false)); + delete config; + } + + emit changed( useDefaults ); +} + +void KCMKerrySearch::defaults() +{ + load( true ); +} + +void KCMKerrySearch::save() +{ + KConfig *config = new KConfig("kerryrc"); + config->setGroup("General"); + config->writeEntry("DisplayAmount", maxResultsDisplayed->value()); + config->writeEntry("DefaultSortOrder", combo_order->currentItem()); + config->writeEntry("ShowBigTiles", showBigTiles->isChecked()); + + keysWidget->commitChanges(); + globalKeys->writeSettings(config); + + config->sync(); + delete config; + +} + +#include "search.moc" diff --git a/kerry/src/kcm/search.h b/kerry/src/kcm/search.h new file mode 100644 index 0000000..5f4e01c --- /dev/null +++ b/kerry/src/kcm/search.h @@ -0,0 +1,61 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __SEARCH_H__ +#define __SEARCH_H__ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class KCMKerrySearch : public KCModule +{ + Q_OBJECT + +public: + KCMKerrySearch(QWidget *parent=0, const char *name=0); + ~KCMKerrySearch(); + + virtual void load(); + virtual void load( bool useDefaults ); + virtual void save(); + virtual void defaults(); + +protected slots: + void changedValue(); + +private: + QSpinBox *maxResultsDisplayed; + QComboBox* combo_order; + QCheckBox* showBigTiles; + KKeyChooser *keysWidget; + KGlobalAccel *globalKeys; +}; + +#endif diff --git a/kerry/src/kcm/select_privacy_resource.ui b/kerry/src/kcm/select_privacy_resource.ui new file mode 100644 index 0000000..ef24dd3 --- /dev/null +++ b/kerry/src/kcm/select_privacy_resource.ui @@ -0,0 +1,86 @@ + +AddPrivacyResource + + + AddPrivacyResource + + + + 0 + 0 + 565 + 164 + + + + Add Resource + + + + unnamed + + + + textLabel + + + Please select a resource you wish to exclude from indexing. + + + + + buttonGroup1 + + + NoFrame + + + + + + + unnamed + + + 0 + + + 0 + + + + radioButtonFolder + + + Folder: + + + + + folderRequester + + + + + radioButtonPattern + + + File name pattern: + + + + + patternEdit + + + + + + + + + + select_privacy_resource.ui.h + + + diff --git a/kerry/src/kcm/select_privacy_resource.ui.h b/kerry/src/kcm/select_privacy_resource.ui.h new file mode 100644 index 0000000..dd8107a --- /dev/null +++ b/kerry/src/kcm/select_privacy_resource.ui.h @@ -0,0 +1 @@ +#include diff --git a/kerry/src/kcm/status.cpp b/kerry/src/kcm/status.cpp new file mode 100644 index 0000000..863e279 --- /dev/null +++ b/kerry/src/kcm/status.cpp @@ -0,0 +1,216 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + Copyright (C) 2006 Debajyoti Bera + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "status.h" + +#include +#include +#include +#include +#include +#include +#include +#include + +extern "C" { +#include +#include +} + +KCMBeagleStatus::KCMBeagleStatus(QWidget *parent, const char * ) + : KCModule(parent, "kcmbeaglestatus") +{ + QVBoxLayout* general_layout = new QVBoxLayout( this, KDialog::spacingHint() ); + + QHBox *control_box = new QHBox (this); + control_box->setSpacing (3); + general_layout->addWidget(control_box); + + label_control = new QLabel (control_box); + + QWidget *dummy = new QWidget( control_box ); + control_box->setStretchFactor( dummy, 1 ); + + pb_control = new KPushButton (control_box); + connect (pb_control, SIGNAL (clicked ()), this, SLOT (controlPressed ()) ); + + status_box = new QGroupBox (1, Qt::Horizontal, this); + general_layout->addWidget(status_box); + + version_label = new QLabel (status_box); + + status_area = new QTextEdit (status_box); + status_area->setReadOnly (true); + + index_info_box = new QTextEdit (status_box); + index_info_box->setReadOnly (true); + + QHBox *footer_box = new QHBox (this); + general_layout->addWidget(footer_box); + + // Add some spacing to left + dummy = new QWidget( footer_box ); + footer_box->setStretchFactor( dummy, 1 ); + pb_refresh = new KPushButton (i18n("Refresh Status"), footer_box); + connect (pb_refresh, SIGNAL (clicked()), this, SLOT (refreshStatus ()) ); + + g_type_init (); + refreshStatus (); + + load(); +} + +KCMBeagleStatus::~KCMBeagleStatus() +{ +} + +void KCMBeagleStatus::load() +{ + load( false ); +} + +void KCMBeagleStatus::load( bool useDefaults ) +{ + emit changed( useDefaults ); +} + +void KCMBeagleStatus::defaults() +{ +// if (!beagle_util_daemon_is_running ()) +// controlPressed(); + + load( true ); +} + +void KCMBeagleStatus::save() +{ + +} + +bool KCMBeagleStatus::refreshDaemonStatus () +{ + gboolean is_running = beagle_util_daemon_is_running (); + if (is_running) { + label_control->setText (i18n("Beagle service is currently running. Click here to stop.")); + pb_control->setText (i18n("Stop")); + last_status = true; + } else { + label_control->setText (i18n("Beagle service is currently stopped. Click here to start.")); + pb_control->setText (i18n("Start")); + last_status = false; + } + return is_running; +} + +void KCMBeagleStatus::refreshStatus () +{ + pb_refresh->setDisabled (TRUE); + bool is_running = refreshDaemonStatus (); + + status_box->setTitle ( QString ("[%1] ").arg (QDateTime::currentDateTime ().toString ()) ); + if (! is_running) { + version_label->setText (i18n("Service not started.")); + pb_refresh->setDisabled (FALSE); + status_area->clear (); + index_info_box->clear (); + return; + } + + BeagleClient *client = beagle_client_new (NULL); + BeagleDaemonInformationRequest *request = beagle_daemon_information_request_new (); + BeagleResponse *response = beagle_client_send_request (client, BEAGLE_REQUEST (request), NULL); + + version_label->setText ( i18n ("Beagle service version: %1\n").arg (beagle_daemon_information_response_get_version (BEAGLE_DAEMON_INFORMATION_RESPONSE (response)))); + + status_area->append (i18n("Current status:\n")); + status_area->append (" "); // cheating + status_area->append ( beagle_daemon_information_response_get_human_readable_status (BEAGLE_DAEMON_INFORMATION_RESPONSE (response))); + + index_info_box->append (i18n("Index information:")); + index_info_box->append (" "); + index_info_box->append ( beagle_daemon_information_response_get_index_information (BEAGLE_DAEMON_INFORMATION_RESPONSE (response))); + + g_object_unref (request); + g_object_unref (response); + //g_print ("%s\n", beagle_daemon_information_response_get_human_readable_status (BEAGLE_DAEMON_INFORMATION_RESPONSE (response))); + g_object_unref (client); + + pb_refresh->setDisabled (FALSE); +} + +void KCMBeagleStatus::controlPressed () +{ + pb_control->setDisabled (TRUE); + if (last_status) { + if (stopBeagle ()) + QTimer::singleShot (1000, this, SLOT (verifyStatus ())); + } else { + if (startBeagle ()) + QTimer::singleShot (5000, this, SLOT (verifyStatus ())); + } +} + +void KCMBeagleStatus::verifyStatus () +{ + pb_control->setEnabled (TRUE); + refreshDaemonStatus (); +} + +bool KCMBeagleStatus::stopBeagle () +{ + gboolean is_running = beagle_util_daemon_is_running (); + if (! is_running) { + KPassivePopup::message (i18n("Beagle service was already stopped."), this); + return false; + } + + BeagleClient *client = beagle_client_new (NULL); + BeagleShutdownRequest *request; + BeagleResponse *response; + + request = beagle_shutdown_request_new (); + response = beagle_client_send_request (client, BEAGLE_REQUEST (request), NULL); + g_object_unref (client); + + return true; +} + +bool KCMBeagleStatus::startBeagle () +{ + gboolean is_running = beagle_util_daemon_is_running (); + if (is_running) { + KPassivePopup::message (i18n("Beagle service already running."), this); + return false; + } + + KProcess *proc = new KProcess; + *proc << "beagled"; + *proc << "--indexing-delay 2"; + if (!proc->start()) { + KPassivePopup::message (i18n("Could not start beagle service."), this); + return false; + } + + return true; +} + +#include "status.moc" diff --git a/kerry/src/kcm/status.h b/kerry/src/kcm/status.h new file mode 100644 index 0000000..7ae9cef --- /dev/null +++ b/kerry/src/kcm/status.h @@ -0,0 +1,63 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + Copyright (C) 2006 Debajyoti Bera + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef __STATUS_H__ +#define __STATUS_H__ + +#include +#include +#include +#include +#include + +class KCMBeagleStatus : public KCModule +{ + Q_OBJECT + +public: + KCMBeagleStatus(QWidget *parent=0, const char *name=0); + ~KCMBeagleStatus(); + + virtual void load(); + virtual void load( bool useDefaults ); + virtual void save(); + virtual void defaults(); + +private slots: + void refreshStatus (); + void controlPressed (); + void verifyStatus (); + +private: + bool refreshDaemonStatus (); + bool stopBeagle (); + bool startBeagle (); + + QLabel *label_control; + KPushButton *pb_control, *pb_refresh; + QLabel *version_label; + QTextEdit *status_area, *index_info_box; + QGroupBox *status_box; + bool last_status; +}; + +#endif diff --git a/kerry/src/kerry.autostart.desktop b/kerry/src/kerry.autostart.desktop new file mode 100644 index 0000000..d64f39a --- /dev/null +++ b/kerry/src/kerry.autostart.desktop @@ -0,0 +1,35 @@ +[Desktop Entry] +X-SuSE-translate=true +Encoding=UTF-8 +Name=Kerry Beagle +GenericName=Desktop Search +GenericName[ar]=بحث على سطح المكتب +GenericName[br]=Klask ar vurev +GenericName[cs]=Vyhledávání v počítači +GenericName[da]=Desktopsøgning +GenericName[de]=Desktop-Suche +GenericName[es]=Búsqueda de escritorio +GenericName[fi]=Työpöytähaku +GenericName[ga]=Cuardach Deisce +GenericName[gl]=Procuras no Escritório +GenericName[it]=Ricerca desktop +GenericName[ja]=デスクトップ検索 +GenericName[ka]=სამუშაო მაგიდის ძიება +GenericName[nl]=Desktop-zoekprogramma +GenericName[pt]=Pesquisa no Ambiente de Trabalho +GenericName[sk]=Vyhladávanie na pracovnej ploche +GenericName[sv]=Skrivbordssökning +GenericName[th]=โปรแกรมค้นหาภายในเครื่อง +GenericName[uk]=Стільничний пошук +GenericName[zh_CN]=桌面搜索 +Exec=kerry +Icon=kerry +Type=Application +Categories=Qt;KDE;Application;Core;Utility;Filesystem; +Terminal=false +X-DCOP-ServiceType=Unique +X-KDE-StartupNotify=false +X-KDE-autostart-condition=kerryrc:General:AutoStart:true +X-KDE-autostart-after=panel +X-KDE-autostart-phase=2 + diff --git a/kerry/src/kerry.desktop b/kerry/src/kerry.desktop new file mode 100644 index 0000000..a144b8b --- /dev/null +++ b/kerry/src/kerry.desktop @@ -0,0 +1,31 @@ +[Desktop Entry] +X-SuSE-translate=true +Encoding=UTF-8 +Name=Kerry Beagle +GenericName=Desktop Search +GenericName[ar]=بحث على سطح المكتب +GenericName[br]=Klask ar vurev +GenericName[cs]=Vyhledávání v počítači +GenericName[da]=Desktopsøgning +GenericName[de]=Desktop-Suche +GenericName[es]=Búsqueda de escritorio +GenericName[fi]=Työpöytähaku +GenericName[ga]=Cuardach Deisce +GenericName[gl]=Procuras no Escritório +GenericName[it]=Ricerca desktop +GenericName[ja]=デスクトップ検索 +GenericName[ka]=სამუშაო მაგიდის ძიება +GenericName[nl]=Desktop-zoekprogramma +GenericName[pt]=Pesquisa no Ambiente de Trabalho +GenericName[sk]=Vyhladávanie na pracovnej ploche +GenericName[sv]=Skrivbordssökning +GenericName[th]=โปรแกรมค้นหาภายในเครื่อง +GenericName[uk]=Стільничний пошук +GenericName[zh_CN]=桌面搜索 +Exec=kerry --show-searchdialog +Icon=kerry +Type=Application +Categories=Qt;KDE;Application;Core;Utility;Filesystem; +Terminal=false +X-DCOP-ServiceType=Unique +X-KDE-StartupNotify=false diff --git a/kerry/src/kerryapp.cpp b/kerry/src/kerryapp.cpp new file mode 100644 index 0000000..578859b --- /dev/null +++ b/kerry/src/kerryapp.cpp @@ -0,0 +1,268 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include "searchdlg.h" +#include "kerryapp.h" +#include +#include +#include +#include +#include +#include +#include + +#define HISTORY_ITEMS_START_ID 100 +#define HISTORY_ITEMS_CLEAR_ID 99 + + +KerryApplication::KerryApplication() : KUniqueApplication(), + hitListWindow(0), sysTrayIcon(0) +{ +} + +KerryApplication::~KerryApplication() +{ + if (hitListWindow) { + KConfig *config = KGlobal::config(); + config->writeEntry("History",hitListWindow->editSearch->historyItems()); + config->writeEntry("DialogSize",hitListWindow->size()); + config->sync(); + + delete hitListWindow; + } +} + +int KerryApplication::newInstance() +{ + if (!hitListWindow) + init(KGlobal::instance()->aboutData()); + + KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); + if (args->isSet("show-searchdialog")) { + hitListWindow->showSearchDialog(); + } + + if (args->count()==1) + search(args->arg(0)); + + args->clear(); + + return KUniqueApplication::newInstance(); +} + +void KerryApplication::init(const KAboutData* /*about*/) +{ + if (hitListWindow) + return; + + KConfig *config = KGlobal::config(); + config->setGroup("General"); + + hitListWindow = new SearchDlg(); + QSize *defaultSize; + defaultSize = new QSize(750, 650); + hitListWindow->resize(config->readSizeEntry("DialogSize", defaultSize)); + delete defaultSize; + connect(hitListWindow,SIGNAL(configure()),SLOT(configure())); + connect(hitListWindow,SIGNAL(readConfiguration()),SLOT(configChanged())); + + hitListWindow->editSearch->setHistoryItems(config->readListEntry("History")); + hitListWindow->configChanged(); + + sysTrayIcon = new KSystemTray(hitListWindow); + KPopupMenu *menu = sysTrayIcon->contextMenu(); + connect(menu,SIGNAL(aboutToShow()),SLOT(aboutToShowSysTrayMenu())); + connect(menu,SIGNAL(activated(int)),SLOT(historySelected(int))); + + menu->insertSeparator(); + menu->insertItem(SmallIconSet("history_clear"), + i18n("Clear Search History"), this, + SLOT(clearHistory()),0,HISTORY_ITEMS_CLEAR_ID); + + menu->insertItem(SmallIconSet("configure"), + i18n("Configure Kerry..."), this, + SLOT(configure())); +/* + KHelpMenu *helpmenu = new KHelpMenu(hitListWindow, about, false); + menu->insertItem( SmallIconSet("help"), KStdGuiItem::help().text(), helpmenu->menu() ); +*/ + globalKeys = new KGlobalAccel(this); + globalKeys->insert( "Program:kerry", i18n("Kerry Beagle Search") ); + + KShortcut showDialogShortcut = KShortcut(ALT+Key_Space); + showDialogShortcut.append( KKey( Key_F12 ) ); + globalKeys->insert( "Show Kerry Dialog", i18n("Show Search Dialog"), QString::null, showDialogShortcut, showDialogShortcut, hitListWindow, SLOT(showSearchDialog()) ); + globalKeys->insert( "Search Primary Selection with Kerry", i18n("Search Primary Selection"), QString::null, CTRL+ALT+Key_Space, CTRL+ALT+Key_Space, this, SLOT(searchPrimarySelection()) ); + configChanged(); + + sysTrayIcon->setPixmap(sysTrayIcon->loadIcon("kerry_systemtray")); + QToolTip::add(sysTrayIcon, i18n("Kerry Beagle Search (%1)").arg(globalKeys->shortcut("Show Kerry Dialog").seq(0).toString())); + + sysTrayIcon->show(); + + sysTrayIcon->actionCollection()->action("file_quit")->setShortcut(KShortcut()); + disconnect(sysTrayIcon->actionCollection()->action("file_quit"), SIGNAL(activated()), sysTrayIcon, SLOT(maybeQuit())); + connect(sysTrayIcon->actionCollection()->action("file_quit"), SIGNAL(activated()), this, SLOT(quitKerry())); + + QTimer::singleShot( 1000, this, SLOT(checkBeagleBuildIndex())); +} + +void KerryApplication::search(const QString& text) +{ + if (hitListWindow) + hitListWindow->search(text); +} + +void KerryApplication::aboutToShowSysTrayMenu() +{ + KPopupMenu *menu = sysTrayIcon->contextMenu(); + + for (int id=HISTORY_ITEMS_START_ID;id<=HISTORY_ITEMS_START_ID+MAX_HISTORY_ITEMS;id++) + menu->removeItem(id); + + QStringList searches = hitListWindow->editSearch->historyItems(); + if (searches.count()==0) { + menu->insertItem(i18n(""),HISTORY_ITEMS_START_ID,1); + menu->setItemEnabled(HISTORY_ITEMS_START_ID,false); + menu->setItemEnabled(HISTORY_ITEMS_CLEAR_ID,false); + return; + } + + for (int i=0;i<(int)searches.count();i++) + menu->insertItem(searches[i],i+HISTORY_ITEMS_START_ID,i+1); + menu->setItemEnabled(HISTORY_ITEMS_CLEAR_ID,true); +} + +void KerryApplication::historySelected(int id) +{ + if (idsearch(sysTrayIcon->contextMenu()->text(id)); +} + +void KerryApplication::searchPrimarySelection() +{ + QApplication::clipboard()->setSelectionMode( true ); + QString text = QApplication::clipboard()->text(); + if (!text.isEmpty() && hitListWindow) + hitListWindow->search(text); +} + +void KerryApplication::quitKerry() +{ + int autoStart = KMessageBox::questionYesNoCancel( 0L, i18n("Should Kerry start automatically\nwhen you login?"), i18n("Automatically Start Kerry?"), i18n("&Start"), i18n("&Do Not Start") ); + + KConfig *config = KGlobal::config(); + config->setGroup("General"); + if ( autoStart == KMessageBox::Yes ) { + config->writeEntry("AutoStart", true); + } else if ( autoStart == KMessageBox::No) { + config->writeEntry("AutoStart", false); + } else // cancel chosen don't quit + return; + config->writeEntry("History",hitListWindow->editSearch->historyItems()); + config->sync(); + + if (hitListWindow) + hitListWindow->hide(); + +#ifdef KDELIBS_SUSE + KProcess *proc = new KProcess; + *proc << "beagle-shutdown"; + if (!proc->start()) + kdDebug() << "Couldn't run beagle-shutdown." << endl; +#endif + + qApp->closeAllWindows(); + qApp->quit(); +} + +void KerryApplication::clearHistory() +{ + hitListWindow->editSearch->clearHistory(); + KConfig *config = KGlobal::config(); + config->writeEntry("History",QString::null); + config->sync(); +} + +void KerryApplication::configure() +{ + KProcess proc; + proc << "kcmshell"; + proc << "kde-kcmkerry.desktop"; + proc.start(KProcess::DontCare); +} + +void KerryApplication::configChanged() +{ + KConfig *config = KGlobal::config(); + globalKeys->readSettings(config); + globalKeys->updateConnections(); +} + +void KerryApplication::checkBeagleBuildIndex() +{ + QDir dir("/tmp", ".beagleindexwapi*"); + dir.setFilter(QDir::Dirs|QDir::Hidden); + + QStringList entryList = dir.entryList(); + if (entryList.isEmpty()) + return; + + bool current_wapidir = false; + + for ( QStringList::Iterator it = entryList.begin(); it != entryList.end(); ++it ) { + if ( QFileInfo("tmp/"+(*it)).lastModified().date()==QDate::currentDate() ) { + current_wapidir=true; + break; + } + } + + QString oldMessage = I18N_NOOP("The daily running process for updating the system\nwide Beagle documentation index was detected."); + QString message; + + if (oldMessage==i18n(oldMessage.ascii())) + message = "The daily process that updates the search index for system documentation\n is running, which may make the system appear slower than usual.\n\nThis process should complete shortly."; + else + message = i18n(oldMessage.ascii()); + + if (current_wapidir) + KPassivePopup::message(KPassivePopup::Boxed, i18n("System May Be Slower Than Usual"), message, BarIcon("info"), sysTrayIcon, 0, 10000); +} + +#include "kerryapp.moc" diff --git a/kerry/src/kerryapp.h b/kerry/src/kerryapp.h new file mode 100644 index 0000000..34e021b --- /dev/null +++ b/kerry/src/kerryapp.h @@ -0,0 +1,66 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#ifndef KERRYAPP_H +#define KERRYAPP_H + +#include +#include +#include + +#define kerryApp ((KerryApplication*)qApp) +#define MAX_HISTORY_ITEMS 10 + +class kerry; +class KCmdLineArgs; +class SearchDlg; +class KHelpMenu; +class KAboutData; +class KProcess; + +class KerryApplication : public KUniqueApplication +{ + Q_OBJECT + + public: + KerryApplication(); + ~KerryApplication(); + void init(const KAboutData* about); + int newInstance(); + void search(const QString&); + + protected: + SearchDlg* hitListWindow; + KSystemTray* sysTrayIcon; + + protected slots: + void searchPrimarySelection(); + void clearHistory(); + void configure(); + void configChanged(); + void aboutToShowSysTrayMenu(); + void historySelected(int); + void quitKerry(); + void checkBeagleBuildIndex(); + + private: + KGlobalAccel *globalKeys; +}; + +#endif // KERRYAPP_H diff --git a/kerry/src/kerrylabel.cpp b/kerry/src/kerrylabel.cpp new file mode 100644 index 0000000..9953a95 --- /dev/null +++ b/kerry/src/kerrylabel.cpp @@ -0,0 +1,107 @@ +/* This file is part of the KDE libraries + Copyright (C) 1998 Kurt Granroth + Copyright (C) 2000 Peter Putzer + Copyright (C) 2005 Jaroslaw Staniek + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License version 2 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "kerrylabel.h" +#include "hitwidget.h" + +#include +#include +#include +#include +#include +#include +#include + +KerryLabel::KerryLabel (QWidget* parent, const char* name) + : KURLLabel (parent, name) +{ + dragInfo.state = diNone; +} + +void KerryLabel::mousePressEvent(QMouseEvent* ev) +{ + if (!url().isEmpty()) + { + if ( ev->button() == LeftButton) + { + dragInfo.state = diPending; + dragInfo.start = ev->pos(); + } + else if (ev->button() == RightButton) + { + ev->accept(); + popupMenu( mapToGlobal(ev->pos()) ); + return; + } + } + KURLLabel::mousePressEvent(ev); +} + +void KerryLabel::mouseMoveEvent(QMouseEvent* ev) +{ + if (dragInfo.state == diPending) { + int distance = KGlobalSettings::dndEventDelay(); + if ( ev->x() > dragInfo.start.x() + distance || ev->x() < dragInfo.start.x() - distance || + ev->y() > dragInfo.start.y() + distance || ev->y() < dragInfo.start.y() - distance) { + doDrag(); + } + return; + } + KURLLabel::mouseMoveEvent(ev); +} + +void KerryLabel::mouseReleaseEvent(QMouseEvent* ev) +{ + if ( ev->button() == LeftButton) + { + dragInfo.state = diNone; + } + KURLLabel::mouseReleaseEvent(ev); +} + +void KerryLabel::doDrag() +{ + dragInfo.state = diDragging; + const KURL kuri = KURL(url()); + dragInfo.dragObject = new QTextDrag("'"+kuri.url().replace("file://",QString::null)+"'", this); + dragInfo.dragObject->dragCopy(); + // Don't delete the QTextDrag object. Qt will delete it when it's done with it. +} + +void KerryLabel::popupMenu( const QPoint &_global ) +{ + KFileItem item( ((HitWidget*)parent())->uri(),((HitWidget*)parent())->mimetype(),KFileItem::Unknown); + KFileItemList _items; + _items.append( &item ); + + const KURL kurl(url()); + KActionCollection act(this); + + KonqPopupMenu * popupMenu = new KonqPopupMenu( KonqBookmarkManager::self(), _items, + kurl, act, (KNewMenu*)NULL, this, + item.isLocalFile() ? KonqPopupMenu::ShowProperties : KonqPopupMenu::NoFlags, + KParts::BrowserExtension::DefaultPopupItems ); + + if (popupMenu->count()) + popupMenu->exec( _global ); + delete popupMenu; +} + +#include "kerrylabel.moc" diff --git a/kerry/src/kerrylabel.h b/kerry/src/kerrylabel.h new file mode 100644 index 0000000..f0722ee --- /dev/null +++ b/kerry/src/kerrylabel.h @@ -0,0 +1,57 @@ +/* This file is part of the KDE libraries + Copyright (C) 1998 Kurt Granroth + Copyright (C) 2000 Peter Putzer + Copyright (C) 2005 Jaroslaw Staniek + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public + License version 2 as published by the Free Software Foundation. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public License + along with this library; see the file COPYING.LIB. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef KERRYLABEL_H +#define KERRYLABEL_H + +#include +#include + +class QTextDrag; + +class KerryLabel : public KURLLabel +{ + Q_OBJECT + + public: + KerryLabel (QWidget* parent = 0L, const char* name = 0L); + + protected: + void mousePressEvent( QMouseEvent* ); + void mouseReleaseEvent( QMouseEvent* ); + void mouseMoveEvent( QMouseEvent* ); + void doDrag(); + + protected slots: + void popupMenu( const QPoint &_global ); + + private: + KURL::List kurllist; + + enum DragState { diNone, diPending, diDragging }; + + struct _dragInfo { + DragState state; + QPoint start; + QTextDrag *dragObject; + } dragInfo; +}; + +#endif // KERRYLABEL_H diff --git a/kerry/src/kwidgetlistbox.cpp b/kerry/src/kwidgetlistbox.cpp new file mode 100644 index 0000000..7940899 --- /dev/null +++ b/kerry/src/kwidgetlistbox.cpp @@ -0,0 +1,223 @@ +/*************************************************************************** + * Copyright (C) 2005 Petri Damst� * + * * + * 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 * + ***************************************************************************/ + +#include "kwidgetlistbox.h" +#include +#include +#include + +KWidgetListbox::KWidgetListbox(QWidget *parent, const char *name) + : QTable(parent, name) +{ + setNumRows(0); + setNumCols(1); + setColumnStretchable(0, true); + setLeftMargin(0); + setTopMargin(0); + horizontalHeader()->hide(); + verticalHeader()->hide(); + setSelectionMode(QTable::NoSelection); + setFocusStyle(QTable::FollowStyle); + connect(this, SIGNAL(currentChanged(int, int)), + this, SLOT(selectionChanged(int, int))); + setHScrollBarMode(QScrollView::AlwaysOff); + setVScrollBarMode(QScrollView::Auto); +} + +KWidgetListbox::~KWidgetListbox() +{ + clear(); +} + +void KWidgetListbox::clear() +{ + for(int i = 0; i < numRows(); ++i) + clearCellWidget(i, 0); + setNumRows(0); +} + +int KWidgetListbox::insertItem(QWidget* item, int index) +{ + int row; + + if(index == -1 || numRows()==0) + { + row = numRows(); + setNumRows(row + 1); + } + else { + row = index; + insertRows(row); + } + + item->setMinimumWidth( columnWidth(0) ); + item->adjustSize(); + HitWidget* hit = dynamic_cast(item); + if (hit && hit->isCollapsed()) + setRowHeight(row, hit->collapsedHeight()); + else + setRowHeight(row, item->height()); + setCellWidget(row, 0, item); + setItemColors(row, even(row)); + return row; +} + +void KWidgetListbox::adjustSize(QWidget* item) +{ + item->setMinimumWidth( columnWidth(0) ); + item->adjustSize(); + HitWidget* hit = (HitWidget*)item; + if (hit->isCollapsed()) + setRowHeight(index(item), 28); + else + setRowHeight(index(item), item->height()); +} + +void KWidgetListbox::setSelected(QWidget* item) +{ + setSelected(index(item)); +} + +void KWidgetListbox::selectionChanged(int row, int col) +{ + ensureCellVisible(row, col); + updateColors(); + emit selected(row); +} + +void KWidgetListbox::removeItem(QWidget* item) +{ + removeItem(index(item)); +} + +void KWidgetListbox::removeItem(int index) +{ + removeRow(index); + updateColors(); +} + +void KWidgetListbox::setSelected(int index) +{ + setCurrentCell(index, 0); +} + +int KWidgetListbox::selected() const +{ + return currentRow(); +} + +QWidget* KWidgetListbox::selectedItem() const +{ + return item(selected()); +} + +QWidget* KWidgetListbox::item(int index) const +{ + return cellWidget(index, 0); +} + +int KWidgetListbox::index(QWidget* itm) const +{ + for(int i = 0; i < numRows(); ++i) + if(item(i) == itm) + return i; + return -1; +} + +bool KWidgetListbox::even(int index) +{ + int v = 0; + for(int i = 0; i < numRows(); ++i) + { + if(index == i) + break; + if(!isRowHidden(i)) + ++v; + } + return (v%2 == 0); +} + +void KWidgetListbox::updateColors() +{ + int v = 0; + for(int i = 0; i < numRows(); ++i) + { + if(!isRowHidden(i)) + { + setItemColors(i, (v%2 == 0)); + ++v; + } + } +} + +void KWidgetListbox::setItemColors(int index, bool even) +{ + QWidget* itm = item(index); + + if (!itm) + return; + + if(index == selected()) + { + itm->setPaletteBackgroundColor(KGlobalSettings::highlightColor()); + itm->setPaletteForegroundColor(KGlobalSettings::highlightedTextColor()); + } + else if(even) + { + itm->setPaletteBackgroundColor(KGlobalSettings::baseColor()); + itm->setPaletteForegroundColor(KGlobalSettings::textColor()); + } + else + { + itm->setPaletteBackgroundColor( + KGlobalSettings::alternateBackgroundColor()); + itm->setPaletteForegroundColor(KGlobalSettings::textColor()); + } +} + +void KWidgetListbox::showItems(show_callback func, void* data) +{ + for(int i = 0; i < numRows(); ++i) + { + if(func == 0) + showRow(i); + else + { + if(func(i, item(i), data)) + showRow(i); + else + hideRow(i); + } + } + updateColors(); +} + +void KWidgetListbox::showEvent(QShowEvent*) +{ + //kdDebug() << k_funcinfo << endl; + repaintContents(false); +} + +void KWidgetListbox::paintCell(QPainter*, int, int, const QRect&, + bool, const QColorGroup&) +{ + //kdDebug() << k_funcinfo << endl; +} + +#include "kwidgetlistbox.moc" diff --git a/kerry/src/kwidgetlistbox.h b/kerry/src/kwidgetlistbox.h new file mode 100644 index 0000000..eae1fb7 --- /dev/null +++ b/kerry/src/kwidgetlistbox.h @@ -0,0 +1,65 @@ +/*************************************************************************** + * Copyright (C) 2005 Petri Damst�n * + * * + * 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 * + ***************************************************************************/ + +#ifndef KWIDGETLISTBOX_H +#define KWIDGETLISTBOX_H + +#include + +typedef bool (*show_callback) (int index, QWidget* widget, void* data); + +class KWidgetListbox : public QTable +{ + Q_OBJECT + + public: + KWidgetListbox(QWidget *parent = 0, const char *name = 0); + ~KWidgetListbox(); + + int insertItem(QWidget* item, int index = -1); + void setSelected(QWidget* item); + void setSelected(int index); + void removeItem(QWidget* item); + void removeItem(int index); + void clear(); + int selected() const; + QWidget* selectedItem() const; + QWidget* item(int index) const; + int index(QWidget* itm) const; + uint count() const { return numRows(); }; + + void showItems(show_callback func = 0, void* data = 0); + + void paintCell(QPainter* p, int row, int col, const QRect& cr, + bool selected, const QColorGroup& cg); + void adjustSize(QWidget* item); + protected: + void setItemColors(int index, bool even); + void updateColors(); + bool even(int index); + virtual void showEvent(QShowEvent* e); + + protected slots: + void selectionChanged(int row, int col); + + signals: + void selected(int index); +}; + +#endif diff --git a/kerry/src/main.cpp b/kerry/src/main.cpp new file mode 100644 index 0000000..bd0da28 --- /dev/null +++ b/kerry/src/main.cpp @@ -0,0 +1,104 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static const char *description = + I18N_NOOP("KDE Frontend to Beagle"); + +static const char *version = "0.2.1"; + +static KCmdLineOptions options[] = +{ + { "+term", I18N_NOOP("A term to search"), 0 }, + { "show-searchdialog", I18N_NOOP( "Show search dialog on startup" ), 0}, + { 0, 0, 0 } +}; + +bool KSessionManaged::saveState(QSessionManager&) +{ +// KConfig* config = kapp->sessionConfig(); +// config->setGroup("General"); +// config->writeEntry("LastSearches", "foobar"); + + return true; +} + +bool KSessionManaged::commitData(QSessionManager&) +{ + return true; +} + +extern "C" KDE_EXPORT int kdemain(int argc, char **argv) +{ + if (!getuid()) { + QFile file( "/root/.beagle/config/daemon.xml" ); + bool fail = true; + if ( file.open( IO_ReadOnly ) ) { + QDomDocument doc( "mydocument" ); + if ( doc.setContent( &file ) ) { + QDomElement docElem = doc.documentElement(); + QDomNode n = docElem.firstChild(); + while( !n.isNull() ) { + QDomElement e = n.toElement(); + if( !e.isNull() && e.tagName()=="AllowRoot") + fail = e.text()!="true"; + n = n.nextSibling(); + } + } + file.close(); + } + if (fail) { + printf("beagled will not run as root. Kerry will quit now because of that.\n"); + return 1; + } + } + + KAboutData about("kerry", I18N_NOOP("Kerry Beagle Search"), + version, description, + KAboutData::License_GPL, + "(c) 2005,2006 Novell, Inc.", + 0, "http://opensuse.org/kerry"); + about.addAuthor("Stephan Binner", 0, "binner@kde.org"); + KCmdLineArgs::init(argc, argv, &about); + KCmdLineArgs::addCmdLineOptions(options); + KUniqueApplication::addCmdLineOptions(); + + KSessionManaged ksm; + + KerryApplication app; + KGlobal::locale()->insertCatalogue("libkonq"); + + return app.exec(); +} diff --git a/kerry/src/query.cpp b/kerry/src/query.cpp new file mode 100644 index 0000000..df4388a --- /dev/null +++ b/kerry/src/query.cpp @@ -0,0 +1,136 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#include "query.h" +#include + +Query::Query() +{ + alternatives.setAutoDelete(true); +} + +void Query::clear() +{ + query_term = QString::null; + alternatives.clear(); +} + +void Query::set(const QString &term) +{ + query_term = term; + alternatives.clear(); + + current_alternative = new Alternative; + current_part = QString::null; + within_quotes = false; + exclude_part = false; + + for (uint index=0;indexexcludes+=current_part.lower(); + else + current_alternative->includes+=current_part.lower(); + } + within_quotes = false; + exclude_part = false; + current_part = QString::null; +} + +QString Query::get() const +{ + return query_term; +} + +bool Query::matches(const QString &term) +{ + QString lower_term = term.lower(); + + for (Alternative* alt=alternatives.first(); alt; alt=alternatives.next()) { + if (!alt->includes.count()) + continue; + + bool next_alternative = false; + + for ( QStringList::ConstIterator it = alt->excludes.begin(); it != alt->excludes.end(); ++it ) { + if ( lower_term.find(*it)!=-1 ) { + next_alternative = true; + continue; + } + } + if (next_alternative) + continue; + + for ( QStringList::ConstIterator it = alt->includes.begin(); it != alt->includes.end(); ++it ) { + if ( lower_term.find(*it)==-1 ) { + next_alternative = true; + continue; + } + } + if (next_alternative) + continue; + +//kdDebug() << "Found hit in '" << term << "'" << endl; + return true; + } + + return false; +} diff --git a/kerry/src/query.h b/kerry/src/query.h new file mode 100644 index 0000000..6e47120 --- /dev/null +++ b/kerry/src/query.h @@ -0,0 +1,55 @@ +/***************************************************************** + + Copyright (c) 2006 Stephan Binner + + 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; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. + +******************************************************************/ + +#ifndef QUERY_H +#define QUERY_H + +#include +#include + +class Alternative +{ +public: + QStringList includes; + QStringList excludes; +}; + +class Query +{ + public: + Query(); + void clear(); + void set(const QString &); + QString get() const; + bool matches(const QString &); + + private: + QString query_term; + QPtrList alternatives; + + void add_term(); + QString current_part; + Alternative *current_alternative; + bool within_quotes; + bool exclude_part; +}; + +#endif diff --git a/kerry/src/search-running.mng b/kerry/src/search-running.mng new file mode 100644 index 0000000000000000000000000000000000000000..9f477c9c360ce51c4475d13278771b03cd40577a GIT binary patch literal 11888 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 w>7%@b` +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +SearchDlg::SearchDlg(QWidget *parent, const char *name) + : DCOPObject("search"), HitsLayout(parent, name) +{ +#define switchLabelCount 19 +static QLabel* switchLabel[switchLabelCount] = {showEverything, showApplications, showContacts, showDocuments, + showConversations, showImages, showMedia, showWebPages, showFilePathName, sortByType, sortByDate, sortByName, sortByRelevance, showAnyDate, showToday, showSinceYesterday, showThisWeek, + showThisMonth, showThisYear}; + + g_type_init(); + beagle_search = NULL; + editSearch->setMaxCount(MAX_HISTORY_ITEMS); + editSearch->setDuplicatesEnabled(false); + +#if KDE_IS_VERSION( 3, 5, 4 ) + KLineEdit *lineedit = new KLineEdit(editSearch); + lineedit->setClickMessage(i18n( "Applications, Contacts, Conversations, Files and more..." ) ); + editSearch->setLineEdit(lineedit); +#endif + + connect(editSearch->lineEdit(), SIGNAL(returnPressed()), SLOT(search())); + connect(editSearch->lineEdit(), SIGNAL(textChanged(const QString &)), SLOT(searchChanged(const QString &))); + showMode = Everywhere; + dateRange = AnyDate; + showBigTiles = false; + + QFont f= sortByRelevance->font(); + f.setBold(true); + QFontMetrics fm(f); + int minWidth=0; + for (int i=0; itext())); + frame3->setMinimumWidth(minWidth+25); + + showEverything->installEventFilter(this); + showApplications->installEventFilter(this); + showContacts->installEventFilter(this); + showDocuments->installEventFilter(this); + showConversations->installEventFilter(this); + showImages->installEventFilter(this); + showMedia->installEventFilter(this); + showWebPages->installEventFilter(this); + showFilePathName->installEventFilter(this); + sortByType->installEventFilter(this); + sortByDate->installEventFilter(this); + sortByName->installEventFilter(this); + sortByRelevance->installEventFilter(this); + showAnyDate->installEventFilter(this); + showToday->installEventFilter(this); + showSinceYesterday->installEventFilter(this); + showThisWeek->installEventFilter(this); + showThisMonth->installEventFilter(this); + showThisYear->installEventFilter(this); + connect(buttonFind, SIGNAL(clicked()), SLOT(search())); + connect(buttonClear, SIGNAL(clicked()), SLOT(slotButtonClear())); + connect(buttonPrevious, SIGNAL(clicked()), SLOT(slotPrevious())); + connect(buttonNext, SIGNAL(clicked()), SLOT(slotNext())); + connect(tableHits, SIGNAL(contextMenuRequested (int, int, const QPoint &)), SLOT(slotContextMenu(int, int, const QPoint &))); + buttonFind->setIconSet( BarIconSet( "key_enter", 22 ) ); + buttonConfigure->setGuiItem(KStdGuiItem::configure()); + connect(buttonConfigure, SIGNAL(clicked()), SIGNAL(configure())); + setMouseTracking(true); + results.setAutoDelete(true); + results.clear(); + displayed_results.clear(); + displayAmount = 5; + displayOffset = 0; + labelStatus->setAlignment(Qt::SingleLine); + pPreviewJob = 0; + pPreviewMimeTypes = 0; + previewItems.clear(); + previewItems.setAutoDelete(true); + pending_showQuickTips=true; + updateStatus(); + defaultSortOrder = Modified; + currentSortOrder = defaultSortOrder; + kapp->dcopClient()->setDefaultObject( objId() ); + beagleJustStarted = false; + m_searchPixmap->setPixmap( BarIcon( "find", 32 ) ); + + QTextCodec::setCodecForCStrings(QTextCodec::codecForName( "utf8" )); + encodingRegexp = QRegExp("%[\\dA-F][\\dA-F]"); + + bookmarkManager = 0; + m_addressBook = 0; + still_searching = false; +} + +SearchDlg::~SearchDlg() +{ +} + +void SearchDlg::showQuickTips() +{ + tableHits->clear(); + + HitWidget* item = new HitWidget(QString::null, QString::null); + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("Quick Tips")); + item->insertHeaderWidget(0,headerLabel); + + item->setIcon("messagebox_info"); + item->setDescriptionText(""+i18n("- You can use upper and lower case; search is case-insensitive.
" + "- To search for optional terms, use OR. ex: George OR Ringo
" + "- To exclude search terms, use the minus symbol in front, such as -cats
" + "- When searching for a phrase, add quotes. ex: \"There be dragons\"
" + "- Add ext:type to specify a file extension, ex: ext:txt or ext: for none")+"
"); + tableHits->insertItem(item); + + item = new HitWidget(QString::null, QString::null); + headerLabel = new QLabel(item); + headerLabel->setText(i18n("Configuration")); + item->insertHeaderWidget(0,headerLabel); + + item->setIcon("package_settings"); + item->setDescriptionText(""+i18n("- Choose what folders and resources shall be indexed - or not.
" + "- Change the sort order and the number of shown results.
" + "- Define your own shortcuts to invoke the search dialog.")+"
"); + KURLLabel *buttonStart = new KURLLabel(item); + buttonStart->setPixmap(SmallIcon("exec")); + item->insertHitWidget(0,buttonStart); + connect(buttonStart, SIGNAL(leftClickedURL()), SIGNAL(configure())); + + buttonStart = new KURLLabel(item); + buttonStart->setText(i18n("Open configuration dialog")); + item->insertHitWidget(1,buttonStart); + connect(buttonStart, SIGNAL(leftClickedURL()), SIGNAL(configure())); + + tableHits->insertItem(item); + + labelStatus->setText(""); +} + +void SearchDlg::search(const QString & search) +{ + SearchDlg::search(search, "everything"); +} + +void SearchDlg::search(const QString & search, const QString &scope) +{ +#define showSwitchesCount 9 +static QLabel* showSwitches[showSwitchesCount] = {showEverything, showApplications, showContacts, showDocuments, + showConversations, showImages, showMedia, showWebPages, showFilePathName}; +static QString nameSwitches[showSwitchesCount] = {"everything", "applications", "contacts", "documents", + "conversations", "images", "media", "webpages", "path"}; + + pending_showQuickTips=false; + showSearchDialog(); + + QLabel* newShowLabel = showEverything; + ScopeType newShowMode = Everywhere; + for (int i=0; ifont(); + f.setBold(false); + showSwitches[showMode]->setFont(f); + showMode = newShowMode; + f.setBold(true); + newShowLabel->setFont(f); + } + editSearch->lineEdit()->setText(search); + this->search(); +} + +void SearchDlg::searchChanged(const QString & search) +{ + QString _search = search; + buttonFind->setEnabled(_search.replace("*", QString::null).length()>2); + if (!search.isEmpty() && displayed_results.count()==0 && tableHits->count()==1) + tableHits->clear(); + if (search.isEmpty() && displayed_results.count()==0 && tableHits->count()==0) + showQuickTips(); +} + +void SearchDlg::setDisplayAmount(int amount) +{ + if (amount<1 || displayAmount==amount) + return; + + buttonPrevious->setShown(amount>1); + buttonNext->setShown(amount>1); + + displayAmount = amount; + displayOffset = 0; + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + updateStatus(); +} + +void SearchDlg::setSortOrder(int order) +{ +static QLabel* sortSwitches[4] = {sortByType, sortByDate, sortByName, sortByRelevance}; + + defaultSortOrder = order; + + if (currentSortOrder==order) + return; + + QFont f= sortSwitches[currentSortOrder]->font(); + f.setBold(false); + sortSwitches[currentSortOrder]->setFont(f); + f.setBold(true); + sortSwitches[order]->setFont(f); + + currentSortOrder = order; + if (displayed_results.count()) + sortFilterResults(); +} + +void SearchDlg::slotButtonClear() +{ + editSearch->clear(); + slotClear(); + showQuickTips(); + currentSortOrder = defaultSortOrder; +} + +void SearchDlg::slotClear() +{ + if (beagle_search != NULL) { + kdDebug () << "Previous client w/id " << beagle_search->id << " running ... stopping it." << endl; + beagle_search->stopClient (); + } + + displayOffset = 0; + stopPreview(); + tableHits->clear(); + displayed_results.clear(); + results.clear(); + updateStatus(); +} + +void SearchDlg::slotPrevious() +{ + if (displayOffset==0) + return; + + displayOffset-=displayAmount; + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + updateStatus(); +} + +void SearchDlg::slotNext() +{ + if (displayAmount==1 || displayOffset+displayAmount>=(int)displayed_results.count()) + return; + + displayOffset+=displayAmount; + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + updateStatus(); +} + +void SearchDlg::sortFilterResults() +{ + displayOffset = 0; + stopPreview(); + tableHits->clear(); + displayed_results.clear(); + displayResults(results); + updateStatus(); +} + +void SearchDlg::fillTableHits() +{ + stopPreview(); + tableHits->clear(); + previewItems.clear(); + if (displayAmount==1) { + for(int i = 0; i < (int)displayed_results.count(); ++i) { + insertResult(displayed_results.at(i),i); + } + } + else { + if (displayOffset+displayAmount<=(int)displayed_results.count()) { + for(int i = displayOffset; i < displayOffset+displayAmount; ++i) { + insertResult(displayed_results.at(i),i-displayOffset); + } + } + else + for(uint i = displayOffset; i < (displayed_results.count() % displayAmount)+displayOffset; ++i) { + insertResult(displayed_results.at(i),i-displayOffset); + } + } + if (previewItems.count()) { + startPreview(previewItems); + } +} + +void SearchDlg::updateStatus() +{ + buttonPrevious->setEnabled(displayOffset>0); + buttonNext->setEnabled(displayOffset+displayAmount<(int)displayed_results.count()); + labelStatus->setAlignment(Qt::SingleLine); + const int count = displayed_results.count(); + QString text; + if (displayAmount==1) + text=i18n("%1 results found.").arg(displayed_results.count()); + else if (count==0) + text=i18n("No results.").replace("",QString::null).replace("",QString::null); + else if (displayOffset==0) + text=i18n("Best %1 results of %2 shown.").arg(tableHits->count()).arg(displayed_results.count()); + else + text=i18n("Results %1 through %2 of %3 are shown.").arg(displayOffset+1).arg(displayOffset+tableHits->count()).arg(displayed_results.count()); + +#if 0 + if (still_searching) + text=text+" "+i18n("(still searching)")+""; +#endif + + labelStatus->setText(text); +} + +void SearchDlg::search() +{ + current_query.set(editSearch->lineEdit()->text()); + if (current_query.get().replace("*", QString::null).length()<3) + return; + + editSearch->addToHistory(current_query.get()); + + if (!beagle_util_daemon_is_running()) { + tableHits->clear(); + HitWidget* item = new HitWidget(QString::null, QString::null); + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("The query for \"%1\" failed.").arg(current_query.get())); + item->insertHeaderWidget(0,headerLabel); + + item->setIcon("messagebox_critical"); + item->setDescriptionText(""+i18n("The likely cause is that the Beagle daemon is not running.")+""); + + cb_beagleStart = new QCheckBox(i18n("Automatically start Beagle daemon at login"),item); + item->insertTextWidget(1,cb_beagleStart); + + KURLLabel *buttonStart = new KURLLabel(item); + buttonStart->setPixmap(SmallIcon("exec")); + item->insertHitWidget(0,buttonStart); + connect(buttonStart, SIGNAL(leftClickedURL()), SLOT(slotStartBeagle())); + + buttonStart = new KURLLabel(item); + buttonStart->setText(i18n("Click to start the Beagle daemon")); + item->insertHitWidget(1,buttonStart); + connect(buttonStart, SIGNAL(leftClickedURL()), SLOT(slotStartBeagle())); + + tableHits->insertItem(item); + labelStatus->setText(""); + return; + } + + slotClear(); + labelStatus->setText(i18n("Searching...")); + + // Beagle search + if (beagle_search != NULL) { + kdDebug () << "Previous client w/id " << beagle_search->id << " still running ... ignoring it." << endl; + beagle_search->stopClient (); + } + + current_beagle_client_id = KApplication::random (); + kdDebug () << "Creating client with id:" << current_beagle_client_id << endl; + + m_searchPixmap->setMovie(QMovie(locate( "appdata", "search-running.mng" ))); + + new_results.clear(); + + kdDebug() << "searchProgramList" << endl; + searchProgramList(QString::null); + + kdDebug() << "searchBookmars" << endl; + if (!bookmarkManager) + bookmarkManager = KBookmarkManager::userBookmarksManager(); + searchBookmarks(bookmarkManager->root()); + + kdDebug() << "searchAddressBook" << endl; + searchAddressbook(); + + displayResults(new_results); + + kdDebug() << "starting BeagleSearch" << endl; + beagle_search = new BeagleSearch(current_beagle_client_id, this, current_query.get()); + beagle_search->start(); + still_searching = true; +} + +QString SearchDlg::takeProperty( const QString& property, QStringList& propertyList ) +{ + QString ret = QString::null; + BeagleSearch::PropertyList::iterator it; + for ( it = propertyList.begin(); it != propertyList.end(); ++it ) { + const QString search = property+'='; + if ((*it).startsWith(search)) { + ret = (*it).remove(search); + propertyList.erase(it); + break; + } + } + return ret; +} + +QDateTime SearchDlg::datetimeFromString( const QString& s) +{ + int year( s.mid( 0, 4 ).toInt() ); + int month( s.mid( 4, 2 ).toInt() ); + int day( s.mid( 6, 2 ).toInt() ); + int hour( s.mid( 8, 2 ).toInt() ); + int min( s.mid( 10, 2 ).toInt() ); + int sec( s.mid( 12, 2 ).toInt() ); + return QDateTime(QDate(year,month,day),QTime(hour,min,sec)); +} + +void SearchDlg::slotCleanClientList () +{ + toclean_list_mutex.lock (); + BeagleSearch *old_client = toclean_client_list.take (0); + if (old_client != NULL) { // failsafe + kdDebug () << "Cleanup old client " << old_client->id << endl; + delete old_client; + } + toclean_list_mutex.unlock (); +} + +void SearchDlg::customEvent (QCustomEvent *e) +{ + if (e->type () == RESULTFOUND) { + BeagleSearch::BeagleResultList* items = (BeagleSearch::BeagleResultList*) e->data(); + if (items->count() == 0 || current_beagle_client_id != items->first()->client_id) { + kdDebug () << "Stale result" << endl; + delete items; + } else { + kdDebug () << "Good results ...total=" << items->count() << endl; + searchHasOutput(*items); + } + } else if (e->type () == RESULTGONE) { + BeagleSearch::BeagleVanishedURIList* items = (BeagleSearch::BeagleVanishedURIList*) e->data(); + if (items->list.count() == 0 || current_beagle_client_id != items->client_id) { + kdDebug () << "Stale leaving from " << items->client_id << endl; + delete items; + } else { + kdDebug () << "Good leavings ...total=" << items->list.count() << endl; + searchLostOutput(items->list); + } + } else if (e->type () == SEARCHOVER) { + BeagleSearch *client = (BeagleSearch *) e->data (); + if (client == NULL) { + kdDebug () << "Query finished but client is already deleted" << endl; + searchFinished(); + return; + } +// kdDebug () << "Query finished for id=" << client->id << endl; + if (current_beagle_client_id == client->id) { + searchFinished(); + } + } else if (e->type () == KILLME) { + BeagleSearch *client = (BeagleSearch *) e->data (); + if (client==beagle_search) + beagle_search = NULL; + + if (client->finished ()) + delete client; + else { + // add client to cleanup list + toclean_list_mutex.lock (); + toclean_client_list.append (client); + kdDebug () << "Scheduling client to be deleted in 500ms" << endl; + toclean_list_mutex.unlock (); + QTimer::singleShot (500, this, SLOT (slotCleanClientList ())); + } + } +} + +void SearchDlg::insertResult(BeagleSearch::beagle_result_struct *result,int index) +{ + KURL url(*(result->uri)); + + HitWidget* item = new HitWidget(*(result->uri),*(result->mime_type),tableHits); + item->setCollapsible(result); + item->setCollapsed(!result->show_expanded); + connect(item, SIGNAL(uncollapsed(HitWidget*)), SLOT(itemUncollapsed(HitWidget*))); + + item->icon->setURL(*(result->uri)); + connect(item->icon, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + KURLLabel *buttonGo = new KerryLabel(item); + buttonGo->setPixmap(SmallIcon( *(result->mime_type)=="application/x-desktop" ? "exec" : "fileopen") ); + buttonGo->setURL(*(result->uri)); + item->insertHitWidget(0,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + buttonGo = new KerryLabel(item); + buttonGo->setText( *(result->mime_type)=="application/x-desktop" ? i18n("Run") : i18n("Open") ); + buttonGo->setURL(*(result->uri)); + item->insertHitWidget(1,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + if (result->tilegroup == BeagleSearch::Website) { + item->setIcon("network"); + + QString description = ""; + if (result->hit_type!="Google") { + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + if (datetime.date().year()>1970) + description = description + i18n("Last viewed: %1").arg(KGlobal::locale()->formatDateTime(datetime,false))+"
"; + } + + item->setDescriptionText(description +i18n("URL:")+" "+*(result->uri)+"
"); + + if (result->snippet) + item->setPropertiesText(""+*(result->snippet)+""); + + KerryLabel *headerFileLabel = new KerryLabel(item); + QStringList _properties(result->properties); + QString title = takeProperty("dc:title",_properties); + if (title.isEmpty()) + title = takeProperty("Title",_properties); + + headerFileLabel->setText(title.isEmpty() ? i18n("Untitled Page") : title); + headerFileLabel->setAlignment(headerFileLabel->alignment() | Qt::SingleLine); + headerFileLabel->setURL(*(result->uri)); + item->insertHeaderWidget(0,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if (result->tilegroup == BeagleSearch::Feed) { + item->setIcon("network"); + + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + item->setDescriptionText(""+ i18n("Published: %1").arg(KGlobal::locale()->formatDateTime(datetime,false))+"
"); + + if (result->snippet) + item->setPropertiesText(""+*(result->snippet)+""); + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("Weblog:")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(0,headerLabel); + + QStringList _properties(result->properties); + QString title = takeProperty("dc:title",_properties); + QString identifier = takeProperty("dc:identifier", _properties); + item->setUri(identifier); + buttonGo->setURL(identifier); + + KerryLabel *headerFileLabel = new KerryLabel(item); + headerFileLabel->setText(title.isEmpty() ? i18n("Untitled Entry") : title); + headerFileLabel->setAlignment(headerFileLabel->alignment() | Qt::SingleLine); + headerFileLabel->setURL(identifier); + item->insertHeaderWidget(1,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if ((*(result->uri)).startsWith("knotes:/")) { + item->setIcon("knotes"); + + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + item->setDescriptionText(""+ i18n("Last modified: %1").arg(KGlobal::locale()->formatDateTime(datetime,false))+"
"); + + if (result->snippet) + item->setPropertiesText(""+*(result->snippet)+""); + + QStringList _properties(result->properties); + QString title = takeProperty("dc:title",_properties); + + KerryLabel *headerNameLabel = new KerryLabel(item); + headerNameLabel->setText(title.isEmpty() ? i18n("Untitled") : title); + headerNameLabel->setURL(item->uri()); + item->insertHeaderWidget(0,headerNameLabel); + connect(headerNameLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if (result->tilegroup == BeagleSearch::Note) { + item->setIcon("contents2"); + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + item->setDescriptionText(""+ i18n("Last modified: %1").arg(KGlobal::locale()->formatDateTime(datetime,false))+"
"); + + + if (result->snippet) + item->setPropertiesText(""+*(result->snippet)+""); + + QStringList _properties(result->properties); + QString title = takeProperty("dc:title",_properties); + + KerryLabel *headerNoteLabel = new KerryLabel(item); + headerNoteLabel->setText(title.isEmpty() ? i18n("Untitled Entry") : title); + headerNoteLabel->setAlignment(headerNoteLabel->alignment() | Qt::SingleLine); + headerNoteLabel->setURL(item->uri()); + item->insertHeaderWidget(0,headerNoteLabel); + connect(headerNoteLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if ((*(result->uri)).startsWith("calendar:/")) { + item->setIcon("ximian-evolution-calendar"); + + QStringList _properties(result->properties); + QString summary = takeProperty("fixme:summary",_properties); + + QString properties; + QDateTime datetime; + datetime = datetimeFromString(takeProperty("fixme:starttime",_properties)); + properties = properties + i18n("Start time: %1").arg(KGlobal::locale()->formatDateTime(datetime,false)) + "
"; + datetime = datetimeFromString(takeProperty("fixme:endtime",_properties)); + properties = properties + i18n("End time: %1").arg(KGlobal::locale()->formatDateTime(datetime,false)) + "
"; + + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + properties=properties+(*it); + + item->setDescriptionText(""+properties+""); + + KerryLabel *headerSummaryLabel = new KerryLabel(item); + headerSummaryLabel->setText(summary.isEmpty() ? i18n("No Summary Specified") : summary); + headerSummaryLabel->setURL(item->uri()); + item->insertHeaderWidget(0,headerSummaryLabel); + connect(headerSummaryLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotOpenEvolution(const QString&))); + } + else if ((*(result->uri)).startsWith("contacts:/")) { + item->setIcon("ximian-evolution-addressbook"); + + QStringList _properties(result->properties); + QString name = takeProperty("fixme:Name",_properties); + QString email = takeProperty("fixme:Email1",_properties); + + QString properties; + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + properties=properties+(*it); + + if (!properties.isEmpty()) + item->setDescriptionText(""+properties+""); + + KerryLabel *headerNameLabel = new KerryLabel(item); + headerNameLabel->setText(name.isEmpty() ? i18n("No Name Known") : name); + headerNameLabel->setURL(item->uri()); + item->insertHeaderWidget(0,headerNameLabel); + connect(headerNameLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotOpenEvolution(const QString&))); + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n(",")); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerEmailLabel = new KerryLabel(item); + headerEmailLabel->setText(email); + headerEmailLabel->setURL(email); + item->insertHeaderWidget(2,headerEmailLabel); + connect(headerEmailLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotMailTo(const QString&))); + } + else if ((*(result->uri)).startsWith("kabc:/")) { + item->setIcon("kaddressbook"); + + QStringList _properties(result->properties); + QString name = takeProperty("vCard:FN",_properties); + QString email = takeProperty("vCard:EMAIL",_properties); + + QString properties; + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + properties=properties+(*it); + + if (!m_addressBook) + m_addressBook = KABC::StdAddressBook::self( false ); + + KABC::Addressee addresseee = m_addressBook->findByUid( item->uri().mid(8,10) ); + QString number; + + number = addresseee.phoneNumber(KABC::PhoneNumber::Work).number(); + if (!number.isEmpty()) + properties=properties+i18n("Business phone: %1").arg(number)+"
"; + + number = addresseee.phoneNumber(KABC::PhoneNumber::Cell).number(); + if (!number.isEmpty()) + properties=properties+i18n("Mobile phone: %1").arg(number)+"
"; + + number = addresseee.phoneNumber(KABC::PhoneNumber::Home).number(); + if (!number.isEmpty()) + properties=properties+i18n("Home phone: %1").arg(number)+"
"; + + if (!properties.isEmpty()) + item->setDescriptionText(""+properties+""); + + KerryLabel *headerNameLabel = new KerryLabel(item); + headerNameLabel->setText(name.isEmpty() ? i18n("No Name Known") : name); + headerNameLabel->setURL(item->uri()); + item->insertHeaderWidget(0,headerNameLabel); + connect(headerNameLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + if (!email.isEmpty()) { + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n(",")); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerEmailLabel = new KerryLabel(item); + headerEmailLabel->setText(email); + headerEmailLabel->setURL(email); + item->insertHeaderWidget(2,headerEmailLabel); + connect(headerEmailLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotMailTo(const QString&))); + } + } + else if (*(result->mime_type)=="message/rfc822" || (*(result->uri)).startsWith("email:/") ) { + item->setIcon("mail_generic"); + + QStringList _properties(result->properties); + QString subject = takeProperty("dc:title",_properties); + QString from = takeProperty("fixme:from",_properties); + QString received = takeProperty("fixme:date",_properties); + + QDateTime received_datetime; + received_datetime = datetimeFromString(received); + if (!received.isEmpty()) + item->setDescriptionText(""+i18n("Received: %1").arg(KGlobal::locale()->formatDateTime(received_datetime,false))+""); + + QString properties; + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + properties=properties+(*it); + + if (result->snippet) { + if (!properties.isEmpty()) + properties=properties+"
"; + properties=properties+*(result->snippet); + } + + if (!properties.isEmpty()) + item->setPropertiesText(""+properties+""); + + KerryLabel *headerSubjectLabel = new KerryLabel(item); + headerSubjectLabel->setText(subject.isEmpty() ? i18n("No Subject") : subject); + item->insertHeaderWidget(0,headerSubjectLabel); + headerSubjectLabel->setURL(*(result->uri)); + connect(headerSubjectLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("From")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerFromLabel = new KerryLabel(item); + headerFromLabel->setText(from.isEmpty() ? i18n("Unknown Person") : from); + headerFromLabel->setURL(from); + item->insertHeaderWidget(2,headerFromLabel); + connect(headerFromLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotMailTo(const QString&))); + } + else if (*(result->mime_type)=="application/x-desktop") { + KFileItem *fileitem=new KFileItem(*(result->uri),*(result->mime_type),KFileItem::Unknown); + item->setIcon(fileitem->iconName()); + if (!item->isCollapsed() && canPreview(fileitem)) + previewItems.append(fileitem); + else + delete fileitem; + + KDesktopFile desktopfile(url.path(),true); + if (!desktopfile.readGenericName().isNull()) { + item->setDescriptionText(""+desktopfile.readGenericName()+""); + } + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("Application:")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(0,headerLabel); + + KerryLabel *headerFileLabel = new KerryLabel(item); + QStringList _properties(result->properties); + QString title = takeProperty("fixme:Name",_properties); + headerFileLabel->setText(title.isEmpty() ? desktopfile.readName() : title); + headerFileLabel->setURL(*(result->uri)); + item->insertHeaderWidget(1,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if (*(result->mime_type)=="beagle/x-kopete-log" || *(result->mime_type)=="beagle/x-gaim-log") { + if (*(result->mime_type)=="beagle/x-kopete-log") + item->setIcon("kopete"); + else + item->setIcon("gaim"); + + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + item->setDescriptionText(""+i18n("Date: %1").arg(KGlobal::locale()->formatDateTime(datetime,false)+"")); + + if (result->snippet) + item->setPropertiesText(""+*(result->snippet)+ ""); + + KerryLabel *headerFileLabel = new KerryLabel(item); + headerFileLabel->setURL(*(result->uri)); + QStringList _properties(result->properties); + QString person = takeProperty("fixme:speakingto",_properties); + headerFileLabel->setText(i18n("Conversation With %1").arg(person.isEmpty() ? i18n("Unknown Person") : person)); + item->insertHeaderWidget(0,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + } + else if (result->tilegroup == BeagleSearch::Packages) { + QString icon; + if (*(result->mime_type)=="application/x-rpm") + icon = "rpm"; + else if (*(result->mime_type)=="application/x-deb") + icon = "deb"; + else + icon = "kuroo"; + item->setIcon(icon); + + KerryLabel *headerFileLabel = new KerryLabel(item); + headerFileLabel->setText(url.fileName()); + headerFileLabel->setTipText(url.prettyURL()); + headerFileLabel->setUseTips(); + headerFileLabel->setURL(*(result->uri)); + item->insertHeaderWidget(0,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + QStringList _properties(result->properties); + QString homepage = takeProperty("dc:source",_properties); + if (!homepage.isEmpty()) + { + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("From")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerFileLabel = new KerryLabel(item); + headerFileLabel->setText(homepage); + headerFileLabel->setAlignment(headerFileLabel->alignment() | Qt::SingleLine); + headerFileLabel->setURL(homepage); + item->insertHeaderWidget(2,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL(const QString&)), SLOT(slotOpenURL(const QString&))); + } + + item->setDescriptionText(takeProperty("dc:subject", _properties)); + + QString properties; + QString install_time_str = takeProperty("fixme:install_time", _properties); + if (!install_time_str.isEmpty()) + { + properties=properties+i18n("Installed on: %1").arg(KGlobal::locale()->formatDateTime(datetimeFromString(install_time_str),false))+"
"; + } + + QString install_size_str = takeProperty("fixme:contents_byte_count", _properties); + if (!install_size_str.isEmpty()) + { + properties=properties+i18n("Installed size: %1").arg(formatBytes(install_size_str))+"
"; + } + + QString download_size_str = takeProperty("fixme:size", _properties); + if (!download_size_str.isEmpty()) + { + properties=properties+i18n("Download size: %1").arg(formatBytes(download_size_str))+"
"; + } + + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + { + properties=properties+(*it); + } + + if (result->snippet) { + if (!properties.isEmpty()) + properties=properties+"
"; + properties=properties+*(result->snippet); + } + + if (!properties.isEmpty()) + item->setPropertiesText(""+properties+""); + + + item->insertHitSpacing(2,10); + buttonGo = new KURLLabel(item); + buttonGo->setPixmap(SmallIcon("kfm")); + item->insertHitWidget(3,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + + buttonGo = new KURLLabel(item); + buttonGo->setText(i18n("Reveal in File Manager")); + item->insertHitWidget(4,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + } + else if ((*(result->mime_type)).startsWith("audio/")) { + KFileItem *fileitem=new KFileItem(*(result->uri),*(result->mime_type),KFileItem::Unknown); + item->setIcon(fileitem->iconName()); + if (!item->isCollapsed() && canPreview(fileitem)) + previewItems.append(fileitem); + else + delete fileitem; + + QStringList _properties(result->properties); + QString title = takeProperty("fixme:title",_properties); + + KerryLabel *headerFileLabel = new KerryLabel(item); + if (title.isEmpty()) + headerFileLabel->setText(url.fileName()); + else + headerFileLabel->setText(title); + + headerFileLabel->setTipText(url.prettyURL()); + headerFileLabel->setUseTips(); + headerFileLabel->setURL(*(result->uri)); + item->insertHeaderWidget(0,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("In Folder")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerDirLabel = new KerryLabel(item); + QString directory=url.directory(); + int i = directory.findRev('/'); + if (i>0) + directory=directory.mid(i+1); + headerDirLabel->setText(directory); + headerDirLabel->setURL(url.directory()); + headerDirLabel->setTipText(url.directory()); + headerDirLabel->setUseTips(); + item->insertHeaderWidget(2,headerDirLabel); + connect(headerDirLabel, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + title = i18n("Last modified: %1").arg(KGlobal::locale()->formatDateTime(datetime,false)); + item->setDescriptionText(""+title+""); + + QString properties; + BeagleSearch::PropertyList::iterator it; + for ( it = _properties.begin(); it != _properties.end(); ++it ) + properties=properties+(*it); + + if (result->snippet) { + if (!properties.isEmpty()) + properties=properties+"
"; + properties=properties+*(result->snippet); + } + + if (!properties.isEmpty()) + item->setPropertiesText(""+properties+""); + + item->insertHitSpacing(2,10); + buttonGo = new KURLLabel(item); + buttonGo->setPixmap(SmallIcon("kfm")); + item->insertHitWidget(3,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + + buttonGo = new KURLLabel(item); + buttonGo->setText(i18n("Reveal in File Manager")); + item->insertHitWidget(4,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + } + else { + KFileItem *fileitem=new KFileItem(*(result->uri),*(result->mime_type),KFileItem::Unknown); + item->setIcon(fileitem->iconName()); + if (!item->isCollapsed() && canPreview(fileitem)) + previewItems.append(fileitem); + else + delete fileitem; + + KerryLabel *headerFileLabel = new KerryLabel(item); + headerFileLabel->setText(url.fileName()); + headerFileLabel->setTipText(url.prettyURL()); + headerFileLabel->setUseTips(); + headerFileLabel->setURL(*(result->uri)); + item->insertHeaderWidget(0,headerFileLabel); + connect(headerFileLabel, SIGNAL(leftClickedURL()), SLOT(slotOpen())); + + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("In Folder")); + headerLabel->setAlignment(headerLabel->alignment() | Qt::SingleLine); + item->insertHeaderWidget(1,headerLabel); + + KerryLabel *headerDirLabel = new KerryLabel(item); + QString directory=url.directory(); + int i = directory.findRev('/'); + if (i>0) + directory=directory.mid(i+1); + headerDirLabel->setText(directory); + headerDirLabel->setURL(url.directory()); + headerDirLabel->setTipText(url.directory()); + headerDirLabel->setUseTips(); + item->insertHeaderWidget(2,headerDirLabel); + connect(headerDirLabel, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + + + QString title; + if (*(result->mime_type)=="inode/directory") { + int count = QDir(url.path()).count() -2 ; + if (count==0) + title=i18n("Empty"); + else + title=i18n("Contains 1 item","Contains %n items",count); + } + else { + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + title = i18n("Last modified: %1").arg(KGlobal::locale()->formatDateTime(datetime,false)); + } + item->setDescriptionText(""+title+""); + + QString properties; + BeagleSearch::PropertyList::iterator it; + for ( it = result->properties.begin(); it != result->properties.end(); ++it ) + properties=properties+(*it); + + if (result->snippet) { + if (!properties.isEmpty()) + properties=properties+"
"; + properties=properties+*(result->snippet); + } + + if (!properties.isEmpty()) + item->setPropertiesText(""+properties+""); + + + item->insertHitSpacing(2,10); + buttonGo = new KURLLabel(item); + buttonGo->setPixmap(SmallIcon("kfm")); + item->insertHitWidget(3,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + + buttonGo = new KURLLabel(item); + buttonGo->setText(i18n("Reveal in File Manager")); + item->insertHitWidget(4,buttonGo); + connect(buttonGo, SIGNAL(leftClickedURL()), SLOT(slotOpenDir())); + } + + item->score->setText(i18n("

Score: %1

").arg(result->score,0,'f',1)); + + tableHits->insertItem(item,index); +} + +void SearchDlg::itemUncollapsed(HitWidget* item) +{ + KFileItem *fileitem=new KFileItem(item->uri(),item->mimetype(),KFileItem::Unknown); + if (canPreview(fileitem)) + previewItems.append(fileitem); + startPreview(previewItems); +} + +void SearchDlg::searchHasOutput(BeagleSearch::BeagleResultList &items) +{ + BeagleSearch::BeagleResultList* searchResults = new BeagleSearch::BeagleResultList; + + for (BeagleSearch::BeagleResultList::ConstIterator it = items.begin(); it != items.end(); ++it) { + BeagleSearch::beagle_result_struct* result = (*it); + if ((*(result->uri)).find(encodingRegexp)>0) { + KURL kurl(*(result->uri)); + *(result->uri)=kurl.url(); + } + if (!checkUriInResults(*(result->uri)) && !(*(result->uri)).startsWith("kbookmark:/")) { + result->show_expanded=showBigTiles; + results.append(result); + searchResults->append(result); + } + } + displayResults(*searchResults); +} + +void SearchDlg::displayResults(BeagleSearch::BeagleResultList &items) +{ + bool rebuildDisplay = false; + if (displayAmount==1) + tableHits->setUpdatesEnabled(false); + for (BeagleSearch::BeagleResultList::ConstIterator it = items.begin(); it != items.end(); ++it) { + BeagleSearch::beagle_result_struct *result = *it; + + bool show = false; + switch (showMode) + { + case Everywhere: + show = true; + break; + case Applications: + show = ( result->tilegroup == BeagleSearch::Application ); + break; + case Contacts: + show = ( result->tilegroup == BeagleSearch::Contact ); + break; + case Documents: + show = ( result->tilegroup == BeagleSearch::Documents ); + break; + case Conversations: + show = ( result->tilegroup == BeagleSearch::Conversations ); + break; + case Images: + show = ( result->tilegroup == BeagleSearch::Image ); + break; + case Media: + show = ( result->tilegroup == BeagleSearch::Audio || result->tilegroup == BeagleSearch::Video); + break; + case Website: + show = ( result->tilegroup == BeagleSearch::Website); + break; + case FilePathName: + show = current_query.matches(*(result->uri)); + default: + break; + } + + if (!show) + continue; + + QDateTime datetime; + datetime.setTime_t(result->last_index_time); + QDate date = datetime.date(); + + show = false; + switch (dateRange) + { + case AnyDate: + show = true; + break; + case Today: + show = ( datetime.date()==QDate::currentDate() ); + break; + case SinceYesterday: + show = ( datetime.date()>QDate::currentDate().addDays(-1) ); + break; + case ThisWeek: + show = ( datetime.date().year()==QDate::currentDate().year() && + datetime.date().weekNumber()==QDate::currentDate().weekNumber() ); + break; + case ThisMonth: + show = ( datetime.date().year()==QDate::currentDate().year() && + datetime.date().month()==QDate::currentDate().month() ); + break; + case ThisYear: + show = ( datetime.date().year()==QDate::currentDate().year() ); + break; + default: + break; + } + if (!show) + continue; + + int i = 0; + for (BeagleSearch::BeagleResultList::ConstIterator result_it = displayed_results.begin(); result_it != displayed_results.end(); ++result_it) { + bool foundplace = false; + switch (currentSortOrder) + { + case Type: + if ( result->tilegroup < (*result_it)->tilegroup || + (result->tilegroup == (*result_it)->tilegroup && (*result->mime_type) < (*(*result_it)->mime_type)) || + (result->tilegroup == (*result_it)->tilegroup && (*result->mime_type) == (*(*result_it)->mime_type) && result->last_index_time >= (*result_it)->last_index_time) ) + foundplace = true; + break; + case Name: + if (KURL(*(result->uri)).fileName().lower() < KURL(*((*(result_it))->uri)).fileName().lower()) + foundplace = true; + break; + case Modified: + if (result->last_index_time >= (*result_it)->last_index_time) + foundplace = true; + break; + default: + if (result->score >= (*result_it)->score) + foundplace = true; + break; + } + if (foundplace) + break; + ++i; + } + if (displayed_results.count()==0) + tableHits->clear(); + displayed_results.insert(i, result); + if (displayAmount==1) + insertResult(result,i); + else if (i<=displayOffset+displayAmount) + rebuildDisplay = true; + } + if (displayAmount==1) + tableHits->setUpdatesEnabled(true); + else if (rebuildDisplay) { + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + } + updateStatus(); +} + +void SearchDlg::slotOpen() +{ + HitWidget* item = static_cast(sender()->parent()); + if (item) { + QString mimetype = item->mimetype(); + if (mimetype=="beagle/x-kopete-log" || mimetype=="beagle/x-gaim-log") { + KProcess *proc = new KProcess; + *proc << "beagle-imlogviewer"; + KURL kuri = KURL(item->uri()); + QString uri = kuri.path(); + if (mimetype=="beagle/x-kopete-log") + *proc << "--client" << "kopete" << "--highlight-search" << current_query.get() << uri; + else + *proc << "--client" << "gaim" << "--highlight-search" << current_query.get() << uri; + if (!proc->start()) { +// KMessageBox::error(0,i18n("Could not start instant message log viewer.")); + if (mimetype=="beagle/x-kopete-log") + KRun::runURL(uri, "text/plain", false, true); + else + KRun::runURL(uri, "text/html", false, true); + return; + } + } + else if (item->uri().startsWith("calendar:/") || item->uri().startsWith("contacts:/") + || item->uri().startsWith("email:/")) + { + slotOpenEvolution(item->uri()); + } + else if (item->uri().startsWith("mailbox:/") && item->uri().find("thunderbird")>0) + { + slotOpenThunderbird(item->uri()); + } + else if (item->uri().startsWith("kabc:/") ) + { + slotOpenKAddressBook(item->uri().mid(8,10)); + } + else if (item->uri().startsWith("knotes:/") ) + { + slotOpenKNotes(item->uri().mid(9,22)); + } + else if (item->uri().startsWith("note:/")) { + KProcess *proc = new KProcess; + *proc << "tomboy"; + *proc << "--open-note" << item->uri() << "--highligh-search" << "\""+current_query.get()+"\""; + if (!proc->start()) { + KMessageBox::error(0,i18n("Could not start Tomboy.")); + return; + } + } + else { + if (mimetype=="beagle/x-konq-cache") + mimetype = "text/html"; + KRun::runURL(item->uri(), mimetype, false, true); + } + } +} + +void SearchDlg::slotOpenDir() +{ + HitWidget* item = static_cast(sender()->parent()); + if (item) + KRun::runURL(KURL(item->uri()).directory(), "inode/directory", false, true); +} + +void SearchDlg::slotMailTo(const QString &address) +{ + kapp->invokeMailer(address, QString::null); +} + +void SearchDlg::slotOpenEvolution(const QString &address) +{ + KProcess *proc = new KProcess; + *proc << "evolution"; + *proc << address; + if (!proc->start()) { + KMessageBox::error(0,i18n("Could not start Evolution.")); + return; + } +} + +void SearchDlg::slotOpenThunderbird(const QString &address) +{ + KProcess *proc = new KProcess; + *proc << "thunderbird"; + *proc << "-mail"; + *proc << address; + if (!proc->start()) { + KMessageBox::error(0,i18n("Could not start Thunderbird.")); + return; + } +} + +void SearchDlg::slotOpenKAddressBook(const QString &uid) +{ + KProcess *proc = new KProcess; + *proc << "kaddressbook"; + *proc << "--uid" << uid; + if (!proc->start()) { + KMessageBox::error(0,i18n("Could not start KAddressBook.")); + return; + } +} + +void SearchDlg::slotOpenKNotes(const QString ¬eid) +{ + if (ensureServiceRunning("knotes")) { + QByteArray data; + QDataStream arg(data, IO_WriteOnly); + arg << noteid; + + kapp->dcopClient()->send("knotes","KNotesIface","showNote(QString)", data); + } +} + +void SearchDlg::slotOpenURL(const QString& url) +{ + (void) new KRun( url, parentWidget()); +} + +QString SearchDlg::formatBytes(QString& bytesStr) const +{ + static double kilobyte = 1024.0; + static double megabyte = 1024.0*1024.0; + double bytes = KGlobal::locale()->readNumber(bytesStr); + if (bytes < megabyte) + return KGlobal::locale()->formatNumber(bytes/kilobyte, 2) + "K"; + return KGlobal::locale()->formatNumber(bytes/megabyte, 2) + "M"; +} + +void SearchDlg::slotStartBeagle() +{ + beagleJustStarted = true; + if (cb_beagleStart->isChecked()) { + KConfig *config = KGlobal::config(); + config->setGroup("Beagle"); + config->writeEntry("AutoStart",true); + config->sync(); + } + + KProcess *proc = new KProcess; + *proc << "beagled"; + *proc << "--indexing-delay 2"; + if (!proc->start()) { + KMessageBox::error(0,i18n("Could not start Beagle daemon.")); + return; + } + slotClear(); + QTimer::singleShot(5000, this, SLOT(search())); +} + +void SearchDlg::searchLostOutput(BeagleSearch::VanishedURIList &items) +{ + bool rebuildDisplay = false; + for (BeagleSearch::VanishedURIList::ConstIterator it = items.begin(); it != items.end(); ++it) { + int i; + for(i = 0; i < (int)displayed_results.count(); ++i) + { + BeagleSearch::beagle_result_struct *result = displayed_results.at(i); + if (*(result->uri)==(*it)) { + displayed_results.remove(i); + if (displayed_results.count()==0) + searchFinished(); + else if (displayAmount==1) + tableHits->removeItem(i); + else if (i<=displayOffset+displayAmount) { + rebuildDisplay = true; + if (displayOffset>=(int)displayed_results.count()) + displayOffset-=displayAmount; + } + break; + } + } + for(i = 0; i < (int)results.count(); ++i) + { + BeagleSearch::beagle_result_struct *result = results.at(i); + if (*(result->uri)==(*it)) { + results.remove(i); + break; + } + } + } + + if (rebuildDisplay) { + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + } + + updateStatus(); +} + +void SearchDlg::searchFinished() +{ + m_searchPixmap->setPixmap( BarIcon( "find", 32 ) ); + + still_searching = false; + + if (displayed_results.count()) { + updateStatus(); + return; + } + + if (editSearch->lineEdit()->text().isEmpty()) { + showQuickTips(); + return; + } + + tableHits->clear(); + HitWidget* item = new HitWidget(QString::null, QString::null); + QLabel *headerLabel = new QLabel(item); + headerLabel->setText(i18n("No results for \"%1\" were found.").arg(current_query.get())); + item->insertHeaderWidget(0,headerLabel); + + item->setIcon("messagebox_warning"); + + QString text = ""; + if (showMode) + text += i18n("- A broader search scope might produce more results.")+"
"; + text += i18n("- You should check the spelling of your search words."); + if (beagleJustStarted) { + text += "
"+i18n("- The Beagle daemon was just started. Please be patient until it finished its indexing."); + beagleJustStarted = false; + } + item->setDescriptionText(text+"
"); + labelStatus->setText(""); + + tableHits->insertItem(item); +} + +void SearchDlg::searchError(const QString& error) +{ + kdDebug() << "SearchDlg::searchError() " << error << endl; +} + +bool SearchDlg::canPreview( KFileItem* item ) +{ + if ( !KGlobalSettings::showFilePreview( item->url() ) ) + return false; + + if ( pPreviewMimeTypes == 0L ) + updatePreviewMimeTypes(); + + return mimeTypeMatch( item->mimetype(), *( pPreviewMimeTypes ) ); +} + +void SearchDlg::updatePreviewMimeTypes() +{ + if ( pPreviewMimeTypes == 0L ) + pPreviewMimeTypes = new QStringList; + else + pPreviewMimeTypes->clear(); + + // Load the list of plugins to determine which mimetypes are supported + KTrader::OfferList plugins = KTrader::self()->query("ThumbCreator"); + KTrader::OfferList::ConstIterator it; + + for ( it = plugins.begin(); it != plugins.end(); ++it ) { + QStringList mimeTypes = (*it)->property("MimeTypes").toStringList(); + for (QStringList::ConstIterator mt = mimeTypes.begin(); mt != mimeTypes.end(); ++mt) + pPreviewMimeTypes->append(*mt); + } +} + +bool SearchDlg::mimeTypeMatch( const QString& mimeType, const QStringList& mimeList ) const +{ + for (QStringList::ConstIterator mt = mimeList.begin(); mt != mimeList.end(); ++mt) + { + if ( mimeType == *mt ) + return true; + // Support for *mt == "image/*" + QString tmp( mimeType ); + if ( (*mt).endsWith("*") && tmp.replace(QRegExp("/.*"), "/*") == (*mt) ) + return true; + } + return false; +} + +void SearchDlg::startPreview( const KFileItemList& items ) +{ + stopPreview(); // just in case + int iconSize = KGlobal::iconLoader()->currentSize( KIcon::Desktop ); + + pPreviewJob = KIO::filePreview( items, KIcon::SizeHuge, KIcon::SizeHuge, iconSize, + true /*m_pSettings->textPreviewIconTransparency()*/, true /* scale */, + true /* save */, 0); //&(d->previewSettings) ); + connect( pPreviewJob, SIGNAL( gotPreview( const KFileItem *, const QPixmap & ) ), + this, SLOT( slotPreview( const KFileItem *, const QPixmap & ) ) ); + connect( pPreviewJob, SIGNAL( result( KIO::Job * ) ), + this, SLOT( slotPreviewResult() ) ); +} + + +void SearchDlg::stopPreview() +{ + if (pPreviewJob) + { + pPreviewJob->kill(); + pPreviewJob = 0; + } +} + +void SearchDlg::slotPreview(const KFileItem *item, const QPixmap &pix) +{ + for(uint i=0; i < tableHits->count(); ++i) + { + HitWidget* w = static_cast(tableHits->item(i)); + if (w && KURL(w->uri()).prettyURL() == item->url().prettyURL() ) { + w->icon->setPixmap(pix); + break; + } + } +} + +void SearchDlg::slotPreviewResult() +{ + pPreviewJob = 0; + previewItems.clear(); +} + +void SearchDlg::keyPressEvent(QKeyEvent *e) +{ + if (e->key()==Key_PageDown && displayAmount!=1) { + if (e->state()==ControlButton) { + if (displayOffset+displayAmount>=(int)displayed_results.count()) + return; + + displayOffset=((displayed_results.count() -1) / displayAmount) * displayAmount; + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + updateStatus(); + } + else + slotNext(); + } + else if (e->key()==Key_PageUp && displayAmount!=1) { + if (e->state()==ControlButton) { + if (displayOffset==0) + return; + + displayOffset=0; + tableHits->setUpdatesEnabled(false); + fillTableHits(); + tableHits->setUpdatesEnabled(true); + updateStatus(); + } + else + slotPrevious(); + } + else + HitsLayout::keyPressEvent(e); +} + +void SearchDlg::showEvent(QShowEvent *e ) +{ + HitsLayout::showEvent( e ); + if (pending_showQuickTips) { + showQuickTips(); + pending_showQuickTips=false; + } +} + +void SearchDlg::slotContextMenu( int /*row*/, int /*col*/, const QPoint & pos ) +{ + KPopupMenu *popup = new KPopupMenu(this); + popup->insertTitle(i18n("Collapse") + " / " + i18n("Expand")); + popup->insertItem(i18n("Collapse All"), 1); + popup->insertItem(i18n("Expand All"), 2); + int selected = popup->exec(pos); + if (selected==1 || selected==2) + for(uint i=0; i < tableHits->count(); ++i) { + HitWidget* w = static_cast(tableHits->item(i)); + w->setCollapsed(selected==1); + } + delete popup; +} + + +void SearchDlg::showSearchDialog() +{ + show(); + KWin::setOnDesktop( winId(), KWin::currentDesktop() ); + kapp->updateUserTimestamp(); + KWin::forceActiveWindow( winId() ); + editSearch->setFocus(); + editSearch->lineEdit()->selectAll(); +} + +void SearchDlg::configChanged() +{ + KConfig *config = KGlobal::config(); + config->reparseConfiguration(); + config->setGroup("General"); + + showBigTiles=config->readBoolEntry("ShowBigTiles",false); + setDisplayAmount(config->readNumEntry("DisplayAmount", 20)); + setSortOrder(config->readNumEntry("DefaultSortOrder",0)); +} + +void SearchDlg::searchProgramList(QString relPath) +{ + KServiceGroup::Ptr group = KServiceGroup::group(relPath); + if (!group || !group->isValid()) + return; + + KServiceGroup::List list = group->entries(); + if (list.isEmpty()) + return; + + KServiceGroup::List::ConstIterator it = list.begin(); + for(; it != list.end(); ++it) { + KSycocaEntry *e = *it; + + if(e != 0) { + if(e->isType(KST_KServiceGroup)) { + KServiceGroup::Ptr g(static_cast(e)); + if(!g->noDisplay()) + searchProgramList(g->relPath()); + } else if(e->isType(KST_KService)) { + KService::Ptr s(static_cast(e)); + if(s->type() == "Application" && !s->noDisplay() && !checkUriInResults(locate("apps", s->desktopEntryPath()))) { + if (!current_query.matches(s->name().lower()+' '+s->genericName()+' '+ + s->exec()+' '+s->keywords().join(",")+' '+s->comment()+' ' + + group->caption()+' '+s->categories().join(","))) + continue; + + BeagleSearch::beagle_result_struct *result = new BeagleSearch::beagle_result_struct; + result->mime_type=new QString("application/x-desktop"); + result->tilegroup = BeagleSearch::Application; + result->uri=new QString("file://"+locate("apps", s->desktopEntryPath())); + *(result->properties).append("fixme:Name="+s->name()); + result->tilegroup = BeagleSearch::Application; + result->score = 0.0; + result->show_expanded=showBigTiles; + results.append(result); + new_results.append(result); + } + } + } + } +} + +bool SearchDlg::checkUriInResults(const QString& path) const +{ + for (BeagleSearch::BeagleResultList::ConstIterator it = results.begin(); it != results.end(); ++it) { + BeagleSearch::beagle_result_struct *result = *it; + if (*(result->uri) == path) + return true; + } + return false; +} + +void SearchDlg::searchBookmarks(KBookmarkGroup group) +{ + KBookmark bookmark = group.first(); + while(!bookmark.isNull()) { + if (bookmark.isGroup()) { + searchBookmarks(bookmark.toGroup()); + } else if (!bookmark.isSeparator() && !bookmark.isNull()) { + if (!current_query.matches(bookmark.fullText()+' '+bookmark.url().url())) { + bookmark = group.next(bookmark); + continue; + } + + if (checkUriInResults(bookmark.url().prettyURL())) { + bookmark = group.next(bookmark); + continue; + } + + BeagleSearch::beagle_result_struct *result = new BeagleSearch::beagle_result_struct; + result->mime_type=new QString("text/html"); + result->uri=new QString(bookmark.url().prettyURL()); + *(result->properties).append("dc:title="+bookmark.fullText()); + result->tilegroup = BeagleSearch::Website; + result->score = 0.0; + result->show_expanded=showBigTiles; + results.append(result); + new_results.append(result); + } + bookmark = group.next(bookmark); + } +} + +void SearchDlg::searchAddressbook() +{ + if (!m_addressBook) + m_addressBook = KABC::StdAddressBook::self( false ); + + KABC::AddressBook::ConstIterator it = m_addressBook->begin(); + while (it!=m_addressBook->end()) { + if (!current_query.matches((*it).assembledName()+' '+(*it).fullEmail())) { + it++; + continue; + } + + if (checkUriInResults("kabc:///"+(*it).uid())) { + it++; + continue; + } + + QString realName = (*it).realName(); + if (realName.isEmpty()) + realName=(*it).preferredEmail(); + + BeagleSearch::beagle_result_struct *result = new BeagleSearch::beagle_result_struct; + result->mime_type=new QString("text/html"); + result->uri=new QString("kabc:///"+(*it).uid()); + *(result->properties).append("vCard:FN="+realName); + *(result->properties).append("vCard:EMAIL="+(*it).preferredEmail()); + result->tilegroup = BeagleSearch::Contact; + result->score = 0.0; + result->show_expanded=showBigTiles; + results.append(result); + new_results.append(result); + + it++; + } +} + + +bool SearchDlg::eventFilter(QObject *obj, QEvent *e) +{ +#define showSwitchesCount 9 +static QLabel* showSwitches[showSwitchesCount] = {showEverything, showApplications, showContacts, showDocuments, + showConversations, showImages, showMedia, showWebPages, showFilePathName}; + +#define sortSwitchesCount 4 +static QLabel* sortSwitches[sortSwitchesCount] = {sortByType, sortByDate, sortByName, sortByRelevance}; + +#define dateSwitchesCount 6 +static QLabel* dateSwitches[dateSwitchesCount] = {showAnyDate, showToday, showSinceYesterday, showThisWeek, + showThisMonth, showThisYear}; + + if (e->type()==QEvent::Enter) { + QApplication::setOverrideCursor( QCursor(Qt::PointingHandCursor) ); + } else if (e->type()==QEvent::Leave) { + QApplication::restoreOverrideCursor(); + } else if (e->type()==QEvent::MouseButtonPress) { + for (int i=0; ifont(); + f.setBold(false); + showSwitches[showMode]->setFont(f); + showMode = (ScopeType)i; + f.setBold(true); + showSwitches[showMode]->setFont(f); + sortFilterResults(); + } + return true; + } + + for (int i=0; ifont(); + f.setBold(false); + dateSwitches[dateRange]->setFont(f); + dateRange = (DateRange)i; + f.setBold(true); + dateSwitches[dateRange]->setFont(f); + sortFilterResults(); + } + return true; + } + } + + return false; +} + +bool SearchDlg::ensureServiceRunning(const QString & name) +{ + QStringList URLs; + QByteArray data, replyData; + QCString replyType; + QDataStream arg(data, IO_WriteOnly); + arg << name << URLs; + + if ( !kapp->dcopClient()->call( "klauncher", "klauncher", "start_service_by_desktop_name(QString,QStringList)", + data, replyType, replyData) ) { + qWarning( "call to klauncher failed."); + return false; + } + QDataStream reply(replyData, IO_ReadOnly); + + if ( replyType != "serviceResult" ) + { + qWarning( "unexpected result '%s' from klauncher.", replyType.data()); + return false; + } + int result; + QCString dcopName; + QString error; + reply >> result >> dcopName >> error; + if (result != 0) + { + qWarning("Error starting: %s", error.local8Bit().data()); + return false; + } + return true; +} + +#include "searchdlg.moc" diff --git a/kerry/src/searchdlg.h b/kerry/src/searchdlg.h new file mode 100644 index 0000000..429d8e5 --- /dev/null +++ b/kerry/src/searchdlg.h @@ -0,0 +1,173 @@ +/*************************************************************************** + * Copyright (C) 2005 Novell, Inc. * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA * + ***************************************************************************/ + +#ifndef SEARCHDLG_H +#define SEARCHDLG_H + +#include +#include "kerryapp.h" +#include "beaglesearch.h" +#include "query.h" +#include +#include +#include +#include +#include + +class KFileItem; +class QCheckBox; +class KBookmarkManager; +class KBookmarkGroup; +class HitWidget; + +class SearchDlg : public HitsLayout, virtual public dcopIface +{ + Q_OBJECT + + enum ScopeType { + Everywhere, + Applications, + Contacts, + Documents, + Conversations, + Images, + Media, + Website, + FilePathName + }; + + enum SortType { + Type, + Modified, + Name, + Relevance + }; + + enum DateRange { + AnyDate, + Today, + SinceYesterday, + ThisWeek, + ThisMonth, + ThisYear + }; + + public: + SearchDlg(QWidget *parent = 0, const char *name = 0); + ~SearchDlg(); + + public slots: + void search(const QString& text); + void search(const QString& text, const QString& scope); + void showSearchDialog(); + void configChanged(); + + protected: + void setDisplayAmount(int); + void setSortOrder(int); + + void keyPressEvent(QKeyEvent *); + void showEvent(QShowEvent *); + bool eventFilter(QObject *obj, QEvent *e); + + signals: + void configure(); + void readConfiguration(); + + private slots: + void slotStartBeagle(); + void slotButtonClear(); + void slotClear(); + void slotPrevious(); + void slotNext(); + void search(); + void searchChanged(const QString &); + void searchHasOutput(BeagleSearch::BeagleResultList &results); + void searchLostOutput(BeagleSearch::VanishedURIList &results); + void searchFinished(); + void searchError (const QString& error); + void sortFilterResults(); + void slotOpen(); + void slotOpenDir(); + void slotMailTo(const QString&); + void slotOpenEvolution(const QString&); + void slotOpenThunderbird(const QString&); + void slotOpenKAddressBook(const QString&); + void slotOpenKNotes(const QString&); + void slotOpenURL(const QString&); + void slotContextMenu( int row, int col, const QPoint & pos ); + void slotPreview(const KFileItem *, const QPixmap &); + void slotPreviewResult(); + void slotCleanClientList (); + void itemUncollapsed(HitWidget*); + + private: + BeagleSearch* beagle_search; + Query current_query; + + QPtrList toclean_client_list; + QMutex toclean_list_mutex; + int current_beagle_client_id; + + BeagleSearch::BeagleResultList results, displayed_results, new_results; + int displayOffset; + int displayAmount; + int defaultSortOrder,currentSortOrder; + void insertResult(BeagleSearch::beagle_result_struct *result,int index); + void fillTableHits(); + void updateStatus(); + void showQuickTips(); + QString formatBytes(QString& bytesStr) const; + QCheckBox* cb_beagleStart; + bool beagleJustStarted; + + void customEvent (QCustomEvent *e); + bool pending_showQuickTips; + void displayResults(BeagleSearch::BeagleResultList &items); + bool mimeTypeMatch( const QString& mimeType, const QStringList& mimeList ) const; + bool canPreview( KFileItem* item ); + void updatePreviewMimeTypes(); + QStringList* pPreviewMimeTypes; + KIO::PreviewJob *pPreviewJob; + void startPreview( const KFileItemList& items ); + void stopPreview(); + KFileItemList previewItems; + + QString takeProperty( const QString& property, QStringList& propertyList); + QDateTime datetimeFromString( const QString& ); + + QRegExp encodingRegexp; + + void searchProgramList(QString relPath); + bool checkUriInResults(const QString& path) const; + + KBookmarkManager *bookmarkManager; + KABC::AddressBook* m_addressBook; + void searchAddressbook(); + void searchBookmarks(KBookmarkGroup); + + ScopeType showMode; + DateRange dateRange; + bool showBigTiles; + + bool ensureServiceRunning(const QString & name); + bool still_searching; +}; + +#endif diff --git a/kerry/src/searchdlg_layout.ui b/kerry/src/searchdlg_layout.ui new file mode 100644 index 0000000..14b3d47 --- /dev/null +++ b/kerry/src/searchdlg_layout.ui @@ -0,0 +1,1111 @@ + +HitsLayout + + + HitsLayout + + + + 0 + 0 + 942 + 898 + + + + + 0 + 0 + + + + Kerry Beagle Search + + + + unnamed + + + + tableHits + + + + 7 + 7 + 0 + 0 + + + + + 480 + 440 + + + + StrongFocus + + + + + layout8 + + + + unnamed + + + + buttonClear + + + + 4 + 4 + 0 + 0 + + + + + 24 + 24 + + + + + + + 10 + + + Clear the search term and results + + + + + labelSearch + + + &Search: + + + editSearch + + + + + editSearch + + + + 7 + 0 + 0 + 0 + + + + + + buttonFind + + + false + + + + 0 + 0 + + + + + + + true + + + Start the search for entered term + + + + + m_searchPixmap + + + + 1 + 1 + 0 + 0 + + + + + 32 + 32 + + + + + 32 + 32 + + + + PaletteBackground + + + ParentOrigin + + + true + + + + + + + layout5 + + + + unnamed + + + + labelStatus + + + + 7 + 5 + 0 + 0 + + + + Results <b>%1 through %2 of %3</b> are shown. + + + AlignVCenter + + + + + spacer + + + Horizontal + + + Fixed + + + + 16 + 20 + + + + + + buttonPrevious + + + false + + + + 1 + 0 + 0 + 0 + + + + + 0 + 0 + + + + &Previous Results + + + 14 + + + Show the previous search results + + + + + buttonNext + + + false + + + + 1 + 0 + 0 + 0 + + + + + 0 + 0 + + + + &Next Results + + + 15 + + + Show the next search results + + + + + + + layout4 + + + + unnamed + + + + frame3 + + + + 1 + 5 + 0 + 0 + + + + NoFrame + + + Plain + + + + unnamed + + + + textLabel1_3 + + + + 10 + + + + Show + + + + + line2_3 + + + + 5 + 1 + 0 + 0 + + + + + 40 + 0 + + + + HLine + + + Sunken + + + Horizontal + + + + + showEverything + + + + 1 + + + + Everything + + + AlignVCenter + + + + + showApplications + + + Applications + + + AlignVCenter + + + + + showContacts + + + Contacts + + + AlignVCenter + + + + + showDocuments + + + Office Documents + + + AlignVCenter + + + + + showConversations + + + Conversations + + + AlignVCenter + + + + + showImages + + + Images + + + AlignVCenter + + + + + showMedia + + + Media + + + AlignVCenter + + + + + showWebPages + + + Web Pages + + + AlignVCenter + + + + + showFilePathName + + + File/Path Name + + + AlignVCenter + + + + + spacer4_2_2 + + + Vertical + + + Fixed + + + + 20 + 16 + + + + + + textLabel1_2 + + + + 10 + + + + Sort By + + + + + line2_2 + + + + 5 + 1 + 0 + 0 + + + + + 40 + 0 + + + + HLine + + + Sunken + + + Horizontal + + + + + sortByType + + + + 1 + + + + Type + + + AlignVCenter + + + + + sortByDate + + + Date + + + AlignVCenter + + + + + sortByName + + + Name + + + WordBreak|AlignVCenter + + + + + sortByRelevance + + + Relevance + + + AlignVCenter + + + + + spacer4 + + + Vertical + + + Fixed + + + + 20 + 16 + + + + + + textLabel1 + + + + 10 + + + + Last Modified + + + + + line2 + + + + 5 + 1 + 0 + 0 + + + + + 40 + 0 + + + + HLine + + + Sunken + + + Horizontal + + + + + showAnyDate + + + + 1 + + + + Any Date + + + AlignVCenter + + + + + showToday + + + Today + + + AlignVCenter + + + + + showSinceYesterday + + + Since Yesterday + + + AlignVCenter + + + + + showThisWeek + + + This Week + + + AlignVCenter + + + + + showThisMonth + + + This Month + + + AlignVCenter + + + + + showThisYear + + + This Year + + + AlignVCenter + + + + + spacer3 + + + Vertical + + + Expanding + + + + 20 + 1 + + + + + + + + layout3 + + + + unnamed + + + + spacer_2 + + + Horizontal + + + Preferred + + + + 0 + 20 + + + + + + buttonConfigure + + + + 1 + 0 + 0 + 0 + + + + + 0 + 0 + + + + Confi&gure... + + + Open the configuration dialog + + + + + buttonClose + + + + 1 + 0 + 0 + 0 + + + + + 0 + 0 + + + + &Close + + + 13 + + + Close the search dialog, an icon will stay in the system tray + + + + + + + + + + + KWidgetListbox +
kwidgetlistbox.h
+ + -1 + -1 + + 0 + + 5 + 5 + 0 + 0 + + image0 + selected(int) + doubleClicked(int, int, int, const QPoint&) +
+ + KLineEdit +
klineedit.h
+ + -1 + -1 + + 0 + + 5 + 5 + 0 + 0 + + image1 + destroyed() + destroyed(QObject*) + textChanged(const QString&) + returnPressed() + lostFocus() + selectionChanged() + completionBoxActivated(const QString&) + returnPressed(const QString&) + completion(const QString&) + substringCompletion(const QString&) + textRotation(KCompletionBase::KeyBindingType) + completionModeChanged(KGlobalSettings::Completion) + aboutToShowContextMenu(QPopupMenu*) + deleteLater() + cleanupEventFilter(QObject*) + setEnabled(bool) + setDisabled(bool) + setCaption(const QString&) + setIcon(const QPixmap&) + setIconText(const QString&) + setMouseTracking(bool) + setFocus() + clearFocus() + setUpdatesEnabled(bool) + update() + update(int,int,int,int) + update(const QRect&) + repaint() + repaint(bool) + repaint(int,int,int,int) + repaint(int,int,int,int,bool) + repaint(const QRect&) + repaint(const QRect&,bool) + repaint(const QRegion&) + repaint(const QRegion&,bool) + show() + hide() + setShown(bool) + setHidden(bool) + iconify() + showMinimized() + showMaximized() + showFullScreen() + showNormal() + polish() + constPolish() + close() + raise() + lower() + stackUnder(QWidget*) + move(int,int) + move(const QPoint&) + resize(int,int) + resize(const QSize&) + setGeometry(int,int,int,int) + setGeometry(const QRect&) + adjustSize() + focusProxyDestroyed() + setText(const QString&) + selectAll() + deselect() + clearValidator() + insert(const QString&) + clear() + undo() + redo() + setMaxLength(int) + setFrame(bool) + setEchoMode(EchoMode) + setReadOnly(bool) + setValidator(const QValidator*) + setFont(const QFont&) + setPalette(const QPalette&) + setSelection(int,int) + setCursorPosition(int) + setAlignment(int) + cut() + copy() + paste() + setDragEnabled(bool) + clipboardChanged() + setReadOnly(bool) + rotateText(KCompletionBase::KeyBindingType) + setCompletedText(const QString&) + setCompletedItems(const QStringList&) + setCompletedItems(const QStringList&,bool) + clear() + setSqueezedText(const QString&) + setText(const QString&) + makeCompletion(const QString&) + slotAboutToShow() + slotCancelled() + userCancelled(const QString&) + completionMenuActivated(int) + tripleClickTimeout() + slotRestoreSelectionColors() + setTextWorkaround(const QString&) + name + enabled + geometry + sizePolicy + minimumSize + maximumSize + sizeIncrement + baseSize + paletteForegroundColor + paletteBackgroundColor + paletteBackgroundPixmap + palette + backgroundOrigin + font + cursor + caption + icon + iconText + mouseTracking + focusPolicy + acceptDrops + frameShape + frameShadow + lineWidth + margin + midLineWidth + text + maxLength + frame + echoMode + cursorPosition + alignment + dragEnabled + readOnly + inputMask + contextMenuEnabled + urlDropsEnabled + trapEnterKeyEvent + enableSqueezedText +
+ + KPushButton +
kpushbutton.h
+ + -1 + -1 + + 0 + + 5 + 5 + 0 + 0 + + image1 + destroyed() + destroyed(QObject*) + pressed() + released() + clicked() + toggled(bool) + stateChanged(int) + deleteLater() + cleanupEventFilter(QObject*) + setEnabled(bool) + setDisabled(bool) + setCaption(const QString&) + setIcon(const QPixmap&) + setIconText(const QString&) + setMouseTracking(bool) + setFocus() + clearFocus() + setUpdatesEnabled(bool) + update() + update(int,int,int,int) + update(const QRect&) + repaint() + repaint(bool) + repaint(int,int,int,int) + repaint(int,int,int,int,bool) + repaint(const QRect&) + repaint(const QRect&,bool) + repaint(const QRegion&) + repaint(const QRegion&,bool) + show() + hide() + setShown(bool) + setHidden(bool) + iconify() + showMinimized() + showMaximized() + showFullScreen() + showNormal() + polish() + constPolish() + close() + raise() + lower() + stackUnder(QWidget*) + move(int,int) + move(const QPoint&) + resize(int,int) + resize(const QSize&) + setGeometry(int,int,int,int) + setGeometry(const QRect&) + adjustSize() + focusProxyDestroyed() + animateClick() + toggle() + animateTimeout() + autoRepeatTimeout() + emulateClick() + setOn(bool) + popupPressed() + slotSettingsChanged(int) + name + enabled + geometry + sizePolicy + minimumSize + maximumSize + sizeIncrement + baseSize + paletteForegroundColor + paletteBackgroundColor + paletteBackgroundPixmap + palette + backgroundOrigin + font + cursor + caption + icon + iconText + mouseTracking + focusPolicy + acceptDrops + text + pixmap + accel + autoRepeat + autoDefault + default + iconSet + toggleButton + on + flat + autoMask +
+
+ + + 789c534e494dcbcc4b554829cdcdad8c2fcf4c29c95030e0524611cd48cd4ccf28010a1797249664262b2467241641a592324b8aa363156c15aab914146aadb90067111b1f + + + 89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000002ff49444154388db59531681c4714863f992dde820cb370815b50600f54e8ca0ba43970712a8fb838438a3895634813d238a5ab80e314ae4d0a812060a4226017c27221c8a9da6b8c4fe0e00d28b0571cec82043b85611f78c12966efa4bb8bc085f29a6567df7cef9f7fdeccaec571cc2cbaddee47ae21e2385e5b9b815f1ebcfcd8de6a63ad25cb338af7c52741acb5a4a729a3d723a82ec6bd99d267bf3f23fc1c4cab2442d14a915986e792fdfa59569766573049417784f1b12e8267954dab24b78714450a28beaf941f847c2a14e70a0841035a2d45d641eb027213c210c69756320767794684d6508bef0befde1a860796e4c402333542b4256c0f0cdd1e50b97191458be6e0e27d81563a87c643d8fb2d7793d685d696413cc8a6cae46f65f7d79c7c62b87b4f2e15fd0fb0d302be0fefde4a0d557a5f35e90f84e0334014d590f855c9de4ecee17e4eb319d1ff3a00ec02f8c67299f283307c61e7d06fbf1782d082588a33e1cf1705fd81cf773f3601e1f9bec59e2f4b5c7ef5209f0ac95f16630cfd818067c103b586dd274a726229cee0fe8380d191cb4d1267d3d58aa1de7d258ceae5d7d0a78fdd269a86f0c52d414c49bbe3762c9b686de41560d7a72e41c4795a6486a78f95e4c4151481d686efbe7b3398ac58b1a23868b8c474aaa8068c8e714a8dd06c1af2a9e5d1c38c641c909dba6e08237f19b358a7ac5cf3479bc2e41f257e55d2ffc6a73833746f09e186cfa387904f2cbffc90a2aa9886d0e99464d3c5965b512cebd01f1800f67672e2a392fb0f023a3d883a053ffddcc2340dd65ab452b6074dc2cd15c1cbceb863daed413e353cdfcfd97d92333a12da6d0181ec3443cf753ef3cdd092de0e116ff1a02cdc157338ca9d7b8269461cfee1ba2139b9286e1a427f10110f2d561555b076d18a39383d4d99a4c0cd0b787f20747b214962c8266e3cdcf0e97c59126ec2f6edd089f40a92f115e0d1eb11ba238461dd6a15f32b53666de841965bb203575a3cc15a48c64a965fe57105e3635db8fa96dcffc431172b5d715d7103dc3fea7f015f373c8ee3b57f0135105a0fae7717960000000049454e44ae426082 + + + + + buttonClose + clicked() + HitsLayout + close() + + + + buttonClear + editSearch + buttonFind + tableHits + buttonPrevious + buttonNext + buttonClose + + + searchdlg_layout.ui.h + + + + + kwidgetlistbox.h + kpushbutton.h + kcombobox.h + klineedit.h + kpushbutton.h + kpushbutton.h + kpushbutton.h + kpushbutton.h + +
diff --git a/kerry/src/searchdlg_layout.ui.h b/kerry/src/searchdlg_layout.ui.h new file mode 100644 index 0000000..0ee295d --- /dev/null +++ b/kerry/src/searchdlg_layout.ui.h @@ -0,0 +1 @@ +#include diff --git a/po/Makefile.am b/po/Makefile.am new file mode 100644 index 0000000..54cb7de --- /dev/null +++ b/po/Makefile.am @@ -0,0 +1 @@ +SUBDIRS = $(AUTODIRS) diff --git a/po/ar/Makefile.am b/po/ar/Makefile.am new file mode 100644 index 0000000..f01035c --- /dev/null +++ b/po/ar/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = ar +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/ar/kcmbeagle.po b/po/ar/kcmbeagle.po new file mode 100644 index 0000000..f693f66 --- /dev/null +++ b/po/ar/kcmbeagle.po @@ -0,0 +1,235 @@ +# translation of kcmbeagle.po to Arabic +# +# محمد سعد Mohamed SAAD , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-31 14:18+0100\n" +"Last-Translator: محمد سعد Mohamed SAAD \n" +"Language-Team: Arabic \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "حدِد أي من طرفيات Beagle الخلفية تريد تمكينها." + +#: backends.cpp:40 +msgid "Backends" +msgstr "الطرفيات الخلفية" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&فهرسة" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "الطرفيات ال&خلفية" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "حالة &مراقب القرص و التنفيذ" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "عام" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "إبدء تشغيل خدمة الفهرسة Beagle تلقائياً" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "فهرسة البيانات عند التشغيل على البطارية" + +#: indexing.cpp:59 +msgid "Index" +msgstr "فهرسة" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "فهرسة مجلّد منزلي" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "أضف أي مجلّد إضافي تريد ضمنه في عملية الفهرسة." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "الإسم" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "أضِف..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "الخصوصية" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"حدِد أي مورِد ، كمجلّد أو تشكيلة ، اللتي لا تريد ضمنها في عملية الفهرسة." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "النوع" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "إختر المجلّد" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"هل تريد فعلاً حذف هذا المجلّد من لائحة المجلدات اللتي تريد ضمنها في عملية " +"الفهرسة ؟" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "أحذف المجلّد" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "أضف المورِد" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"هل تريد فعلاً حذف هذا البند من لائحة البيانات اللتي لا تريد فهرستها ؟" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "أحذف البند" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&إبحث" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "الرجاء إختيار مورد لا تريد فهرسته." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "المجلّد:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "تشكيلة إسم الملف:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "ترتيب فرز النتائج الإفتراضي:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "تاريخ التعديل" + +#: search.cpp:44 +msgid "Relevance" +msgstr "الأهمية" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "عرّف ترتيب الفرز الإفتراضي عند بدء التشغيل." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "عدد النتائج الأقصى المعروض:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "لا حدّ" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "عرّف كم من النتائج يجب عرضها على صفحة نتائج واحدة." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "الإختصارات الإجمالية" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "بحث Kerry Beagle" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "أعرض حوار البحث" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "إبحث في الإختيار الأولي" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "حدِث الحالة" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "يجري تنفيذ الخدمة Beagle حالياً. أنقر هنا للإيقاف." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "الخدمة Beagle موقفة حالياً. أنقر هنا للإنطلاق." + +#: status.cpp:118 +msgid "Start" +msgstr "إبدء" + +#: status.cpp:131 +msgid "Service not started." +msgstr "لم تبدء الخدمة." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"إصدار خدمة Beagle رقم: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"الحالة الحالية:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "معلومات الدليل:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "لقد تم إيقاف الخدمة Beagle." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "لقد تم تشغيل الخدمة Beagle." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "لم أستطع بِدء تشغيل الخدمة beagle." + +#~ msgid "Show results by default as big tiles" +#~ msgstr "إفتراضياً، أعرض النتائج كبلاطات كبيرة" diff --git a/po/ar/kerry.po b/po/ar/kerry.po new file mode 100644 index 0000000..6ed6d1b --- /dev/null +++ b/po/ar/kerry.po @@ -0,0 +1,683 @@ +# translation of kerry.po to Arabic +# +# محمد سعد Mohamed SAAD , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-10-31 15:32+0100\n" +"Last-Translator: محمد سعد Mohamed SAAD \n" +"Language-Team: Arabic \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Mohamed SAAD محمد سعد" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "metehyi@free.fr" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "" + +#: main.cpp:44 +msgid "A term to search" +msgstr "" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "أي تاريخ" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "اليوم" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "منذ الأمس" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "هذا الأسبوع" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "هذا الشهر" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "هذه السنة" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "إفتح حوار الإعداد" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "وجَدْتُ %1 نتائج." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "لا نتائج." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "" + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "نفِذ" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "خانة غير معنونة" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "لا يوجد ملخص محدد" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "لا إسم معروف" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "،" + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "من" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "شخص غير معروف" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "التطبيق:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "التاريخ: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "محادثة مع %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "الحجم المثبت: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "الحجم المنزل: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "في المجلّد" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "فارغ" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "" + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "" + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" diff --git a/po/br/Makefile.am b/po/br/Makefile.am new file mode 100644 index 0000000..db05612 --- /dev/null +++ b/po/br/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = br +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/br/kcmbeagle.po b/po/br/kcmbeagle.po new file mode 100644 index 0000000..083a20d --- /dev/null +++ b/po/br/kcmbeagle.po @@ -0,0 +1,229 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: all2.po\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2004-09-20 15:44+0200\n" +"Last-Translator: Thierry Vignaud \n" +"Language-Team: br \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" + +#: backends.cpp:40 +msgid "Backends" +msgstr "" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "O &sevel ar meneger" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Pennañ" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Meneger" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Anv" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Ouzhpennañ ..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Buhez prevez" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Seurt" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Dibabit ur renkell" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Lemel ar renkell" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Lemel un dra" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Klask" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Renkell :" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Sil anb restr :" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Kemmet eo an deiziad" + +#: search.cpp:44 +msgid "Relevance" +msgstr "" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "" + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Hep muzul" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Berradennoù hollek" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" + +#: status.cpp:118 +msgid "Start" +msgstr "Loc'hañ" + +#: status.cpp:131 +msgid "Service not started." +msgstr "" + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Servij Beagle stumm : %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Stad red :\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "" + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "" + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "" diff --git a/po/br/kerry.po b/po/br/kerry.po new file mode 100644 index 0000000..2613d61 --- /dev/null +++ b/po/br/kerry.po @@ -0,0 +1,740 @@ +msgid "" +msgstr "" +"Project-Id-Version: all2.po\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2004-09-20 15:44+0200\n" +"Last-Translator: Thierry Vignaud \n" +"Language-Team: br \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Thierry Vignaud, Jañ-Mai Drapier" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "tvignaud@mandriva.com, jdrapier@club-internet.fr" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Albom : %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titl : %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Arzour : %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Ledander : %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Uhelder : %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Seurt al liv : %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Pellgomz ar gêr : %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM : %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo : %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN : %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber : %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ : %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise : %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Komenad : %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Amzer an deroù : %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Amzer ar fin : %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Renkell : %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Oberour : %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Skeudennoù : %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Pajennoù : %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Gerioù : %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Deiziad : %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Doare : %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Pajennoù : %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Lec'hiadur : %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Digeriñ" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Serriñ" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "Ne loc'hit &ket" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "" + +#: main.cpp:44 +msgid "A term to search" +msgstr "" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Merk : 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Deskrivadur" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Klask :" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "Disoc'hoù &diariaok" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Disoc'hoù a-&heul" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Diskouez" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Pep tra" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Arloadoù" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Darempredoù" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Skeudennoù" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Media" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Pajennoù ar gwiad" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Rummañ gant" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Seurt" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Deiziad" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Anv" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Kemmaden diwezhañ" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Hiziv" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Kefluniañ ..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, fuzzy, no-c-format +msgid "Open the configuration dialog" +msgstr "Digeriñ ar prenestr gefluniadur" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Digeriñ ar prenestr gefluniadur" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Disoc'h ebet." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "O klask emaon ..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Seveniñ" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL :" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Pajenn dititl" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Bouetadur hep titl" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Kemm diwezhañ : %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Resevet : %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Dodenn ebet" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Digant" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Den dianav" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "&Meziant :" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Deiziad : %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Flapañ gant %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Amzer ar fin : %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Amzer ar fin : %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "E renkell" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Goullonderiñ" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Merk : %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "N'em eus ket loc'hañ Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "N'em eus ket loc'hañ Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "N'em eus ket loc'hañ Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "N'em eus ket loc'hañ Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "N'em eus ket loc'hañ diaoul Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Serriñ an holl re" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Digeriñ an holl re" + +#~ msgid "&Search" +#~ msgstr "&Klask" + +#~ msgid "&Indexing" +#~ msgstr "O &sevel ar meneger" + +#~ msgid "General" +#~ msgstr "Pennañ" + +#~ msgid "Date Modified" +#~ msgstr "Kemmet eo an deiziad" + +#~ msgid "Global Shortcuts" +#~ msgstr "Berradennoù hollek" + +#~ msgid "Index" +#~ msgstr "Meneger" + +#~ msgid "Add..." +#~ msgstr "Ouzhpennañ ..." + +#~ msgid "Privacy" +#~ msgstr "Buhez prevez" + +#~ msgid "Select Folder" +#~ msgstr "Dibabit ur renkell" + +#~ msgid "Remove Folder" +#~ msgstr "Lemel ar renkell" + +#~ msgid "Remove Item" +#~ msgstr "Lemel un dra" + +#~ msgid "Start" +#~ msgstr "Loc'hañ" + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Servij Beagle stumm : %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Stad red :\n" + +#~ msgid "Folder:" +#~ msgstr "Renkell :" + +#~ msgid "File name pattern:" +#~ msgstr "Sil anb restr :" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Rummañ gant" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Rummañ gant" + +#~ msgid "&Find" +#~ msgstr "&Klask" diff --git a/po/ca/Makefile.am b/po/ca/Makefile.am new file mode 100644 index 0000000..8f8e4c6 --- /dev/null +++ b/po/ca/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = ca +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/ca/kcmbeagle.po b/po/ca/kcmbeagle.po new file mode 100644 index 0000000..2d696d9 --- /dev/null +++ b/po/ca/kcmbeagle.po @@ -0,0 +1,230 @@ +# translation of kcmbeagle.po to +# +# Pau Tallada Crespí , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-11-08 01:39+0100\n" +"Last-Translator: Pau Tallada Crespí \n" +"Language-Team: \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" +"Seleccioneu quin dels dorsals del Beagle disponibles voleu tenir habilitat." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Dorsals" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indexat" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Dorsals" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Estat del dimoni" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "" + +#: indexing.cpp:59 +#, fuzzy +msgid "Index" +msgstr "&Indexat" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "" + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Cerca" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "" + +#: search.cpp:44 +msgid "Relevance" +msgstr "" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "" + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "" + +#: search.cpp:53 +msgid "No Limit" +msgstr "" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "&Refresca l'estat" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "El servei Beagle s'està executant. Feu clic aquí per aturar-lo." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "El servei Beagle està aturat. Feu clic aquí per engegar-lo." + +#: status.cpp:118 +msgid "Start" +msgstr "Engega" + +#: status.cpp:131 +msgid "Service not started." +msgstr "El servei no està engegat." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Versió del servei de Beagle: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Estat actual:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Informació de l'índex:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "El servei Beagle ja està aturat." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "El servei Beagle ja està engegat." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "No s'ha pogut engegar el servei Beagle." diff --git a/po/ca/kerry.po b/po/ca/kerry.po new file mode 100644 index 0000000..3bdaddc --- /dev/null +++ b/po/ca/kerry.po @@ -0,0 +1,827 @@ +# translation of kerry.po to +# +# Pau Tallada Crespí , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-07 00:30+0100\n" +"Last-Translator: Pau Tallada Crespí \n" +"Language-Team: \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Pau Tallada Crespí" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "pau_tallada@telefonica.net" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Àlbum: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Títol: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Amplada: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Alçada: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipus de color: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telèfon de la feina: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telèfon de casa: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Telèfon mòbil: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocol: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Data d'inici: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Data de final: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Carpeta: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diapositives: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Pàgines: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Paraules: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Categoria: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Versió: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Nom de l'empaquetador: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Correu-e de l'empaquetador: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Ubicació: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Neteja la història de cerca" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configura Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Cerca amb Kerry al Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Mostra el diàleg de cerca" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Cerca a la selecció primària" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Cerca amb Kerry al Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Voleu que Kerry s'engegi\n" +"automàticament en iniciar sessió?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Engegar automàticament Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&No l'engeguis" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"S'ha detectat que s'està executant el procés diari\n" +"d'actualització de l'índex de la documentació del Beagle." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "El sistema pot semblar més lent de l'habitual" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Frontal al Beagle per a KDE" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Un terme a cercar" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostra el diàleg de cerca en engegar" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Puntuació: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descripció" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Neteja el terme de cerca i els resultats" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Cerca:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Comença la cerca per al terme introduït" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Es mostren els resultats %1 a %2 de %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Resultats anteriors" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostra els resultats anteriors de la cerca" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Resultats següents" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostra els resultats següents de la cerca" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Mostra" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Tot" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplicacions" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Contactes" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documents ofimàtics" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Converses" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Imatges" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Mitjans" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Pàgines web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Nom del fitxer/ruta" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Ordena per" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipus" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Data" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nom" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Rellevància" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Darrera modificació" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Qualsevol data" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Avui" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Des d'ahir" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Aquesta setmana" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Aquest mes" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Aquest any" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "&Configura..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Obre el diàleg de configuració" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Tanca el diàleg de cerca, una icona romandrà a la safata del sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Aplicacions, Contactes, Converses, Fitxers i demés..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Pistes ràpides" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Podeu emprar lletres majúscules i minúscules; la cerca no és sensible a la " +"caixa." +"
- Per cercar termes opcionals, empreu OR. ex: George OR Ringo" +"
- Per excliure termes de cerca, empreu el signe menys al davant, com a " +"-gats" +"
- Quan cerqueu una frase, afegiu cometes. ex: \"Hi ha dracs\"" +"
- Afegiu ext:type per especificar una extensió de fitxer, ex: " +"ext:txt o ext: per cap" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Seleccioneu quines carpetes i recursos haurien de ser indexats - o no." +"
- Canvieu la ordenació i el nombre de resultats mostrats." +"
- Definiu les vostres dreceres pròpies per invocar el diàleg de cerca." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Obre el diàleg de configuració" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Es mostren els millors resultats %1 de %2." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Cap resultat." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Es mostren els millors resultats %1 de %2." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "La consulta per a «%1» ha fallat." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "La causa més probable és que el dimoni Beagle no s'estigui executant." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Engega automàticament el dimoni Beagle en iniciar sessió" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Feu clic per engegar el dimoni Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "S'està cercant..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Executa" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Darrera visita: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Pàgina sense títol" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicat: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Entrada sense títol" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Darrera modificació: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "No s'ha especificat cap resum" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "No es coneix cap nom" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Rebut: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Sense assumpte" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Persona desconeguda" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplicació:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversa amb %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Instal·lat el: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Mida instal·lat: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Mida de la descàrrega: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Mostra al gestor de fitxers" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "A la carpeta" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Buida" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Conté un element\n" +"Conté %n elements" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Puntuació: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "No s'ha pogut engegar Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "No s'ha pogut engegar Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "No s'ha pogut engegar Tomboy." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "No s'ha pogut engegar KAddressBook." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "No s'ha pogut engegar el dimoni Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "No s'ha trobat cap resultat per a «%1»." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Una cerca més àmplia podria retornar més resultats." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Hauríeu de comprovar la correció dels termes de cerca." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- El dimoni Beagle s'acaba d'engegar. Per favor, sigueu pacient mentre acaba la " +"indexació." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Cerca" + +#~ msgid "&Indexing" +#~ msgstr "&Indexat" + +#~ msgid "&Backends" +#~ msgstr "&Dorsals" + +#~ msgid "&Daemon Status" +#~ msgstr "&Estat del dimoni" + +#~ msgid "General" +#~ msgstr "General" + +#~ msgid "Default result sort order:" +#~ msgstr "Ordenació per defecte dels resultats:" + +#~ msgid "Date Modified" +#~ msgstr "Data de modificació" + +#~ msgid "Define the default sort order at startup." +#~ msgstr "Definiu la ordenació per defecte en engegar." + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Nombre màxim de resultats visibles:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Definiu quants resultats voleu que es mostrin en cada pàgina de resultats." + +#~ msgid "Global Shortcuts" +#~ msgstr "Dreceres Globals" + +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Engega el servei d'indexació Beagle automàticament" + +#~ msgid "Index data while on battery power" +#~ msgstr "Indexa les dades si s'està en bateries" + +#~ msgid "Index" +#~ msgstr "Indexa" + +#~ msgid "Index my home folder" +#~ msgstr "Indexa el meu directori personal" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Afegiu qualsevol carpeta addicional per a ser inclosa en la indexació." + +#~ msgid "Add..." +#~ msgstr "Afegeix..." + +#~ msgid "Privacy" +#~ msgstr "Privacitat" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Especifiqueu qualsevol recurs, com una carpeta o un patró que vulgueu excloure de la indexació." + +#~ msgid "Select Folder" +#~ msgstr "Selecciona la carpeta" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Esteu segur que voleu eliminar aquesta carpeta de la llista de carpetes a ser indexades?" + +#~ msgid "Remove Folder" +#~ msgstr "Elimina la carpeta" + +#~ msgid "Add Resource" +#~ msgstr "Afegeix un recurs" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Esteu segur que voleu eliminar aquest element de la llista de dades a ser excloses de la indexació?" + +#~ msgid "Remove Item" +#~ msgstr "Elimina l'element" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "Seleccioneu quins dels dorsals Beagle disponibles voleu tenir habilitat." + +#~ msgid "Backends" +#~ msgstr "Dorsals" + +#~ msgid "Refresh Status" +#~ msgstr "Refresca l'estat" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "El servei Beagle s'està executant. Feu clic aquí per aturar-lo." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "El servei Beagle està actualment aturat. Feu clic aquí per engegar-lo." + +#~ msgid "Start" +#~ msgstr "Engega" + +#~ msgid "Service not started." +#~ msgstr "El servei està aturat." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Versió del servei Beagle: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Estat actual:\n" + +#~ msgid "Index information:" +#~ msgstr "Informació de l'índex:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "El servei Beagle ja estava aturat." + +#~ msgid "Beagle service already running." +#~ msgstr "El servei Beagle ja s'està executant." + +#~ msgid "Could not start beagle service." +#~ msgstr "No s'ha pogut engegar el servei Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Per favor, seleccioneu un recurs que volgueu excloure de la indexació." + +#~ msgid "Folder:" +#~ msgstr "Carpeta:" + +#~ msgid "File name pattern:" +#~ msgstr "Patró de nom de fitxer:" diff --git a/po/cs/Makefile.am b/po/cs/Makefile.am new file mode 100644 index 0000000..af45f6a --- /dev/null +++ b/po/cs/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = cs +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/cs/kerry.po b/po/cs/kerry.po new file mode 100644 index 0000000..0ed81e6 --- /dev/null +++ b/po/cs/kerry.po @@ -0,0 +1,831 @@ +# translation of kerry.po to cs_CZ +# translation of cs.po to +# translation of kerry.po to +# +# Jakub Friedl , 2006. +# Klara Cihlarova , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-10-23 08:31+0200\n" +"Last-Translator: Klara Cihlarova \n" +"Language-Team: cs_CZ \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Jakub Friedl,Klára Cihlářová" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "jfriedl@suse.cz,koty@seznam.cz" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Název: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Umělec: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Šířka: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Výška: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Typ barev: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Pracovní telefon: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefon domů: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobilní telefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokol: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Počáteční čas: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Konečný čas: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Složka: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Počet snímků: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Počet stran: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Počet slov: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Kategorie: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Verze: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Zabalil: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Email balíkáře: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Umístění: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Vyprázdnit historii hledání" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Nastavit Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Hledání Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Zobrazit dialog hledání" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Prohledat primární výběr" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Hledání Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<žádná nedávná hledání>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Má se Kerry spouštět automaticky\n" +"při vašem přihlášení?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Automaticky spouštět Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Nespouštět" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Bylo detekováno denní indexování dokumentace\n" +"aplikací beagle." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Systém může být pomalejší než obvykle" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE rozhraní pro Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Hledaná fráze" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Zobrazit okno hledání při spuštění" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Skóre: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Popis" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Smazat hledanou frázi a výsledky hledání" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Hledat:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Zahajuje hledání zadané fráze" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Jsou zobrazeny výsledky od %1 do %2 (z %3)" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Předchozí výsledky" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Zobrazit předchozí výsledky hledání" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Další výsledky" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Zobrazit další výsledky hledání" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Zobrazit" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Vše" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplikace" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Kontakty" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kancelářské dokumenty" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Konverzace" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Obrázky" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Média" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Webové stránky" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Jméno souboru/cesty" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Seřadit podle" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Typ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Data" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Jméno" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevance" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Poslední změny" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Jakéhokoliv data" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Dnes" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Od zítřka" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Tento týden" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Tento měsíc" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Tento rok" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Nas&tavit..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Otevřít konfigurační dialog" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Zavře dialog hledání, ikona zůstane v systémové části panelu." + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Aplikace, kontakty, rozhovory, soubory a další..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Rychlé rady" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Můžete používat velká i malá písmena, hledání je nerozlišuje." +"
- Chcete-li vyhledávat alternativní termíny, použijte klíčové slovo OR, " +"např. pes OR kočka" +"
- Chcete-li nějaké termíny z hledání vyloučit, použijte znak mínus, např. " +"-myši" +"
- Hledáte-li frázi, např.: \"Zde draci nejsou\", použijte uvozovky." +"
- Příponu souboru můžete určit klíčovým slovem ext:přípona, např. " +"ext:txt nebo ext:, hledáte-li soubor bez přípony." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Zvolte jaké složky a zdroje mají být indexovány či nikoliv." +"
- Změňte pořadí třídění a počet zobrazených výsledků." +"
- Definujte si vlastní zkratky prospouštění dialogu hledání." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Otevřít konfigurační dialog" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Zobrazeno %1 nejlepších výsledků z %2" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Žádné výsledky" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Zobrazeno %1 nejlepších výsledků z %2" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Hledání \"%1\" nebylo úspěšné." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Pravděpodobnou příčinou je neběžící démon Beagle." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Při přihlášení automaticky vypustit démona Beagle" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klikněte pro spuštění démona Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Probíhá hledání..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Spustit" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Naposledy zobrazeno: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Nepojmenovaná stránka" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publikováno: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Nepojmenovaná položka" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Poslední změna: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Neexistuje souhrn" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Není známé jméno" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Přijato: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Žádný předmět" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Od" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Neznámá osoba" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplikace:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Datum: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Konverzace s %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Nainstalováno na: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Nainstalovaná velikost: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Stahovaná velikost: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Otevřít ve správci souborů" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Ve složce" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Prázdné" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Obsahuje 1 položku\n" +"Obsahuje %n položky\n" +"Obsahuje %n položek" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Skóre: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Nelze spustit Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Nelze spustit Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Nelze spustit Tomboy." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Nelze spustit KAddressBook." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Nelze spustit Beagle démona." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Pro \"%1\" nebyly nalezeny žádné výsledky." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Širší rozsah vyhledávání může dát více výsledků." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Měli byste zkontrolovat hledaná slova, zda neobsahují překlepy." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Démon Beagle byl právě spuštěn. Vyčkejte prosím, dokud nedokončí indexaci." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Hledat" + +#~ msgid "&Indexing" +#~ msgstr "&Indexování" + +#~ msgid "&Backends" +#~ msgstr "&Backendy" + +#~ msgid "&Daemon Status" +#~ msgstr "Stav &démona" + +#~ msgid "General" +#~ msgstr "Obecné" + +#~ msgid "Default result sort order:" +#~ msgstr "Výchozí třídění výsledků" + +#~ msgid "Date Modified" +#~ msgstr "Datum změny" + +#~ msgid "Define the default sort order at startup." +#~ msgstr "Nastavit výchozí řazení při spuštění." + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Maximální počet zobrazených výsledků:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Nastavte, kolik má být zobrazeno výsledků na jedné stránce výsledků." + +#~ msgid "Global Shortcuts" +#~ msgstr "Globální zkratky" + +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Spouštět Beagle indexování automaticky" + +#~ msgid "Index data while on battery power" +#~ msgstr "Indexování při běhu na baterii" + +#~ msgid "Index" +#~ msgstr "Indexování" + +#~ msgid "Index my home folder" +#~ msgstr "Indexovat můj domovský adresář" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "&Přidejte jakýkoliv další adresář určený k indexaci." + +#~ msgid "Add..." +#~ msgstr "Přidat..." + +#~ msgid "Privacy" +#~ msgstr "Soukromí" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Zadejte libovolný zdroj, například soubor nebo vzor, který chcete vynechat z indexování." + +#~ msgid "Select Folder" +#~ msgstr "Vyberte složku" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Opravdu chcete tuto složku odstranit ze seznamu indexovaných složek?" + +#~ msgid "Remove Folder" +#~ msgstr "Odstranit složku" + +#~ msgid "Add Resource" +#~ msgstr "Přidat zdroj" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Opravdu chcete tuto položku odebrat ze seznamu dat vyjmutých z indexace?" + +#~ msgid "Remove Item" +#~ msgstr "Odstranit položku" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "Zvolte, který z dostupných backendů Beagle chcete povolit." + +#~ msgid "Backends" +#~ msgstr "Backendy" + +#~ msgid "Refresh Status" +#~ msgstr "Obnovit stav" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "Služba Beagle nyní běží. Zastavte ji kliknutím sem." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "Služba Beagle nyní neběží. Spusťte ji kliknutím sem." + +#~ msgid "Start" +#~ msgstr "Spustit" + +#~ msgid "Service not started." +#~ msgstr "Služba nespuštěna." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Verze služby Beagle: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Aktuální stav:\n" + +#~ msgid "Index information:" +#~ msgstr "Informace o indexu:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "Služba Beagle byla již zastavena." + +#~ msgid "Beagle service already running." +#~ msgstr "Služba Beagle již běží." + +#~ msgid "Could not start beagle service." +#~ msgstr "Nelze spustit službu Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Prosím zadejte zdroj, který chcete vynechat z indexace" + +#~ msgid "Folder:" +#~ msgstr "Složka:" + +#~ msgid "File name pattern:" +#~ msgstr "Vzor jména souboru:" diff --git a/po/da/Makefile.am b/po/da/Makefile.am new file mode 100644 index 0000000..8452929 --- /dev/null +++ b/po/da/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = da +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/da/kcmbeagle.po b/po/da/kcmbeagle.po new file mode 100644 index 0000000..7c695cb --- /dev/null +++ b/po/da/kcmbeagle.po @@ -0,0 +1,237 @@ +# Danish translation of kcmbeagle +# +# Erik Kjær Pedersen , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-28 18:30-0400\n" +"Last-Translator: Erik Kjær Pedersen \n" +"Language-Team: Danish \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" +"Vælg hvilken af de tilgængelige Beagle-grænseflader som du vil aktivere." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Grænseflade" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indeksering" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Grænseflader" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Dæmonstatus" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Generelt" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Start Beagle indekseringstjeneste automatisk" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Indeksér data ved batteridrift" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Indeks" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Indeksér mit hjemmekatalog" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Tilføj de øvrige folder du ønsker at indeksere." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Navn" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Tilføj..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Privatliv" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Angiv de ressourcer, såsom kataloger eller mønstre, du ønsker at udelukke fra " +"indeksering." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Type" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Vælg mappe" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Ønsker du virkelig at fjerne denne folder fra indekseringslisten?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "&Omdøb mappe" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Tilføj ressource" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Ønsker du virkelig at fjerne dette punkt fra indekseringslisten?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Fjern punkt" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Søg" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Vælg venligst en ressource du vil udelukke fra indeksering." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Mappe:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Filnavnsmønster:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Standard resultatssøgeorden:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Dato ændret" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Relevans" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Definér standardsorteringsrækkefølge ved start." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Maksimalt antal resultater der ønskes vist:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Ingen grænse" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "Definér hvor mange resultater der skal vises på en resultatside." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Vis søgeresultater med detaljer som standard" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Globale genveje" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle søgning" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Vis søgedialogen" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Søg i det primære udvalg" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Opdatér status" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "Beagle-tjenesten kører for øjeblikket. Klik her for at stoppe den." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" +"Beagle-tjenesten er for øjeblikket stoppet. Klik her for at starte den." + +#: status.cpp:118 +msgid "Start" +msgstr "Start" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Tjeneste ikke startet." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Beagle-tjenestens version: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Nuværende status:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Indeksinformation:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Beagle-tjeneste er allerede stoppet." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Beagle-tjeneste kører allerede." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Kunne ikke starte Beagle-tjeneste." + +#~ msgid "Show results by default as big tiles" +#~ msgstr "Vis som standard resultater som store fliser" diff --git a/po/da/kerry.po b/po/da/kerry.po new file mode 100644 index 0000000..2589972 --- /dev/null +++ b/po/da/kerry.po @@ -0,0 +1,855 @@ +# Danish translation of kerry +# +# Martin Moeller , 2006. +# Erik Kjær Pedersen , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-15 07:49-0500\n" +"Last-Translator: Erik Kjær Pedersen \n" +"Language-Team: Danish \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Martin Møller,Erik Kjær Pedersen" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "martin@martinm-76.dk,erik@binghamton.edu" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Kunstner: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Bredde: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Højde: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Farvetype: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Firmatelefon: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Hjemmetelefon: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiltelefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokol: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Starttid: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Længde: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Katalog: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Forfatter: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Slides: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sider: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Ord: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Kategori: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Version: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Navn på pakkeren: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "E-mail for pakkeren: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Placering: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Udvid" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Kollaps" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Ryd søgehistorikken" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Konfigurér Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle søgning" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Vis søgedialogen" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Søg i det primære udvalg" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle søgning (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Skal Kerry starte automatisk\n" +"når du logger på?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Start Kerry automatisk?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Lad være med at starte" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Processen som kører daglig for at opdatere systemets\n" +"dokumentationsindeks for Beagle blev detekteret." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Systemet er muligvis langsommere end sædvanligt" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE GUI for Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Søgeterm" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Vis søgedialogen ved opstart" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Point: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Beskrivelse" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Ryd både søgetermer og resultater" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Søg:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Star søgningen efter det indtastede" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "%1 til %2 af %3 resultater vises." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Forrige resultater" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Vis de forrige søgeresultater" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Næste resultater" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Vis de næste søgeresultater" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Vis" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Alting" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Programmer" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Kontakter" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kontordokumenter" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Samtaler" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Billeder" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Multimediefiler" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Hjemmesider" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Fil- eller søgestinavn" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sortér efter" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Type" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Dato" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Navn" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevans" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Senest ændret" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Vilkårlig dato" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "I dag" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Siden i går" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Denne uge" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Denne måned" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Dette år" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "&Indstil..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Vis indstillingsdialog" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Luk søgedialogfeltet. En ikon vil stadig være at finde i statusfeltet" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Programmer, kontakter, konversationer, filer med mere..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Hurtige tips" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Du kan bruge både store og små bogstaver; søgningen skelner ikke imellem de " +"to." +"
- For at søge efter det ene eller det ande, brug OR. f.eks.: " +"George OR Ringo" +"
- For at udelukke søgetermer, brug minus (-) foran ordet, såsom " +"-katte" +"
- Når du søger efter en frase så brug gåseøjne, f.eks.: " +"\"There be dragons\"" +"
- Tilføj ext:type for at angive en filendelse, f.eks.: ext:txt " +"eller ext: for ikke at have nogen filendelse" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Vælg hvilke mapper og ressourcer som skal indekseres eller ej." +"
- Ændr sorteringsrækkefølge og antal resultater som vises." +"
- Definér dine egne genvejstaster for at vise søgedialogen." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Vis indstillingsdialog" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 resultater fundet." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Ingen resultater." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "De bedste %1 af %2 resultater vises." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(søger stadig)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Søgningen efter \"%1\" fejlede." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Sandsynligvis kører Beagle dæmonen ikke." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Start Beagle dæmonen automatisk ved opstart" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klik her for at starte Beagle dæmonen" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Søger..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Kør" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Sidst set: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Unavngivet side" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Offentliggjort: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Unavngivet punkt" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Sidt ændret: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Der er ikke angivet noget sammendrag" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Intet navn fundet" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Modtaget: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Intet emne" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Fra" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Ukendt person" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Program:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Dato: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Samtale med: %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Installeret den: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Installeret størrelse: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Download-størrelse: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Fremvis i filhåndteringen" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "I folder" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Tom" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Indeholder 1 punkt\n" +"Indeholder %n punkter" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Point: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Kunne ikke starte Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Kunne ikke starte Evolution." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Kunne ikke starte Thunderbird." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Kunne ikke starte addressebogen." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Kunne ikke starte Beagle dæmonen." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Ingen resultater fundet for \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Et større søgeomfang kan give flere resultater." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Du bør kontrollere stavningen af søgeordene." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Beagle-dæmonen er netop startet. Hav tålmodighed til den er klar med sin " +"indeksering." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Kollaps alt" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Ekspandér alle" + +#~ msgid "&Search" +#~ msgstr "&Søg" + +#~ msgid "&Indexing" +#~ msgstr "&Indeksering" + +#~ msgid "&Backends" +#~ msgstr "&Grænseflader" + +#~ msgid "&Daemon Status" +#~ msgstr "&Dæmonstatus" + +#~ msgid "General" +#~ msgstr "Generelt" + +#~ msgid "Default result sort order:" +#~ msgstr "Standard resultatssøgeorden:" + +#~ msgid "Date Modified" +#~ msgstr "Modificeret dato" + +#~ msgid "Define the default sort order at startup." +#~ msgstr "Definér standardsorteringsrækkefølge ved start." + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Maksimalt antal resultater der ønskes vist:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Definér hvor mange resultater der skal vises på en resultatside." + +#~ msgid "Global Shortcuts" +#~ msgstr "Globale genvejstaster" + +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Start Beagle indekseringstjeneste automatisk" + +#~ msgid "Index data while on battery power" +#~ msgstr "Indeksér data ved batteridrift" + +#~ msgid "Index" +#~ msgstr "Indeks" + +#~ msgid "Index my home folder" +#~ msgstr "Indeksér mit hjemmekatalog" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Tilføj de øvrige folder du ønsker at indeksere." + +#~ msgid "Add..." +#~ msgstr "Tilføj..." + +#~ msgid "Privacy" +#~ msgstr "Privatliv" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Angiv de ressourcer, såsom kataloger eller mønstre, du ønsker at udelukke fra indeksering." + +#~ msgid "Select Folder" +#~ msgstr "Vælg folder" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Ønsker du virkelig at fjerne denne folder fra indekseringslisten?" + +#~ msgid "Remove Folder" +#~ msgstr "Fjern folder" + +#~ msgid "Add Resource" +#~ msgstr "Tilføj ressource" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Ønsker du virkelig at fjerne dette punkt fra indekseringslisten?" + +#~ msgid "Remove Item" +#~ msgstr "Fjern punkt" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "Vælg hvilken af de tilgængelige Beagle-grænseflader som du vil aktivere." + +#~ msgid "Backends" +#~ msgstr "Grænseflade" + +#~ msgid "Refresh Status" +#~ msgstr "Opdatér status" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "Beagle-tjenesten kører for øjeblikket. Klik her for at stoppe den." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "Beagle-tjenesten er for øjeblikket stoppet. Klik her for at starte den." + +#~ msgid "Start" +#~ msgstr "Start" + +#~ msgid "Service not started." +#~ msgstr "Tjeneste ikke startet." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Beagle-tjenestens version: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Nuværende status:\n" + +#~ msgid "Index information:" +#~ msgstr "Indeksinformation:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "Beagle-tjeneste er allerede stoppet." + +#~ msgid "Beagle service already running." +#~ msgstr "Beagle-tjeneste kører allerede." + +#~ msgid "Could not start beagle service." +#~ msgstr "Kunne ikke starte Beagle-tjeneste." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Vælg venligst en ressource du vil udelukke fra indeksering." + +#~ msgid "Folder:" +#~ msgstr "Folder:" + +#~ msgid "File name pattern:" +#~ msgstr "Filnavnsmønster:" + +#~ msgid "Sort by Type" +#~ msgstr "Sortér efter dato" + +#~ msgid "Sort by Date" +#~ msgstr "Sortér efter dato" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Definér standard sorteringsordenen ved opstart. Du kan skifte sorteringsordenen af resultat med kontekstmenuen for resultatet." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Resultaterne fra xx til xx af xxx er vist." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Du kan ændre omfanget af din søgning via \"Indeni\" feltet.
  Et bredere søgeomfang vil normalt give flere resultater." + +#~ msgid "&Within:" +#~ msgstr "&Indeni:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Definér i hvilke kilder der skal søges" + +#~ msgid "Add Application Paths" +#~ msgstr "Tilføj programsøgestier" + +#~ msgid "&Find" +#~ msgstr "&Find" diff --git a/po/de/Makefile.am b/po/de/Makefile.am new file mode 100644 index 0000000..b15dd61 --- /dev/null +++ b/po/de/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = de +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/de/kcmbeagle.po b/po/de/kcmbeagle.po new file mode 100644 index 0000000..d988296 --- /dev/null +++ b/po/de/kcmbeagle.po @@ -0,0 +1,244 @@ +# translation of kcmbeagle.po to Deutsch +# +# Jannick Kuhr , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-29 11:28+0100\n" +"Last-Translator: Jannick Kuhr \n" +"Language-Team: Deutsch \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" +"Wählen Sie aus, welches der verfügbaren Beagle-Backends Sie aktivieren wollen." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Backends" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indizierung" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Backends" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Daemon-Status" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Allgemein" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Such- und Indizierungsdienst Beagle automatisch starten" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Daten bei Stromversorgung über Akku indizieren" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Indizierung" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Meinen persönlichen Ordner indizieren" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" +"Fügen Sie einen beliebigen zusätzlichen Ordner hinzu, der in die Indizierung " +"eingeschlossen werden soll." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Name" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Hinzufügen ..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Privatsphäre" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Geben Sie sämtliche Ressourcen, beispielsweise Ordner oder Muster an, die von " +"der Indizierung ausgeschlossen werden sollen." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Typ" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Ordner auswählen" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Möchten Sie diesen Ordner wirklich aus der Liste der für die Indizierung " +"vorgesehenen Ordner entfernen?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Ordner entfernen" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Ressource hinzufügen" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Möchten Sie dieses Objekt wirklich aus der Liste der von der Indizierung " +"ausgeschlossenen Daten entfernen?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Objekt entfernen" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Suche" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "" +"Bitte wählen Sie eine Ressource aus, die von der Indizierung ausgeschlossen " +"werden soll." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Ordner:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Dateinamensmuster:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Standardmäßige Sortierreihenfolge der Ergebnisse:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Änderungsdatum" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Relevanz" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Standardmäßige Sortierreihenfolge beim Programmstart festlegen." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Maximale Anzahl angezeigter Ergebnisse:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Keine Begrenzung" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" +"Legen Sie fest, wie viele Ergebnisse auf einer Ergebnisseite angezeigt werden " +"sollen." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Suchergebnisse standardmäßig mit Detaills anzeigen" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Globale Kurzbefehle" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle-Suche" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Suchdialog anzeigen" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Erstauswahl suchen" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Aktualisierungsstatus" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" +"Der Beagle-Dienst läuft im Moment. Klicken Sie hier, um ihn anzuhalten." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" +"Der Beagle-Dienst ist im Moment angehalten. Klicken Sie hier, um ihn zu " +"starten." + +#: status.cpp:118 +msgid "Start" +msgstr "Start" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Dienst nicht gestartet." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Version des Beagle-Dienstes: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Aktueller Status:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Indizierungsinformation:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Der Beagle-Dienst wurde bereits angehalten." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Der Beagle-Dienst läuft bereits." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Beagle-Dienst kann nicht gestartet werden." diff --git a/po/de/kerry.po b/po/de/kerry.po new file mode 100644 index 0000000..4bbbcbc --- /dev/null +++ b/po/de/kerry.po @@ -0,0 +1,710 @@ +# translation of kerry.po to Deutsch +# +# Thomas Reitelbach , 2006. +# Jannick Kuhr , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-10 08:55+0100\n" +"Last-Translator: Jannick Kuhr \n" +"Language-Team: Deutsch \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Jannick Kuhr" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "jannick.kuhr@kdemail.net" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Künstler: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Breite: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Höhe: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Farbtyp: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefon geschäftlich: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefon privat: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiltelefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokoll: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Startzeit: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Endzeit: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Ordner: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Dias: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Seiten: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Wörter: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Kategorie: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Version: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Name des Paketerstellers: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "E-Mail des Paketerstellers: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Ort: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Ausklappen" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Einklappen" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Suchverlauf löschen" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry einrichten ..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle-Suche" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Suchdialog anzeigen" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Erstauswahl suchen" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle-Suche (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Soll Kerry automatisch gestartet werden,\n" +"wenn Sie sich anmelden?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Kerry automatisch starten?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Nicht starten" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Der täglich laufende Prozess zur Aktualisierung der\n" +"systemweiten Beagle-Dokumentationsindizierung\n" +"wurde erkannt." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Das System könnte langsamer als üblich laufen" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-Oberfläche für Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Ein zu suchender Begriff" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Suchdialogfeld beim Start anzeigen" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Bewertung: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Beschreibung" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Suchbegriff und Ergebnis löschen" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Suchen:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Suche nach eingegebenem Begriff starten" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Ergebnisse %1 bis %2 von %3 werden angezeigt." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Vorherige Ergebnisse" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Vorherige Suchergebnisse anzeigen" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Weitere Ergebnisse" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Weitere Suchergebnisse anzeigen" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Anzeigen" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Alles" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Anwendungen" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Kontakte" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Geschäftsdokumente" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Kommunikation" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Bilder" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Medien" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Webseiten" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Datei-/Pfadname" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sortieren nach" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Typ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Datum" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Name" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevanz" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Zuletzt geändert" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Irgendwann" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Heute" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Seit gestern" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Diese Woche" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Diesen Monat" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Dieses Jahr" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Ein&richten ..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Einrichtungsdialog öffnen" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" +"Suchdialogfeld schließen; Symbol verbleibt im Systemabschnitt der " +"Kontrollleiste" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Anwendungen, Kontakte, Kommunikation, Dateien und mehr ..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Direkthilfe" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Die Groß-/Kleinschreibung wird bei der Suche nicht berücksichtigt." +"
- Optionale Begriffe verbinden Sie durch ein OR (Oder), z.B.: " +"George OR Ringo" +"
- Zum Ausschluss von Suchbegriffen geben Sie vor dem Begriff ein " +"Minuszeichen ein, z.B. -Katzen" +"
- Wenn Sie einen Satz oder Satzteil suchen, geben Sie ihn in " +"Anführungszeichen ein, z.B.: \"Ein Klavier, ein Klavier!\"" +"
- Für eine Dateierweiterung geben Sie ext:Erweiterung ein, z.B.: " +"ext:txt oder ext: für keine Erweiterung." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Wählen Sie welche Ordner und Ressourcen indiziert werden sollen - oder nicht." +"
- Ändern Sie die Sortierreihenfolge und die Anzahl der angezeigten " +"Ergebnisse." +"
- Legen Sie Ihre eigenen Kurzbefehle fest, um den Suchdialog aufzurufen." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Einrichtungsdialog öffnen" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 Ergebnisse gefunden." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Keine Ergebnisse." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Beste %1 Ergebnisse von %2 werden angezeigt." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(Suchvorgang läuft noch)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Fehler bei der Abfrage für \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Vermutlich läuft der Beagle-Daemon nicht." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Beagle-Daemon automatisch bei Anmeldung starten" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klicken Sie hier, um den Beagle-Daemon zu starten" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Suchvorgang ..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Ausführen" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Zuletzt angezeigt: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Unbenannte Seite" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Veröffentlicht: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Webtagebuch:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Unbenannter Eintrag" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Zuletzt geändert: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Keine Zusammenfassung angegeben" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Kein Name bekannt" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Empfangen: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Kein Betreff" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Von" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Unbekannte Person" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Anwendung:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Datum: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Kommunikation mit %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Installiert am: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Installierte Größe: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Heruntergeladene Größe: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "In Dateiverwaltung zeigen" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "In Ordner" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Leer" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Enthält ein Objekt\n" +"Enthält %n Objekte" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Bewertung: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboy kann nicht gestartet werden." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolution kann nicht gestartet werden." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Thunderbird kann nicht gestartet werden." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "KAddressBook kann nicht gestartet werden." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle-Daemon kann nicht gestartet werden." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Keine Ergebnisse für \"%1\" gefunden." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Ein weitgefassterer Suchbereich könnte mehr Ergebnisse liefern." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Sie sollten die Rechtschreibung Ihrer Suchbegriffe überprüfen." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Der Beagle-Daemon wurde gerade gestartet. Bitte warten Sie bis die " +"Indizierung abgeschlossen ist." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Alle einklappen" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Alle ausklappen" diff --git a/po/el/Makefile.am b/po/el/Makefile.am new file mode 100644 index 0000000..da7e49a --- /dev/null +++ b/po/el/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = el +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/el/kcmbeagle.po b/po/el/kcmbeagle.po new file mode 100644 index 0000000..32de674 --- /dev/null +++ b/po/el/kcmbeagle.po @@ -0,0 +1,226 @@ +# translation of kcmbeagle.po to Greek +# +# Spiros Georgaras , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-19 22:28+0300\n" +"Last-Translator: Spiros Georgaras \n" +"Language-Team: Greek \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" + +#: backends.cpp:40 +msgid "Backends" +msgstr "" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "" + +#: indexing.cpp:59 +msgid "Index" +msgstr "" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "" + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Αναζήτηση" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "" + +#: search.cpp:44 +msgid "Relevance" +msgstr "" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "" + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "" + +#: search.cpp:53 +msgid "No Limit" +msgstr "" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" + +#: status.cpp:118 +msgid "Start" +msgstr "Εκκίνηση" + +#: status.cpp:131 +msgid "Service not started." +msgstr "" + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" + +#: status.cpp:148 +msgid "Index information:" +msgstr "" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "" + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "" + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "" diff --git a/po/el/kerry.po b/po/el/kerry.po new file mode 100644 index 0000000..bd10f22 --- /dev/null +++ b/po/el/kerry.po @@ -0,0 +1,683 @@ +# translation of kerry.po to Greek +# +# Spiros Georgaras , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-20 12:28+0200\n" +"Last-Translator: Spiros Georgaras \n" +"Language-Team: Greek \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Σπύρος Γεωργαράς" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "sngeorgaras@otenet.gr" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Άλμπουμ: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Τίτλος: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Καλλιτέχνης: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Πλάτος: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Ύψος: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Τύπος χρώματος: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Φάκελος: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Συγγραφέας: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Σελίδες: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Ημερομηνία: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Σελίδες: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Σελίδες: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "" + +#: main.cpp:44 +msgid "A term to search" +msgstr "" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Βαθμοί: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Περιγραφή" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Αναζήτηση:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Τα πάντα" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Εφαρμογές" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Εικόνες" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Μέσο" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Ταξινόμηση κατά" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Τύπος" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Ημερομηνία" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Όνομα" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Σχετικότητα" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Αναζήτηση..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Εκτέλεση" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Κανένα θέμα" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Από" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Εφαρμογή:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Ημερομηνία: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Στο φάκελο" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Κενό" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "" + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "" + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" diff --git a/po/es/Makefile.am b/po/es/Makefile.am new file mode 100644 index 0000000..d3df28d --- /dev/null +++ b/po/es/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = es +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/es/kcmbeagle.po b/po/es/kcmbeagle.po new file mode 100644 index 0000000..0768ab3 --- /dev/null +++ b/po/es/kcmbeagle.po @@ -0,0 +1,236 @@ +# translation of kcmbeagle.po to Español +# +# santi , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-11-03 18:59+0100\n" +"Last-Translator: santi \n" +"Language-Team: Español \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Seleccione cual de los motores disponibles de beagle desea activar." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Motores" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indexado" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Motores" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "Estado del &demonio" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "General" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Iniciar el servicio de indexado de Beagle automáticamente" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Indexar datos mientras haya batería" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Indexar" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Indexar mi carpeta personal" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Añade cualquier carpeta adicional para incluirla en el indexado." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Nombre" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Añadir..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Privacidad" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Especifica cualquier recurso, tal como una carpeta o un patrón, que desee " +"excluir del indexado." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Tipo" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Seleccionar carpeta" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"¿Realmente desea eliminar esta carpeta de la lista de carpetas a incluir en " +"el indexado?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Eliminar carpeta" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Añadir recurso" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"¿Realmente desea eliminar este elemento de la lista de datos a excluir del " +"indexado?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Eliminar elemento" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "Bú&squeda" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Por favor, seleccione el recurso que desee excluir del indexado." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Carpeta:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Patrón de nombre de archivo:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Orden predeterminado de ordenación del resultado:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Fecha modificada" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Relevancia" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Define el orden predeterminado de ordenación al inicio." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Número máximo de resultados a mostrar:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Sin límite" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" +"Define cuantos resultados deberían mostrarse en una página de resultado." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" +"Muestra los resultados de búsqueda con detalles de forma predeterminada" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Accesos rápidos globales" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Búsqueda de Beagle Kerry" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Muestra diálogo de búsqueda" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Selección primaria de búsqueda" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Refrescar estado" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "El servicio de Beagle está ejecutándose. Pulse aquí para detenerlo." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "El servicio Beagle está detenido. Pulse aquí para iniciarlo." + +#: status.cpp:118 +msgid "Start" +msgstr "Iniciar" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Servicio no iniciado." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Versión del servicio Beagle: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Estado actual:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Información del índice:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "El servicio de Beagle ya se había detenido." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "El servicio de Beagle ya se estaba ejecutando." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "No se pudo iniciar el servicio de beagle." diff --git a/po/es/kerry.po b/po/es/kerry.po new file mode 100644 index 0000000..22dba3d --- /dev/null +++ b/po/es/kerry.po @@ -0,0 +1,708 @@ +# translation of kerry.po to Español +# +# santi , 2006. +# santi , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-17 16:46+0100\n" +"Last-Translator: santi \n" +"Language-Team: Español \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Novell Language" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "language@novell.com" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Álbum: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Título: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Anchura: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Altura: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipo de color: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Teléfono del trabajo: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Teléfono de casa: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Teléfono móvil: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocolo: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Hora de inicio: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Hora de finalización: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Carpeta: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diapositivas: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Páginas: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Palabras: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Categoría: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Versión: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Nombre del empaquetador: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Correo electrónico del empaquetador: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Ubicación: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Expandir" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Contraer" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Borrar historial de búsqueda" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configurar Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Búsqueda de Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Cuadro de diálogo de resultados de la búsqueda" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Buscar en selección principal" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Búsqueda de Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"¿Desea que Kerry se inicie automáticamente\n" +" al iniciar la sesión?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "¿Desea iniciar Kerry automáticamente?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&No iniciar" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"El proceso de ejecución diaria para actualizar el sistema\n" +"Se ha detectado el índice de la documentación de Beagle completa." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "El sistema puede volverse más lento de lo habitual" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Interfaz de Beagle para KDE" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Un término de búsqueda" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostrar el cuadro de diálogo de búsqueda al iniciar" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Puntuación: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descripción" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Borrar los términos y resultados de búsqueda" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Buscar:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Iniciar la búsqueda del término introducido" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Mostrando resultados %1 a %2 de %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Resultados anteriores" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostrar los resultados de búsqueda anteriores" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Resultados &siguientes" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostrar los resultados de búsqueda siguientes" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Mostrar" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Todo" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplicaciones" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Contactos" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documentos de Office" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversaciones" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Imágenes" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Medios" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Páginas Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Nombre del archivo/ruta" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Ordenar por tipo" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipo" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Fecha: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nombre" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevancia" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Fecha modificada" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Cualquier fecha" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Hoy" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Desde ayer" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Esta semana" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Este mes" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Este año" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Confi&gurar..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Abrir el diálogo de configuración" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" +"Al cerrar el cuadro de diálogo de búsqueda, el icono permanecerá en la bandeja " +"del sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Aplicaciones, contactos, conversaciones, archivos y más..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Sugerencias rápidas" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Puede utilizar mayúsculas y minúsculas; la búsqueda no las distingue." +"
- Para buscar términos opcionales, utilice OR. Por ejemplo: " +"George OR Ringo" +"
- Para excluir términos de búsqueda, utilice el signo de menos delante, " +"como -gatos" +"
- Para buscar una frase completa, utilice comillas. Por ejemplo: " +"\"Hay monstruos\"" +"
- Añada ext:tipo para indicar una extensión de archivo, por ejemplo: " +"ext:txt o ext: para no indicar extensión alguna." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Seleccione qué carpetas y recursos deberían indexarse - o no." +"
- Cambie el orden y el número de resultados que se muestran." +"
- Defina sus propios accesos rápidos para llamar al diálogo de búsqueda." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Abrir el diálogo de configuración" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "Encontrados %1 resultados." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "No hay resultados." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Mostrando los mejores %1 resultados de %2." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(todavía buscando)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Error al procesar la solicitud de «%1»." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "La causa más probable es que el daemon Beagle no esté en ejecución." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Iniciar automáticamente el daemon Beagle al iniciar sesión" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Haga clic para iniciar el daemon Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Buscando..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Ejecutar" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Última visualización: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Página sin título" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicada: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Entrada sin título" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Última modificación: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Ningún resumen especificado" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Ningún nombre conocido" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Recibido: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Sin asunto" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Persona desconocida" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplicación:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Fecha: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversación con %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Instalado en: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Tamaño instalado: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Tamaño descargado: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Mostrar en el gestor de archivos" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "En la carpeta" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Vacía" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Contiene 1 elemento\n" +"Contiene %n elementos" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Puntuación: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "No es posible iniciar Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "No es posible iniciar Evolution." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "No es posible iniciar Thunderbird." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "No se pudo iniciar KAddressBook." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "No es posible iniciar el daemon Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "No se han encontrado resultados para «%1»." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Ampliar la búsqueda puede producir más resultados." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Revise la ortografía de las palabras de búsqueda." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- El demonio Beagle se acaba de iniciar. Por favor, tengo paciencia hasta que " +"termine la indexación." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Contraer todo" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Expandir todo" diff --git a/po/fi/Makefile.am b/po/fi/Makefile.am new file mode 100644 index 0000000..b5f8c61 --- /dev/null +++ b/po/fi/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = fi +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/fi/kcmbeagle.po b/po/fi/kcmbeagle.po new file mode 100644 index 0000000..e81d2bb --- /dev/null +++ b/po/fi/kcmbeagle.po @@ -0,0 +1,237 @@ +# translation of kcmbeagle.po to Suomi +# +# Jyri Palokangas , 2006. +# Joonas Niilola , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-11-04 18:10+0200\n" +"Last-Translator: Joonas Niilola \n" +"Language-Team: Suomi \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Valitse, minkä taustaohjelman tietoja haluat Beaglen indeksoivan." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Taustaohjelmat" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indeksoi" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Taustaohjelmat" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Demonin tila" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Yleiset" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Käynnistä Beagle-indeksointipalvelu automaattisesti" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Indeksoi käytettäessä akkua" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Indeksi" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Indeksoi kotihakemistoni" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Lisää kansioita, jotka tulisi sisällyttää indeksointiin." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Nimi" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Lisää..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Yksityisyys" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Määritä kaikki resurssit, kuten kansiot tai kuviot, jotka haluat sulkea pois " +"indeksoinnista." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Tyyppi" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Valitse kansio" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Haluatko todella poistaa tämän kansion indeksoitavien kansioiden " +"luettelosta?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Poista kansio" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Lisää resurssi" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Haluatko todella poistaa tämän merkinnän ei indeksoitavien tietojen " +"luettelosta?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Poista merkintä" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Hae" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Valitse resurssi, jonka haluat sulkea pois indeksoinnista." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Kansio:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Tiedostonimen kuvio:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Tulosten oletusjärjestys:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Muokkausaika" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Asiayhteys" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Määritä oletusjärjestys käynnistettäessä." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Näytettävien tulosten enimmäismäärä:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Ei rajaa" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "Määritä, kuinka monta tulosta näytetään yhdellä tulossivulla." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Näytä tulokset lisätietojen kanssa oletuksena" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Yleiset oikopolut" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle haku" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Näytä hakuikkuna" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Hae ensisijaista valintaa" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Päivitä tila" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" +"Beagle-palvelu on tällä hetkellä käytössä. Napsauta tästä pysäyttääksesi sen." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" +"Beagle-palvelu on tällä hetkellä pysäytetty. Napsauta tästä käynnistääksesi " +"sen." + +#: status.cpp:118 +msgid "Start" +msgstr "Käynnistä" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Palvelua ei olla käynnistetty." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Beagle-palvelun versio: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Tämänhetkinen tila:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Indeksointitiedot:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Beagle-palvelu on jo pysäytetty." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Beagle-palvelu on jo käynnissä." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Beagle-demonin käynnistäminen ei onnistu." diff --git a/po/fi/kerry.po b/po/fi/kerry.po new file mode 100644 index 0000000..3b1d5dc --- /dev/null +++ b/po/fi/kerry.po @@ -0,0 +1,725 @@ +# translation of kerry.po to Suomi +# translation of fi.po to +# +# Jyri Palokangas , 2006. +# Janne Ahlskog , 2006. +# Joonas Niilola , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-04 12:55+0200\n" +"Last-Translator: Joonas Niilola \n" +"Language-Team: Suomi \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"Jyri Palokangas ," +"
Janne Ahlskog," +"
Erkka Hakkarainen," +"
Tom Himanen," +"
Jani-Matti Hätinen," +"
Jouni Hätinen," +"
Asko Isonokari," +"
Joonas Niilola ," +"
Ilkka Pirskanen ," +"
Ulla Pylkkänen," +"
Jami Saarikoski ," +"
Janne Tanskanen," +"
Jarno Tukiainen," +"
Ilkka Tuohela," +"
Juho Valkila," +"
Postituslista " + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "openSUSEa suomeksi " + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Albumi: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Otsikko: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artisti: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Leveys: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Korkeus: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Värityyppi: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Työpuhelin: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Kotipuhelin: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Matkapuhelin: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Yhteyskäytäntö: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Aloitusaika: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Lopetusaika: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Kansio: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Tekijä: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diat: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sivut: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Sanat: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Luokka: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Versio: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Paketoijan nimi: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Paketoijan sähköposti: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Sijainti: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Laajenna" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Supista" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Tyhjennä hakuhistoria" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Määritä Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle haku" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Näytä hakuikkuna" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Hae ensisijaista valintaa" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle haku (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Tulisiko Kerry käynnistää automaattisesti\n" +"kirjautumisesi yhteydessä?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Käynnistä Kerry automaattisesti?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "Älä &käynnistä" + +# fuzzy +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Päivittäin ajettava järjestelmän dokumentaation \n" +"päivitysprosessi havaittiin." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Järjestelmä voi olla hitaampi kuin yleensä." + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-käyttöliittymä Beaglelle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Hakutermi" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Näytä hakuikkuna käynnistettäessä" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Osumia: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Kuvaus" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Tyhjennä hakutermi ja tulokset" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "Et&si:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Käynnistä haku annetulla termillä" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Tulokset %1 -> %2 / %3 esillä." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "Aiem&mat tulokset" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Näytä aiemmat hakutulokset" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Seuraavat &tulokset" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Näytä seuraavat hakutulokset" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Näytä" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Kaikki" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Sovellukset" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Yhteystiedot" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Toimiston asiakirjat" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Keskustelut" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Kuvat" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Media" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Websivut" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Tiedosto/Polun nimi" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Järjestä" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tyypin mukaan" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Päiväyksen mukaan" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nimen mukaan" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Asiayhteyden mukaan" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Viimeksi muokattu" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Mikä tahansa päiväys" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Tänään" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Eilisestä lähtien" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Tällä viikolla" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Tällä kuukaudella" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Tällä vuodella" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Mää&ritä..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Avaa määritysikkuna" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Sulje hakuikkuna, kuvake jää ilmoitusalueelle" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Sovellukset, yhteystiedot, keskustelut, tiedostot ja muut..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Nopeat vihjeet" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Voit käyttää pieniä ja suuria kirjaimia, haku ei erottele niitä." +"
- Voit tehdä vaihtoehtoisia hakuja, käytä tähän OR valitsinta. esimerkiksi " +"Mikko OR Ilkka" +"
- Jos haluat kieltää tiettyjä hakutermejä, käytä miinusmerkkiä edessä, " +"esimerkiksi -kissat" +"
- Hae lauseita lisäämällä lainausmerkit, esimerkiksi " +"\"ollako vai eikö olla\"" +"
- Lisää ext:tyyppi määrittääksesi tiedostotunnisteen, esimerkiksi " +"ext:txt tai ext: ei määritystä." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Valitse mitä kansioita ja resursseja tullaan indeksoimaan - tai jätetään " +"indeksoimatta." +"
- Muuta järjestystapaa ja näytettävien osumien määrää." +"
- Määritä omat pikanäppäimet hakuikkunalle." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Avaa määritysikkuna" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 tulosta löydettiin." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Ei tuloksia." + +# Vanha: "Parhaat %1 tulosta %2 näytetään." +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Parhaat %1 (/ %2) esillä." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(haetaan yhä)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "\"%1\" kysely epäonnistui." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Todennäköinen syy on se, että Beagle-demoni ei ole käynnissä." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Käynnistä Beagle-demoni automaattisesti kirjautumisen yhteydessä" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Napsauta tästä käynnistääksesi Beagle-demonin" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Etsitään..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Suorita" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Viimeksi avattu: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "Verkko-osoite:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Nimeämätön sivu" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Julkaistu: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblogi:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Nimeämätön merkintä" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Viimeksi muokattu: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Ei yhteenvetoa määritetty" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Nimi ei ole tiedossa" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Vastaanotettu: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Ei aihetta" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Lähettäjä" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Tuntematon henkilö" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Sovellus:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Päiväys: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Keskustelu %1 kanssa" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Asennettu: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Koko asennettuna: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Latauskoko: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Näytä tiedostohallinnassa" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Kansiossa" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Tyhjä" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Sisältää 1 kohteen\n" +"Sisältää %n kohdetta" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Osumia: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboyn käynnistäminen ei onnistu." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolutionin käynnistäminen ei onnistu." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Tomboyn käynnistäminen ei onnistu." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "KAddressBookin käynnistäminen ei onnistu." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle-demonin käynnistäminen ei onnistu." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Tuloksia haulle \"%1\" ei löydetty." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Laajempi hakualue voi tuottaa enemmän tuloksia." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Tarkista hakusanasi mahdollisten kirjoitusvirheiden varalta." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Beagle-demoni käynnistettiin äsken. Odota kärsivällisesti, kunnes indeksointi " +"on valmis." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Supista kaikki" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Laajenna kaikki" diff --git a/po/fr/Makefile.am b/po/fr/Makefile.am new file mode 100644 index 0000000..1e563b7 --- /dev/null +++ b/po/fr/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = fr +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/fr/kerry.po b/po/fr/kerry.po new file mode 100644 index 0000000..3e39b22 --- /dev/null +++ b/po/fr/kerry.po @@ -0,0 +1,828 @@ +# SOME DESCRIPTIVE TITLE. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: base\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2005-03-09 13:54+0100\n" +"Last-Translator: Novell Language \n" +"Language-Team: Novell Language \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.9\n" + +#: _translatorinfo.cpp:1 +#, fuzzy +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"_: NAME OF TRANSLATORS\n" +"Your names" + +#: _translatorinfo.cpp:3 +#, fuzzy +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album : %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titre : %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artiste : %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Largeur : %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Hauteur : %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Type de couleur : %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Téléphone professionnel : %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Téléphone personnel : %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Téléphone portable : %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM : %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo : %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN : %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber : %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ : %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise : %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocole : %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Heure de début : %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Heure de fin : %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Dossier : %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Auteur : %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diapositives : %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Pages : %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Mots : %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Date : %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Emplacement : %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Pages : %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Emplacement : %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Effacer l'historique de la recherche" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configurer Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Recherche Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Afficher la boîte de dialogue de recherche" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Rechercher la principale sélection" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Recherche Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Kerry doit-il démarrer\n" +"automatiquement à votre connexion ?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Démarrer automatiquement Kerry ?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Ne pas démarrer" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Frontal KDE à Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Terme à rechercher" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Afficher la boîte de dialogue au démarrage" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Score : 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Description" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Effacer le terme à rechercher et les résultats" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Rechercher :" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Démarrer la recherche du mot indiqué" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Les résultats %1 à %2 de %3 s'affichent." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Résultats précédents" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Afficher les résultats précédents" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Résultats suivants" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Afficher les résultats suivants" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Tout" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Applications" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documents Office" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversations" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Images" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Média" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Pages Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Trier par" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Type" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Date : %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nom" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Pertinence" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Date de modification" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Configurer Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" +"Fermer la boîte de dialogue de recherche (une icône reste dans la barre " +"système)" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Conseils rapides" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Vous pouvez utiliser des majuscules et des minuscules ; la recherche n'est " +"pas sensible à la casse." +"
- Pour rechercher des termes facultatifs, utilisez OR. Ex. : " +"George OR Ringo" +"
- Pour exclure des termes de la recherche, utilisez le symbole moins devant " +"le terme. Ex. : -chats" +"
- Lorsque vous recherchez une expression, utilisez des guillemets. Ex. : " +"\"Il y a des dragons\"" +"
- Ajoutez ext:type pour spécifier une extension de fichier. Ex. : " +"ext:txt ou ext: pour aucun" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "%1 meilleurs résultats de %2 affichés." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Aucun résultat." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "%1 meilleurs résultats de %2 affichés." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Échec de la requête pour \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Il est probable que le démon Beagle ne s'exécute pas." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Démarrer le démon Beagle automatiquement à la connexion ?" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Cliquez pour démarrer le démon Beagle." + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Recherche..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Exécuter" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Dernier affichage : %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL :" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Page sans titre" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publication : %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Journal Web :" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Entrée sans titre" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Dernière modification : %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Aucune résumé indiqué" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Aucun nom connu" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Réception : %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Aucun objet" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Personne inconnue" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Application :" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Date : %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversation avec %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Heure de fin : %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Heure de fin : %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Révéler dans le Gestionnaire de fichiers" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Dans le dossier" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Vide" + +#: searchdlg.cpp:1053 +#, fuzzy, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"_n: contient un élément\n" +"Contient %n éléments" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Score : %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Impossible de démarrer Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Impossible de démarrer Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Impossible de démarrer Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Impossible de démarrer Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Impossible de démarrer le démon Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Aucun résultat n'a été trouvé pour \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- Vous devez vérifier l'orthographe des mots recherchés en cas d'erreur " +"involontaire." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Rechercher" + +#~ msgid "&Indexing" +#~ msgstr "&Indexer" + +#~ msgid "General" +#~ msgstr "Général" + +#~ msgid "Default result sort order:" +#~ msgstr "Ordre de tri des résultats par défaut :" + +#~ msgid "Date Modified" +#~ msgstr "Date de modification" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Nombre maximal de résultats à afficher :" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Définissez le nombre de résultats à afficher par page." + +#~ msgid "Global Shortcuts" +#~ msgstr "Raccourcis globaux" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Démarrer automatiquement la recherche et l'indexation de services" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indexer" + +#~ msgid "Index my home folder" +#~ msgstr "Indexer mon dossier privé" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Ajoutez un autre dossier à indexer." + +#~ msgid "Add..." +#~ msgstr "Ajouter..." + +#~ msgid "Privacy" +#~ msgstr "Confidentialité" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Indiquez une ressource à ne pas indexer (par exemple, un dossier ou un modèle)." + +#~ msgid "Select Folder" +#~ msgstr "Sélectionner un dossier" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Voulez-vous vraiment retirer cet élément de la liste des dossiers à indexer ?" + +#~ msgid "Remove Folder" +#~ msgstr "Retirer un dossier" + +#~ msgid "Add Resource" +#~ msgstr "Ajouter une ressource" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Voulez-vous vraiment retirer cet élément de la liste des données à ne pas indexer ?" + +#~ msgid "Remove Item" +#~ msgstr "Retirer un élément" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "Impossible de démarrer le démon Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Sélectionnez une ressource à ne pas indexer." + +#~ msgid "Folder:" +#~ msgstr "Dossier :" + +#~ msgid "File name pattern:" +#~ msgstr "Modèle de nom de fichier :" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Trier par" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Trier par" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Pertinence" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Définissez l'ordre de tri par défaut au démarrage. Vous pouvez inverser l'ordre de tri dans le menu contextuel de la liste de résultats." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Les résultats xx à xx de xxx s'affichent." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Vous pouvez modifier l'étendue de la recherche à l'aide de la zone de liste \"Dans\".
  En étendant la recherche, vous pouvez obtenir davantage de résultats." + +#~ msgid "&Within:" +#~ msgstr "&Dans :" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Définir les sources de recherche" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Applications" + +#~ msgid "&Find" +#~ msgstr "&Rechercher" + +#~ msgid "Could not start instant message log viewer." +#~ msgstr "Impossible de démarrer la visionneuse de journaux sur les messages instantanés." diff --git a/po/ga/Makefile.am b/po/ga/Makefile.am new file mode 100644 index 0000000..6c2ce5e --- /dev/null +++ b/po/ga/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = ga +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/ga/kcmbeagle.po b/po/ga/kcmbeagle.po new file mode 100644 index 0000000..cdfe527 --- /dev/null +++ b/po/ga/kcmbeagle.po @@ -0,0 +1,234 @@ +msgid "" +msgstr "" +"Project-Id-Version: kdereview/kcmbeagle.po\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-19 08:22-0500\n" +"Last-Translator: Kevin Patrick Scannell \n" +"Language-Team: Irish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Roghnaigh ceann de na hinnill Beagle le cumasú." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Innill" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Innéacsú" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Innill" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "Stádas an &Deamhain" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Ginearálta" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Tosaigh seirbhís innéacsaithe Beagle go huathoibríoch" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Innéacsaigh sonraí agus cumhacht chadhnra in úsáid" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Innéacsaigh" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Innéacsaigh m'fhillteán baile" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Iontráil fillteáin bhreise le cur san innéacs." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Ainm" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Cuir Leis..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Príobháideacht" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Sonraigh aon acmhainn, mar shampla fillteán nó patrún, is mian leat fágáil as " +"an innéacs." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Cineál" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Roghnaigh Fillteán" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"An bhfuil tú cinnte gur mian leat an fillteán seo a bhaint as an liosta " +"fillteán le cur san innéacs?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Bain Fillteán" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Cuir Acmhainn Leis" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"An bhfuil tú cinnte gur mian leat an mhír seo a bhaint as an liosta sonraí " +"le fágáil as an innéacs?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Bain Mír" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Cuardach" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Roghnaigh acmhainn is mian leat fágáil as an innéacs." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Fillteán:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Patrún ainm comhaid:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Ord réamhshocraithe na dtorthaí:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Dáta Mionathraithe" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Ábharthacht" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Socraigh an t-ord réamhshocraithe sórtála ag am tosaithe." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Uasmhéid na dtorthaí le taispeáint:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Gan Teorainn" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "Cé mhéad toradh a thaispeánfar ar gach leathanach torthaí." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Taispeáin torthaí an chuardaigh le mionsonraí de réir réamhshocraithe" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Aicearraí Comhchoiteanna" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Cuardach Pocadán Ciarraí" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Taispeáin Dialóg Chuardaigh" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Cuardaigh an Príomhroghnúchán" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Stádas Athnuachana" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" +"Tá seirbhís Beagle ag rith faoi láthair. Cliceáil anseo chun é a stopadh." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "Tá seirbhís Beagle stoptha anois. Cliceáil anseo chun é a thosú." + +#: status.cpp:118 +msgid "Start" +msgstr "Tosaigh" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Níor tosaíodh an tseirbhís." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Leagan seirbhíse Beagle: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Stádas reatha:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Eolas faoin innéacs:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Bhí seirbhís Beagle stoptha cheana." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Tá seirbhís Beagle ag rith cheana." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Níorbh fhéidir seirbhís Beagle a thosú." + +#~ msgid "Show results by default as big tiles" +#~ msgstr "De réir réamhshocraithe, taispeáin na torthaí mar thíleanna móra" diff --git a/po/ga/kerry.po b/po/ga/kerry.po new file mode 100644 index 0000000..7772bce --- /dev/null +++ b/po/ga/kerry.po @@ -0,0 +1,753 @@ +msgid "" +msgstr "" +"Project-Id-Version: kdereview/kerry.po\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-04-08 12:41-0500\n" +"Last-Translator: Kevin Patrick Scannell \n" +"Language-Team: Irish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Kevin Scannell" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "scannell at slu dot edu" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Albam: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Teideal: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Ealaíontóir: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Leithead: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Airde: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Cineál datha: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Fón (obair): %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Fón (baile): %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Fón póca: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Prótacal: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Am tosaithe: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Am deiridh: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Fillteán: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Údar: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Sleamhnáin: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Leathanaigh: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Focail: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Catagóir: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Leagan: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Ainm an phacáisteora: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Seoladh r-phoist an phacáisteora: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Suíomh: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Bánaigh Stair an Chuardaigh" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Cumraigh Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Cuardach Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Taispeáin Dialóg Chuardaigh" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Cuardach Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Tosaigh Kerry go hUathoibríoch?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Ná Tosaigh" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Comhéadan KDE ar Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Téarma le cuardach" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Taispeáin dialóg chuardaigh ag am tosaithe" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Scór: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Cur Síos" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Cuardach:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "Torthaí &Roimhe Seo" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Taispeáin na torthaí cuardaigh roimhe seo" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Gach Rud" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Feidhmchláir" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Cáipéisí Oifige" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Comhráite" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Íomhánna" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Meáin" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Leathanaigh Ghréasain" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Ainm Comhaid/Conaire" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sórtáil De Réir" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Cineál" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Dáta" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Ainm" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Ábharthacht" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Dáta Athraithe" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Dáta Ar Bith" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Inniu" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Ó Inné" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "An tSeachtain Seo" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "An Mhí Seo" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "I mBliain" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Cumrai&gh..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Oscail an dialóg chumraíochta" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Dún an dialóg chuardaigh; fanfaidh deilbhín i dtráidire an chórais" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Feidhmchláir, Teagmhálacha, Comhráite, Comhaid, agus níos mó..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Leideanna Gasta" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Oscail an dialóg chumraíochta" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Gan torthaí.." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Cliceáil chun deamhan Beagle a thosú" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Ag cuardach..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Rith" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Feicthe: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Leathanach Gan Teideal" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Foilsithe: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Blag:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Iontráil Gan Teideal" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Athrú is déanaí: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Faighte: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Gan Ábhar" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Ó" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Duine Anaithnid" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Feidhmchlár:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Dáta: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Comhrá Le %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Suiteáilte ar: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Méid íosluchtaithe: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Taispeáin i mBainisteoir na gComhad" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "I bhFillteán" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Folamh" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"%n mhír ann\n" +"%n mhír ann\n" +"%n mhír ann\n" +"%n mír ann\n" +"%n mír ann" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Scór: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Níorbh fhéidir Tomboy a thosú." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Níorbh fhéidir Evolution a thosú." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Níorbh fhéidir Thunderbird a thosú." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Níorbh fhéidir KAddressBook a thosú." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Níorbh fhéidir deamhan Beagle a thosú." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Cuardach" + +#~ msgid "&Indexing" +#~ msgstr "&Innéacsú" + +#~ msgid "General" +#~ msgstr "Ginearálta" + +#~ msgid "Default result sort order:" +#~ msgstr "Ord réamhshocraithe na dtorthaí:" + +#~ msgid "Date Modified" +#~ msgstr "Dáta Athraithe" + +#~ msgid "Global Shortcuts" +#~ msgstr "Aicearraí Uilechoiteann" + +#~ msgid "Index" +#~ msgstr "Innéacs" + +#~ msgid "Index my home folder" +#~ msgstr "Innéacsaigh m'fhillteán baile" + +#~ msgid "Add..." +#~ msgstr "Cuir Leis..." + +#~ msgid "Privacy" +#~ msgstr "Príobháideachas" + +#~ msgid "Select Folder" +#~ msgstr "Roghnaigh Fillteán" + +#~ msgid "Remove Folder" +#~ msgstr "Bain Fillteán" + +#~ msgid "Add Resource" +#~ msgstr "Cuir Acmhainn Leis" + +#~ msgid "Remove Item" +#~ msgstr "Bain Mír" + +#~ msgid "Start" +#~ msgstr "Tosaigh" + +#~ msgid "Current status:\n" +#~ msgstr "Stádas reatha:\n" + +#~ msgid "Could not start beagle service." +#~ msgstr "Níorbh fhéidir seirbhís Beagle a thosú." + +#~ msgid "Folder:" +#~ msgstr "Fillteán:" + +#~ msgid "Sort by Type" +#~ msgstr "Sórtáil De Réir Cineáil" + +#~ msgid "Sort by Date" +#~ msgstr "Sórtáil De Réir Dáta" + +#~ msgid "Sort by Relevance" +#~ msgstr "Sórtáil De Réir Ábharthachta" + +#~ msgid "Add Application Paths" +#~ msgstr "Cuir Conairí Feidhmchláir Leis" + +#~ msgid "&Find" +#~ msgstr "&Aimsigh" diff --git a/po/gl/Makefile.am b/po/gl/Makefile.am new file mode 100644 index 0000000..73c415d --- /dev/null +++ b/po/gl/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = gl +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/gl/kerry.po b/po/gl/kerry.po new file mode 100644 index 0000000..d2eee69 --- /dev/null +++ b/po/gl/kerry.po @@ -0,0 +1,857 @@ +# translation of kerry.po to Galician +# +# mvillarino , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-07-08 08:46+0200\n" +"Last-Translator: mvillarino \n" +"Language-Team: Galician \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "mvillarino" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "mvillarino@users.sourceforge.net" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Álbum: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Título: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Largura: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Altura: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipo de cor: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Teléfone do traballo: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Teléfone da casa: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Teléfone móbil: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocolo: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Hora de comezo: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Hora de remate: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Cartafol: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diapositivas: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Páxinas: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Palabras: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Data: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Localizazón: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Páxinas: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Localizazón: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Limpar o Histórico de Procuras" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configurar Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Pesquisas Beagle mediante Kerry" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Mostrar Diálogo de Procura" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Procurar a Seleczón Primária" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Pesquisa Beagle con Kerry (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Debe Kerry ser iniciado automaticamente\n" +"cando aceda ao sistema?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Iniciar Automaticamente a Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Non iniciar" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Interface para Beagle de KDE" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Un termo para procurar" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostrar diálogo de pesquisas ao iniciar" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Pontuazón: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descrizón" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Limpa o termo da pesquisa e os resultados" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Procurar:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Comeza a procura do termo indicado" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Mostran-se os resultados do %1 ao %2 dun total de %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "Resultados &Anteriores" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostra os resultados da pesquisa anterior" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Seguintes Resultados" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostra os resultados da seguinte pesquisa" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Calquer cousa" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplicazóns" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documento Ofimático" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversas" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Imaxes" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Multimédia" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Páxinas Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Nome de Ficheiro/Rota" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Ordenar Por" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipo" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Data: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nome" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Releváncia" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Data de Modificazón" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Configurar Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, fuzzy, no-c-format +msgid "Open the configuration dialog" +msgstr "Abrir diálogo de configurazón" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Pecha o diálogo de procura, manterá-se un ícone na bandexa do sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Axudas Breves" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Pode usar maiúsculas e minúscula; a pesquisa non é sensíbel á caixa." +"
Para pesquisar termos opcionais, use OR, exemplo Xurxo ou Fix" +"
- Para excluir termos da pesquisa, poña-lles o signo menos en diante, como " +"-gatos" +"
- Cando pesquise unha frase, engada aspas, exemplo: " +"\"Perigo, reintegracionistas\"" +"
- Engada ext:tipo para especificar unha extensión de ficheiro, exemplo: " +"ext:odt ou ext: para non indicar nengunha" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Escolla que cartafoles e recursos han ser indexados - ou non." +"
- Cámbie a orde de clasificazón e o número de resultados mostrados." +"
- Defina os seus próprios atallos para chamar ao diálogo de pesquisas." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Abrir diálogo de configurazón" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Mostran-se os %1 mellores resultados de %2." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Sen resultados." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Mostran-se os %1 mellores resultados de %2." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "A pesquisa de \"%1\" fallou." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "A causa mais probábel é que o servizo Beagle non estexa a se executar." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Iniciar automaticamente o servizo Beagle ao aceder ao sistema" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Prema para iniciar o servizo Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "A procurar..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Executar" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Ultima consulta: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Páxina Sen Título" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicada: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Entrada sen Título" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Última modificazón: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Non se Especificou Resumo" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Sen Nome Coñecido" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Recebido: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Sen Asunto" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Persoa Descoñecida" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplicazón:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversa con %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Hora de remate: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Hora de remate: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Mostrar no Xestor de Ficheiros" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "No Cartafol" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Valeiro" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Contén 1 ítem\n" +"Contén %n ítens" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Pontuazón: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Non foi posíbel iniciar Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Non foi posíbel iniciar Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Non foi posíbel iniciar Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Non foi posíbel iniciar Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Non foi posíbel iniciar o servizo Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Non se atoparon resultados para \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- Debera verificar a ortografia dos termos da procura para evitar erros." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- O servizo Beagle acaba de ser iniciado. Teña paciéncia até que remate a " +"indexazón." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Procurar" + +#~ msgid "&Indexing" +#~ msgstr "&Indexar" + +#~ msgid "&Backends" +#~ msgstr "In&fra-estruturas" + +#~ msgid "&Daemon Status" +#~ msgstr "Estado do Servi&zo" + +#~ msgid "General" +#~ msgstr "Xeral" + +#~ msgid "Default result sort order:" +#~ msgstr "Orden por omisión para clasificar os resultados:" + +#~ msgid "Date Modified" +#~ msgstr "Data de Modificazón" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Número máximo de resultados mostrados:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Define cantos resultados serán mostrados por cada páxina." + +#~ msgid "Global Shortcuts" +#~ msgstr "Atallos Globais" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Iniciar automaticamente os servizos de procura e indexazón" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indexar" + +#~ msgid "Index my home folder" +#~ msgstr "Indexar o cartafol persoal" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Engadir calquer cartafol adicional na indexazón." + +#~ msgid "Add..." +#~ msgstr "Engadir..." + +#~ msgid "Privacy" +#~ msgstr "Privacidade" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Sinale calquer recurso, como cartafol ou patrón, que desexa excluir da indexazón." + +#~ msgid "Select Folder" +#~ msgstr "Escolla o Cartafol" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Desexa realmente quitar este cartafol da lista de cartafois a indexar?" + +#~ msgid "Remove Folder" +#~ msgstr "Quitar Cartafol" + +#~ msgid "Add Resource" +#~ msgstr "Engadir Recurso" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Desexa realmente quitar este ítem da lista de dados a ser excluidos da indexazón?" + +#~ msgid "Remove Item" +#~ msgstr "Quitar Ítem" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "Escoller cais dos servizos Beagle disponíbeis quer habilitar." + +#~ msgid "Backends" +#~ msgstr "Infra-estruturas" + +#~ msgid "Refresh Status" +#~ msgstr "Anovar Estado" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "O servizo Beagle está a executar-se. Prema aqui para pará-lo." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "O servizo Beagle está parado. Prema aqui para iniciá-lo." + +#~ msgid "Start" +#~ msgstr "Iniciar" + +#~ msgid "Service not started." +#~ msgstr "Servizo non iniciado." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Versión do servizo Beagle: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Estado actual:\n" + +#~ msgid "Index information:" +#~ msgstr "Informazón de Indexazón:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "O servizo Beagle xa estaba parado." + +#~ msgid "Beagle service already running." +#~ msgstr "O servizo Beagle xa está a executar-se." + +#~ msgid "Could not start beagle service." +#~ msgstr "Non foi posíbel iniciar o servizo Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Escolla un recurso que desexe excluir da indexazón." + +#~ msgid "Folder:" +#~ msgstr "Cartafol:" + +#~ msgid "File name pattern:" +#~ msgstr "Patrón de nome de ficheiro:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Ordenar Por" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Ordenar Por" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Releváncia" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Defina a orden por omisión para a clasificación no início. Pode cambiá-la no menu de contexto da lista de resultados." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Mostran-se os resultados de xx através xx de xxx." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Pode cambiar o ámbito da sua pesquisa usando a lista \"Que Sexa\".
  Un ámbito mais amplo produz mellores resultados." + +#~ msgid "&Within:" +#~ msgstr "Que &Sexa:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Define en que fontes debe pesquisar" + +#~ msgid "Add Application Paths" +#~ msgstr "Engadir Rotas de Aplicazóns" + +#~ msgid "&Find" +#~ msgstr "Pe&squisar" diff --git a/po/hu/Makefile.am b/po/hu/Makefile.am new file mode 100644 index 0000000..a60c4c4 --- /dev/null +++ b/po/hu/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = hu +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/hu/kerry.po b/po/hu/kerry.po new file mode 100644 index 0000000..8d83e39 --- /dev/null +++ b/po/hu/kerry.po @@ -0,0 +1,822 @@ +# translation of hu.po to Hungarian +# Kéménczy Kálmán, 2006. +# Kéménczy Kálmán, 2006. +msgid "" +msgstr "" +"Project-Id-Version: hu\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-03-21 14:16+0100\n" +"Last-Translator: Kéménczy Kálmán\n" +"Language-Team: Hungarian \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-Generator: KBabel 1.10.2\n" + +#: _translatorinfo.cpp:1 +#, fuzzy +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"_: NAME OF TRANSLATORS\n" +"Szabolcs Varga, Kálmán Kéménczy" + +#: _translatorinfo.cpp:3 +#, fuzzy +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" +"_: EMAIL OF TRANSLATORS\n" +"shirokuma@shirokuma.hu" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Cím: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Előadó: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Szélesség: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Magasság: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Színtípus: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Céges telefon: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Otthoni telefon: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiltelefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokoll: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Kezdési idő: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Befejezési idő: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Mappa: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Szerző: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diák száma: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Oldalak száma: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Szavak száma: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Dátum: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Hely: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Oldalak száma: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Hely: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Keresési előzmények törlése" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry beállítása..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle-kereső" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Keresési párbeszédablak megjelenítése" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Keresés az elsődleges kijelölésben" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle-kereső (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Elinduljon a Kerry automatikusan\n" +"bejelentkezéskor?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Elinduljon automatikusan a Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Ne induljon el" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE felület a Beagle keresőhöz" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Keresett kifejezés" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Keresési párbeszédablak megjelenítése induláskor" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Eredmény: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Leírás" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "A keresési kifejezés és eredmények bezárása" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Keresés:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "A beírt kifejezés keresésének megkezdése" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "%3 találat közül %1 és %2 közötti eredmények láthatók." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Korábbi eredmények" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "A korábbi keresési eredmények megjelenítése" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Kö&vetkező eredmények" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Következő keresési eredmények megjelenítése" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Minden" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Alkalmazások" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Irodai dokumentumok" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Párbeszédek" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Képek" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Média" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Weboldalak" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Rendezés alapja" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Típus" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Dátum: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Név" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevancia" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Módosítás dátuma" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Kerry beállítása..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "A keresési párbeszédablak bezárása; egy ikon ottmarad a tálcán" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Gyorstippek" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Szabadon használhat kis- és nagybetűket, mivel a keresés ezeket nem veszi " +"figyelembe." +"
- Feltételek megadásához használja az OR kifejezést. pl. Roy OR Ádám" +"
- A keresési feltételből való kihagyáshoz használja a mínusz jelet, pl. " +"-macska" +"
- Amennyiben kifejezésre kíván rákeresni, használjon idéző jeleket. pl.: " +"\"Egy gyűrű mind felett\"" +"
- Megadott kiterjesztésű fájlok kereséséhez használja az ext:típus " +"kifejezést, pl:: ext:txt vagy ext: a kiterjesztés nélküli " +"állományokhoz." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "%2 találat közül a legjobb %1 látható." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Nincs találat." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "%2 találat közül a legjobb %1 látható." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "\"%1\" lekérdezése nem sikerült." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Valószínűleg a Beagle démon nem fut." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "A Beagle démon automatikus indítása bejelentkezéskor." + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Kattintson ide a Beagle démon elindításához" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Keresés..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Futtatás" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Utolsó megtekintés: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Névtelen oldal" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Közzététett: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Névtelen bejegyzés" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Utolsó módosítás: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Nincs megadva összegzés" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Nincs ismert név" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Fogadott: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Nincs tárgy" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Feladó" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Ismeretlen személy" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Alkalmazás:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Dátum: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Párbeszéd %1 felé" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Befejezési idő: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Befejezési idő: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Megjelenítés a Fájlkezelőben" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Mappa:" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Üres" + +#: searchdlg.cpp:1053 +#, fuzzy, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"_n: 1 elemet tartalmaz\n" +"%n elemet tartalmaz" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Eredmény: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "A Tomboy elindítása nem sikerült." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Az Evolution elindítása nem sikerült." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "A Tomboy elindítása nem sikerült." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "A Tomboy elindítása nem sikerült." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "A Beagle démon elindítása nem sikerült." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "\"%1\" nem eredményezett találatot." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- Érdemes megnézni, hogy nem gépelte-e véletlenül el a keresett szavak " +"valamelyikét." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Keresés" + +#~ msgid "&Indexing" +#~ msgstr "&Indexelés" + +#~ msgid "General" +#~ msgstr "Általános" + +#~ msgid "Default result sort order:" +#~ msgstr "Alapértelmezett eredményrendezési sorrend:" + +#~ msgid "Date Modified" +#~ msgstr "Módosítás dátuma" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Megjelenített eredmények maximális száma:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Azt adja meg, egy oldalon maximum hány eredmény látsszon." + +#~ msgid "Global Shortcuts" +#~ msgstr "Globális gyorsbillentyűk" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Keresési és indexelési szolgáltatások &automatikus indítása" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indexelés" + +#~ msgid "Index my home folder" +#~ msgstr "Saját könyvtár indexelése" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Vegye fel az összes többi indexelni kívánt könyvtárat." + +#~ msgid "Add..." +#~ msgstr "Hozzáadás..." + +#~ msgid "Privacy" +#~ msgstr "Személyes adatok védelme" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Adja meg az összes olyan erőforrást (például mappát vagy mintát), amelyet ki kíván hagyni az indexelésből." + +#~ msgid "Select Folder" +#~ msgstr "Mappa kiválasztása" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Valóban eltávolítja ezt a mappát az indexelni kívántak listájából?" + +#~ msgid "Remove Folder" +#~ msgstr "Mappa eltávolítása" + +#~ msgid "Add Resource" +#~ msgstr "Erőforrás hozzáadása" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Valóban eltávolítja ezt a mappát az indexelésből kizárni kívántak listájából?" + +#~ msgid "Remove Item" +#~ msgstr "Tétel eltávolítása" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "A Beagle démon elindítása nem sikerült." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Adja meg, hogy milyen erőforrásokat kíván kihagyni az indexelésből." + +#~ msgid "Folder:" +#~ msgstr "Mappa:" + +#~ msgid "File name pattern:" +#~ msgstr "Fájlnévminta:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Rendezés alapja" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Rendezés alapja" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Relevancia" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Adja meg az indításkori alapértelmezett rendezési sorrendet. Az eredményrendezési sorrend az eredménylista környezetérzékeny menüjében módosítható." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "xxx-ből xx-től xx-ig látható." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- A keresés hatóköre a \"Hatókör\" listával változtatható meg.
  A szélesebb hatókörű keresés több találatot eredményezhet." + +#~ msgid "&Within:" +#~ msgstr "&Hatókör:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Adja meg, hogy milyen forrásokban kell keresni" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Alkalmazások" + +#~ msgid "&Find" +#~ msgstr "&Keresés" diff --git a/po/it/Makefile.am b/po/it/Makefile.am new file mode 100644 index 0000000..0d5c097 --- /dev/null +++ b/po/it/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = it +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/it/kerry.po b/po/it/kerry.po new file mode 100644 index 0000000..8ea1ed3 --- /dev/null +++ b/po/it/kerry.po @@ -0,0 +1,817 @@ +# translation of kerry.po to Italian +# +# Nicola Ruggero , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-05-16 14:25+0200\n" +"Last-Translator: Nicola Ruggero \n" +"Language-Team: Italian \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.2\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Nicola Ruggero,Novell Language" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "nixprog.adsl@tiscali.it" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titolo: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Larghezza: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Altezza: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipo di colore: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefono ufficio: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefono abitazione: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Telefono cellulare: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocollo: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Ora di inizio: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Ora di fine: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Cartella: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autore: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Diapositive: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Pagine: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Parole: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Data: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Posizione: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Pagine: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Posizione: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Cancella cronologia ricerche" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configura Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Ricerca Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Mostra finestra di dialogo Cerca" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Cerca selezione primaria" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Ricerca Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Vuoi che Kerry venga avviato automaticamente\n" +"all'accesso?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Avvio automaticamente Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Non avviare" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Front-end KDE di Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Un termine da cercare" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostra finestra di dialogo di ricerca all'avvio" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Punteggio: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descrizione" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Cancella i risultati e il termine di ricerca" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "C&erca:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Avvia la ricerca del termine immesso" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Vengono visualizzati i risultati %1 attraverso %2 di %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Risultati precedenti" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostra i risultati di ricerca precedenti" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "R&isultati successivi" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostra i risultati di ricerca successivi" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Tutto" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Applicazioni" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documenti Office" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversazioni" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Immagini" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Supporto" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Pagine Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Ordina per" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipo" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Data: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nome" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Pertinenza" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Data ultima modifica" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Configura Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" +"Chiude la finestra di dialogo di ricerca. Rimane visualizzata un'icona nel " +"vassoio di sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Suggerimenti" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"-Puoi utilizzare lettere maiuscole e minuscole, la ricerca non le distingue." +"
- Per cercare termini opzionali, usa OR, ad esempio: Mario OR Luca" +"
- Per escludere alcuni termini di ricerca, aggiungi il segno meno davanti " +"al termine desiderato, ad esempio -gatti" +"
- Per cercare una frase, racchiudila tra virgolette, ad esempio: " +"\"I draghi esistono\"" +"
- Per specificare un estensione di file, aggiungi ext:tipo, ad esempio: " +"ext:txt oppure solo ext: per non specificare alcuna estensione" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Vengono visualizzati i migliori %1 risultati di %2." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Nessun risultato." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Vengono visualizzati i migliori %1 risultati di %2." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Impossibile trovare \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "È possibile che il demone Beagle non sia in esecuzione." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Avvia automaticamente il demone Beagle all'accesso" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Fai clic per avviare il demone Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Ricerca in corso..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Esegui" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Ultima visualizzazione: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Pagina senza titolo" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Pubblicato: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Voce senza titolo" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Ultima modifica: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Nessun riepilogo specificato" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Nessun nome conosciuto" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Ricevuto: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Nessun oggetto" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Da" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Persona sconosciuta" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Applicazione:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversazione con %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Ora di fine: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Ora di fine: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Rivela in File Manager" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Nella cartella" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Vuoto" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"{0>_n:<}0{>_n:<0} contiene 1 elemento\n" +"Contiene %n elementi" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Punteggio: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Impossibile avviare Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Impossibile avviare Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Impossibile avviare Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Impossibile avviare Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Impossibile avviare il demone Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Non sono stati trovati risultati per \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- Dovresti controllare l'ortografia delle parole da cercare per accertarti che " +"siano state digitate correttamente." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "C&erca" + +#~ msgid "&Indexing" +#~ msgstr "&Indicizzazione" + +#~ msgid "General" +#~ msgstr "Generale" + +#~ msgid "Default result sort order:" +#~ msgstr "Ordinamento risultati predefinito:" + +#~ msgid "Date Modified" +#~ msgstr "Data ultima modifica" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Numero massimo di risultati visualizzati:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Definisce il numero di risultati che desideri vengano visualizzati nella pagina dei risultati." + +#~ msgid "Global Shortcuts" +#~ msgstr "Collegamenti globali" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Avv&ia automaticamente i servizi di ricerca e indicizzazione" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indicizzazione" + +#~ msgid "Index my home folder" +#~ msgstr "Indicizza cartella principale personale" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Aggiunge tutte le altre cartelle che desideri indicizzare." + +#~ msgid "Add..." +#~ msgstr "Aggiungi..." + +#~ msgid "Privacy" +#~ msgstr "Privacy" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Specifica tutte le risorse, ad esempio una cartella o un modello, che desideri escludere dall'indicizzazione." + +#~ msgid "Select Folder" +#~ msgstr "Seleziona cartella" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Desideri rimuovere la cartella dall'elenco di cartelle da indicizzare?" + +#~ msgid "Remove Folder" +#~ msgstr "Rimuovi cartella" + +#~ msgid "Add Resource" +#~ msgstr "Aggiungi risorsa" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Desideri rimuovere questo elemento dall'elenco di dati esclusi dal processo di indicizzazione?" + +#~ msgid "Remove Item" +#~ msgstr "Rimuovi elemento" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "Impossibile avviare il demone Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Seleziona una risorsa che desideri escludere dall'indicizzazione." + +#~ msgid "Folder:" +#~ msgstr "Cartella:" + +#~ msgid "File name pattern:" +#~ msgstr "Modello nome file:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Ordina per" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Ordina per" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Pertinenza" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Definisce l'ordinamento predefinito all'avvio. Puoi passare a un altro ordinamento dei risultati con il menu contestuale elenco dei risultati." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Vengono visualizzati i risultati di xx attraverso xx di xxx." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Puoi modificare l'ambito della ricerca usando la casella combinata \"In\".
  Un ambito di ricerca più ampio consente di ottenere un maggior numero di risultati." + +#~ msgid "&Within:" +#~ msgstr "&In:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Definisce le origini in cui effettuare la ricerca:" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Applicazioni" + +#~ msgid "&Find" +#~ msgstr "T&rova" diff --git a/po/ja/Makefile.am b/po/ja/Makefile.am new file mode 100644 index 0000000..f18f0ca --- /dev/null +++ b/po/ja/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = ja +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/ja/kcmbeagle.po b/po/ja/kcmbeagle.po new file mode 100644 index 0000000..1acfa59 --- /dev/null +++ b/po/ja/kcmbeagle.po @@ -0,0 +1,229 @@ +# translation of kcmbeagle.po to Japanese +# Novell Language , 2006. +# Yukiko Bando , 2006. +# +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-27 23:00+0900\n" +"Last-Translator: Yukiko Bando \n" +"Language-Team: Japanese \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "有効にしたい Beagle バックエンドを選択してください。" + +#: backends.cpp:40 +msgid "Backends" +msgstr "バックエンド" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "インデックス作成(&I)" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "バックエンド(&B)" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "デーモンの状態(&D)" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "全般" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Beagle インデックス作成サービスを自動的に開始する" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "バッテリ使用中もデータのインデックスを作成する" + +#: indexing.cpp:59 +msgid "Index" +msgstr "インデックス作成" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "ホームフォルダをインデックス作成に含める" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "インデックス作成に追加するフォルダを指定します。" + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "名前" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "追加..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "プライバシー" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "フォルダやパターンなど、インデックス作成から除外したいリソースを指定します。" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "タイプ" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "フォルダの選択" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "インデックス作成に含めるフォルダのリストから、本当にこのフォルダを削除しますか?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "フォルダの削除" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "リソースの追加" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "インデックス作成から除外するデータのリストから、本当にこのアイテムを削除しますか?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "アイテムの削除" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "検索(&S)" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "インデックス作成から除外したいリソースを選択してください。" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "フォルダ:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "ファイル名パターン:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "デフォルトの結果ソート順序:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "変更日" + +#: search.cpp:44 +msgid "Relevance" +msgstr "関連性" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "起動時に適用するデフォルトのソート順序を指定します。" + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "一度に表示する結果の最大数:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "無制限" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "1 ページに結果を最大何個表示させるかを指定します。" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "デフォルトで検索結果の詳細も表示する" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "グローバルショートカット" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle 検索" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "検索ダイアログを表示" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "現在選択されているものを検索" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "状態を更新" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "Beagle サービスは実行中です。停止するにはここをクリックしてください。" + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "Beagle サービスは停止中です。開始するにはここをクリックしてください。" + +#: status.cpp:118 +msgid "Start" +msgstr "開始" + +#: status.cpp:131 +msgid "Service not started." +msgstr "サービスは開始していません。" + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Beagle サービス バージョン: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"現在の状態:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "インデックス情報:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Beagle サービスは既に停止しています。" + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Beagle サービスは既に実行中です。" + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Beagle サービスを開始できません。" diff --git a/po/ja/kerry.po b/po/ja/kerry.po new file mode 100644 index 0000000..6ebfcbd --- /dev/null +++ b/po/ja/kerry.po @@ -0,0 +1,697 @@ +# translation of kerry.pot to Japanese. +# Novell Language , 2006. +# Yukiko Bando , 2006. +# +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-08 23:00+0900\n" +"Last-Translator: Yukiko Bando \n" +"Language-Team: Japanese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.9\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Novell Language,Yukiko Bando" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "language@novell.com,ybando@k6.dion.ne.jp" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "アルバム: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "タイトル: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "アーチスト: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "幅: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "高さ: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "カラータイプ: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "仕事用電話番号: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "自宅電話番号: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "携帯電話番号: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "プロトコル: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "開始時間: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "終了時間: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "フォルダ: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "著者: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "スライド: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "ページ数: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "単語数: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "カテゴリ: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "バージョン: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "パッケージ作成者: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "パッケージ作成者のEメール: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "場所: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "展開" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "たたむ" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "検索履歴をクリア" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry を設定..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle 検索" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "検索ダイアログを表示" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "現在選択されているものを検索" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle 検索 (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<最近の検索はありません>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "ログイン時に自動的に Kerry を起動しますか?" + +# Shortened to fit into the dialog width +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "自動起動しますか?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "起動しない(&D)" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"システム全体の Beagle 文書インデックスを更新するための\n" +"毎日実行されるプロセスを検出しました。" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "システムは通常より遅くなるかもしれません" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Beagle の KDE フロントエンド" + +#: main.cpp:44 +msgid "A term to search" +msgstr "検索する語句" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "起動時に検索ダイアログを表示します" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "スコア: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "説明" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "検索語および結果をクリアします" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "検索(&S):" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "入力された語句に対して検索を開始します" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "%3 件中、%1 件から %2 件までの結果を表示しています。" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "前の結果(&P)" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "前の検索結果を表示します" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "次の結果(&N)" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "次の検索結果を表示します" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "表示" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "すべて" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "アプリケーション" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "連絡先" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "オフィス文書" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "会話" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "画像" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "メディア" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Webページ" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "ファイル名/パス名" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "ソート基準" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "タイプ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "日付" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "名前" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "関連性" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "最終更新" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "すべての日付" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "今日" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "昨日以降" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "今週" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "今月" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "今年" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "設定(&G)..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "設定ダイアログを開く" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "検索ダイアログを閉じてシステムトレイに最小化します" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "アプリケーション、連絡先、会話、ファイルその他多数..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "クイックヒント" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- 検索は大文字/小文字を区別しないので、大文字/小文字いずれでも入力できます。" +"
- オプション検索を実行する場合は George OR Ringo のように OR を使います。" +"
- 除外する検索条件を指定する場合は -cats のように単語の前にマイナス記号を付けます。" +"
- フレーズを検索する場合は \"There be dragons\" のように引用符を付けます。" +"
- ファイルの拡張子を指定する場合は ext:txt または ext: (何もつかない) のようにします。" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- インデックス作成に含める、または除外するフォルダとリソースを指定できます。" +"
- 結果のソート順序と一度に表示する結果の数を変更できます。" +"
- 検索ダイアログを表示するショートカットも変更できます。" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "設定ダイアログを開く" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 件の結果が見つかりました。" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "結果がありません。" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "%2 件中、条件に最も一致する %1 件の結果を表示しています。" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(検索中)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "「%1」のクエリが失敗しました。" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Beagle デーモンが起動していないのが原因と考えられます。" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Beagle デーモンをログイン時に自動的に起動する" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "クリックして Beagle デーモンを起動" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "検索中..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "実行" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "最終表示: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "無題のページ" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "公開: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "ウェブログ:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "無題のエントリ" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "最終更新: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "サマリの指定なし" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "既知の名前なし" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "受信: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "件名なし" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "送信者" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "不明の人物" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "アプリケーション:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "日付: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "%1 との会話" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "インストール日: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "インストールサイズ: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "ダウンロードサイズ: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "ファイルマネージャ内に表示" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "フォルダ内" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "空" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "%n 個のアイテムを含む" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

スコア: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboy を起動できません。" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolution を起動できません。" + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Thunderbird を起動できません。" + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "KAddressBook を起動できません。" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle デーモンを起動できません。" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "「%1」の結果が見つかりません。" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- 検索の範囲を広げると、より多くの結果が得られるかもしれません。" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- 検索語のスペルを確認してください。" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "Beagle デーモンを起動しました。インデックス作成が完了するまで、しばらくお待ちください。" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "すべてたたむ" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "すべて展開" diff --git a/po/ka/Makefile.am b/po/ka/Makefile.am new file mode 100644 index 0000000..8d1a798 --- /dev/null +++ b/po/ka/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = ka +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/ka/kerry.po b/po/ka/kerry.po new file mode 100644 index 0000000..62a912a --- /dev/null +++ b/po/ka/kerry.po @@ -0,0 +1,852 @@ +# translation of kerry.po to ქართული +# +# Rusudan Tsiskreli , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-06-21 10:34-0300\n" +"Last-Translator: Rusudan Tsiskreli \n" +"Language-Team: ქართული \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "რუსუდან ცისკრელი" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "tsiskreli@gmail.com" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "ალბომი: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "სათაური: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "შემსრულებელი: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "სიგანე: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "სიმაღლე: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "ფერის ტიპი: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "სამსახურის ტელეფონი: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "სახლის ტელეფონი: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "მობილური: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "ოქმი: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "გაშვების დრო: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "დასრულების დრო: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "საქაღალდე: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "ავტორი: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "სლაიდები: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "გვერდები: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "სიტყვები: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "თარიღი: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "მდებარეობა: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "გვერდები: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "მდებარეობა: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "ძიების ისტორიის გასუფთავება" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry-ს კონფიგურაცია..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle ძიება" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "ძიების დიალოგის ჩვენება" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "პირველადი არჩეულის ძიება" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle ძიება (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<არაა უახლესი ძიებები>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"გაეშვას Kerry ავტომატურად\n" +"შესვლისას?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Kerry-ს ავრომატურად გაშვება?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&არ გაშვება" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Beagle Frontend KDE-სთვის" + +#: main.cpp:44 +msgid "A term to search" +msgstr "საძიებო ტერმინი" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "ჩართვისას ძიების დიალოგის ჩვენება" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "ქულა: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "აღწერა" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "საძიებო ტერმინის და შედეგების გასუფთავება" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&ძიება:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "შეყვანილი ტერმინით ძიების გაშვება" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, fuzzy, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "შედეგები -." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&წინა შედეგები" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "წინა ძიების შედეგების ჩვენება" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&შემდეგი შედეგები" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "შემდეგი ძიების შედეგების ჩვენება" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "ყველაფერი" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "პროგრამებში" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "ოფისის დოკუმენტებში" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "საუბრებში" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "გამოსახულებებში" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "მედია" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "ვებ გვერდებში" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "ფაილის გეზი/სახელი" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "დახარისხება" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "ტიპი" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "თარიღი: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "სახელი" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "რელევანტურობა" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "ჩასწორების თარიღი" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Kerry-ს კონფიგურაცია..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, fuzzy, no-c-format +msgid "Open the configuration dialog" +msgstr "კონფიგურაციის დიალოგის გახსნა" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "ძიების დიალოგის დახურვა, ხატულა სისტემურ პანელში დარჩება" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "კარნახები" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- შეგიძლიათ გამოიყენოთ ზედა და ქვედა რეგისტრი, ძიება რეგისტრისადმი მგძნობიარეა." +"
- სხვადასხვა ტერმინების საძიებოთ გამოიყენეთ OR. მაგ. George OR Ringo" +"
- საძიებო ტერმინების გამოსარიცხად გამოიყენეთ მინუსის სიმბოლო წინ, მაგ. " +"-კატები" +"
- როდესაც ფრაზას ეძებთ გამოიყენეთ ბრჭყალები. მაგ. \"აქ არის დრაკონი\"" +"
- მიამატეთ ext:ტიპი განსაზღვრული გაფართოებით საძიებოდ, მაგ. ext:txt " +"ან ext: გაფართოების გარეშე" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- აირჩიეთ რომელი საქაღალდეები და რესურსები უნდა იქნას ინდექსირებული - ან არა." +"
- შეცვალეთ დახარისხების წესი და ნაჩვენები შედეგების რაოდენობა." +"
- განსაზღვრეთ საკუთარი მალმხმობები საძიებო დიაკლოგის გამოსაძახებლად." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "კონფიგურაციის დიალოგის გახსნა" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "საუკეთესო %1 შედეგი %2-დან ნაჩვენებია." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "შედეგები არაა." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "საუკეთესო %1 შედეგი %2-დან ნაჩვენებია." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "\"%1\"-ს გამოკითხვა ვერ შედგა." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "როგორც ჩანს Beagle დემონი არაა გაშვებული." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "შესვლისას Beagle დემონის ავრომატურად გაშვება" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "დააწკაპეთ Beagle დემონის გასაშვებად" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "იძებნება..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "გაშვება" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "უკანასკნელად ნანახი: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "უსახელო გვერდი" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "გამოქვეყვებულია: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "უსახელო ჩანაწერი" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "უკანასკნელად ჩასწორებულია: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "რეზიუმე არაა მითითებული" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "სახელი არაა ცნობილი" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "მიღებული: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "უსათაურო" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +#, fuzzy +msgid "From" +msgstr "-დან" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "უცნობი პიროვნება" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "პროგრამა:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "თარიღი: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "საუბარი %1სთან" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "დასრულების დრო: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "დასრულების დრო: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "ფაილთა მმართველში გახსნა" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "საქაღალდეში" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "ცარიელი" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "შეიცავს %n ელემენტს" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

ქულა: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboy ვერ გაეშვა." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolution ვერ გაეშვა." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Tomboy ვერ გაეშვა." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Tomboy ვერ გაეშვა." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle დემონი ვერ გაეშვა." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "\"%1\"-სთვის შედეგები ვერ მოიძებნა." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- საძიებო სიტყვის მარლთწერა უნდა შეამოწმოთ, რათა შემთხვევით შეცდომა არ დაუშვათ." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Beagle დემონი ეს ესაა გაეშვა. გთხოვთ მოითმინოთ სანამ იგი ინდექსაციას " +"დაასრულებს." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "ძიე&ბა" + +#~ msgid "&Indexing" +#~ msgstr "&ინდექსაცია" + +#~ msgid "&Backends" +#~ msgstr "&Backends" + +#~ msgid "&Daemon Status" +#~ msgstr "&დემონის სტატუსი" + +#~ msgid "General" +#~ msgstr "საერთო" + +#~ msgid "Default result sort order:" +#~ msgstr "შედეგების დახარისხების ნაგულისხმები წესი:" + +#~ msgid "Date Modified" +#~ msgstr "ჩასწორების თარიღი" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "ასახული შედეგების მაქსიმალური რაოდენობა:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "განსაზღვრეთ რამდენი შედეგი უნდა აისახოს შედეგთა ერთ გვერდზე." + +#~ msgid "Global Shortcuts" +#~ msgstr "ზოგადი ბმულები" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "ძიების და ინდექსირების ავტომატურად გაშვება" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&ინდექსაცია" + +#~ msgid "Index my home folder" +#~ msgstr "ჩემი საშინაო საქაღალდის ინდექსაცია" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "ინდექსაციისთვის დამატებითი საქაღალდეების დამატება." + +#~ msgid "Add..." +#~ msgstr "დამატება..." + +#~ msgid "Privacy" +#~ msgstr "პრივატულობა" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "ნებისმიერი რესურსი მიუთითეთ, როგორიცაა საქაღალდე ან თარგი, რომლის ინდექსაციაც არ გსურთ." + +#~ msgid "Select Folder" +#~ msgstr "საქაღალდის არჩევა" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "ნამდვილად გსურთ ამ საქაღალდის ინდექსირებადი საქაღალდეების სიიდან ამოშლა?" + +#~ msgid "Remove Folder" +#~ msgstr "საქაღალდის წაშლა" + +#~ msgid "Add Resource" +#~ msgstr "რესურსის დამატება" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "ნამდვილად გსურთ ამ ელემენტის მონაცემთა სიიდან წაშლა რომლიც არ იქნება ინდექსირებული?" + +#~ msgid "Remove Item" +#~ msgstr "ელემენტის წაშლა" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "აირჩიეთ ხელმისაწვდომი Beagle backend-ებიდან რომლის ჩართვა გსურთ." + +#~ msgid "Backends" +#~ msgstr "Backend-ები" + +#~ msgid "Refresh Status" +#~ msgstr "განახლების სტატუსი" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "Beagle სერვისი გაშვებულია. აქ დააწკაპეთ გასაჩერებლად." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "Beagle სერვისი გაჩერებულია. აქ დააწკაპეთ გასაშვებად." + +#~ msgid "Start" +#~ msgstr "გაშვება" + +#~ msgid "Service not started." +#~ msgstr "სერვისი არაა გაშვებული." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Beagle სერვისის ვერსია: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "მიმდინარე მდგომარეობა:\n" + +#~ msgid "Index information:" +#~ msgstr "ინდექსის ინფორმაცია:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "Beagle სერვისი უკვე გაჩერებულია." + +#~ msgid "Beagle service already running." +#~ msgstr "Beagle სერვისი უკვე გაშვებულია." + +#~ msgid "Could not start beagle service." +#~ msgstr "beagle სერვისი ვერ გაეშვა." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "გთხოვთ აირჩიოთ ინდექსაციიდან ამოსართველი რესურსი." + +#~ msgid "Folder:" +#~ msgstr "საქაღალდე:" + +#~ msgid "File name pattern:" +#~ msgstr "ფაილის სახელის თარგი:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "დახარისხება" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "დახარისხება" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "რელევანტურობა" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "გაშვებისას განსაზღვრეთ ნაგულისხმევი დახარისხების წესი. თქვენ შეგიძლიათ გადართოთ შედეგების დახარისხების თანმიმდევრობა შედეგების სიის კონტექტური მენიუთი." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "xx xx - xxx-დან შედეგებია ნაჩვენები." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- შენიძლიათ ძიებებს ქულები მიანიჭოთ \"Within\" ნუსხის დაფით.
  ქულების ფართო არემ შესაძლოა მეტი შედეგი მოგცეთ." + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "განსაზღვრეთ საძიებო წყაროები" + +#~ msgid "Add Application Paths" +#~ msgstr "პროგრამის გეზების დამატება" + +#~ msgid "&Find" +#~ msgstr "ძი&ება" diff --git a/po/km/Makefile.am b/po/km/Makefile.am new file mode 100644 index 0000000..0e3229c --- /dev/null +++ b/po/km/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = km +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/km/kerry.po b/po/km/kerry.po new file mode 100644 index 0000000..f7c642a --- /dev/null +++ b/po/km/kerry.po @@ -0,0 +1,813 @@ +# translation of km.po to Khmer +# +# Hok Kakada , 2006. +# Leang Chumsoben , 2006. +# Khoem Sokhem , 2006. +msgid "" +msgstr "" +"Project-Id-Version: km\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-02-16 09:49+0700\n" +"Last-Translator: Khoem Sokhem \n" +"Language-Team: Khmer \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"កែវ សុផុន, ខឹម សុខែម, លៀង ជុំសុបិន្ត, សាន ទិត្យវិរៈ, សិទ្ធ ចាន់រត្ថា, ហុក " +"កក្កដា" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" +"keosophon@khmeros.info,khoemsokhem@khmeros.info,soben@khmeros.info," +"titvirak@khmeros.info,sethchanratha@khmeros.info,hokkakada@khmeros.info" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "អាល់ប៊ុម ៖ %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "ចំណងជើង ៖ %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "វិចិត្រករ ៖ %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "ទទឹង ៖ %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "កម្ពស់ ៖ %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "ប្រភេទ​ពណ៌ ៖ %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "ទូរស័ព្ទ​ជំនួញ ៖ %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "ទូរស័ព្ទ​នៅ​ផ្ទះ ៖ %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "ទូរស័ព្ទ​ចល័ត ៖ %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM ៖ %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo ៖ %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN ៖ %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber ៖ %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ ៖ %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise ៖ %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "ពិធីការ ៖ %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "ពេល​ចាប់ផ្ដើម ៖ %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "ពេល​បញ្ចប់ ៖ %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "ថត ៖ %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "អ្នក​និពន្ធ ៖ %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "ស្លាយ ៖ %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "ទំព័រ ៖ %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "ពាក្យ ៖ %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "កាលបរិច្ឆេទ ៖ %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "ទីតាំង ៖ %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "ទំព័រ ៖ %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "ទីតាំង ៖ %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "ជម្រះ​ប្រវត្តិ​ស្វែងរក" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "កំណត់​រចនាសម្ព័ន្ធ Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle ស្វែង​រក" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "បង្ហាញ​ប្រអប់​ស្វែងរក" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "ស្វែងរក​ជម្រើស​ចម្បង" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle ស្វែងរក (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<គ្មាន​ការ​ស្វែងរក​ថ្មីៗ>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"តើ Kerry គួរ​ចាប់ផ្ដើម​ដោយស្វ័យ​ប្រវត្តិ​\n" +"ពេល​អ្នក​ចូល​ឬ ?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "ចាប់ផ្ដើម Kerry ដោយ​ស្វ័យ​ប្រវត្តិឬ ?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "កុំ​ចាប់​ផ្ដើម" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE Frontend ទៅ Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "ពាក្យ​ត្រូវ​ស្វែងរក" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "បង្ហាញ​ប្រអប់​ស្វែងរក​នៅពេល​ចាប់ផ្ដើម" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "ពិន្ទុ ៖ 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "ពិពណ៌នា" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "ជម្រះ​ពាក្យ និង​លទ្ធផល​ស្វែងរក" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "ស្វែងរក ៖" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "ចាប់ផ្ដើម​ស្វែងរកធាតុ​ដែល​បាន​បញ្ចូល" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "លទ្ធផល %1 តាមរយៈ %2 របស់ %3 ត្រូវ​បាន​បង្ហាញ ។" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "លទ្ធផល​ពីមុន" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "បង្ហាញ​លទ្ធផល​ស្វែងរក​ពីមុន" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "លទ្ធផល​បន្ទាប់" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "បង្ហាញ​លទ្ធផលស្វែងរក​បន្ទាប់" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "ទាំងអស់" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "កម្មវិធី" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "ឯកសារ​ការិយាល័យ" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "សន្ទនា" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "រូបភាព" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "មេឌៀ" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "ទំព័រ​បណ្ដាញ" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "តម្រៀប​តាម" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "ប្រភេទ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "កាលបរិច្ឆេទ ៖ %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "ឈ្មោះ" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "ភាព​ទាក់ទង" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "កាលបរិច្ឆេទ​បានកែប្រែ" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "កំណត់​រចនាសម្ព័ន្ធ Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "បិទ​ប្រអប់​ស្វែងរក រូបតំណាង​មួយនឹង​នៅ​មាន​ក្នុង​ថាស​ប្រព័ន្ធ" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "ព័ត៌មាន​ជំនួយលឿន" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "បាន​បង្ហាញ​លទ្ធផល %1 ល្អ​បំផុត​សម្រាប់ %2 ។" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "គ្មាន​លទ្ធផល ។" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "បាន​បង្ហាញ​លទ្ធផល %1 ល្អ​បំផុត​សម្រាប់ %2 ។" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "សំណួរសម្រាប់ \"%1\" បាន​បរាជ័យ ។" + +#: searchdlg.cpp:402 +#, fuzzy +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "ចុច​ដើម្បី​ចាប់ផ្ដើម​ដេមិន Beagle" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "ចាប់​ផ្ដើម​ដេមិន Beagle ដោយ​ស្វ័យប្រវត្តិ នៅពេល​ចាប់ផ្ដើម" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "ចុច​ដើម្បី​ចាប់ផ្ដើម​ដេមិន Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "កំពុង​ស្វែង​រក..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "រត់​" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "បាន​មើល​ចុង​ក្រោយ ៖ %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL ៖" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "ទំព័រ​គ្មាន​ចំណងជើង" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "បាន​ចេញផ្សាយ ៖ %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "កំណត់ហេតុ​វ៉េប ៖" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "ធាតុ​គ្មាន​ចំណង​ជើង" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "បាន​កែប្រែ​ចុង​ក្រោយ ៖ %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "គ្មាន​សេចក្តី​សង្ខេប​បាន​បញ្ជាក់" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "មិន​ស្គាល់​ឈ្មោះ" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "បាន​ទទួល ៖ %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "គ្មាន​ប្រធាន​បទ" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "ពី" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "អ្នក​ដែលមិន​ស្គាល់" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "កម្មវិធី​ ៖" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "កាលបរិច្ឆេទ ៖ %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "សន្ទនា​ជាមួយ %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "ពេល​បញ្ចប់ ៖ %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "ពេល​បញ្ចប់ ៖ %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "បង្ហាញ​ក្នុង​កម្មវិធីគ្រប់គ្រងឯកសារ" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "ក្នុង​ថត" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "ទទេ" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "មាន %n ធាតុ" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

ពិន្ទុ ៖ %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "មិន​អាច​ចាប់ផ្ដើម Tomboy ។" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "មិនអាច​ចាប់ផ្ដើម Evolution ។" + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "មិន​អាច​ចាប់ផ្ដើម Tomboy ។" + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "មិន​អាច​ចាប់ផ្ដើម Tomboy ។" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "មិន​អាច​ចាប់ផ្ដើម​ដេមិន Beagle ។" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "រក​មិន​ឃើញ​លទ្ធផល​សម្រាប់ \"%1\" ។" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- អ្នក​គួរ​ពិនិត្យ​មើលអក្ខរាវិរុទ្ធ​នៃ​ពាក្យ​ស្វែង​រក​របស់អ្នក ដើម្បី​មើល​ថា " +"តើ​អ្នក​ប្រកបខុស​ពាក្យ​ណាមួយ​ឬ​អត់ ។" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "ស្វែង​រក" + +#~ msgid "&Indexing" +#~ msgstr "ការ​ធ្វើលិបិក្រម" + +#~ msgid "General" +#~ msgstr "ទូទៅ" + +#~ msgid "Default result sort order:" +#~ msgstr "លំដាប់​តម្រៀប​លទ្ធផល​លំនាំដើម ៖" + +#~ msgid "Date Modified" +#~ msgstr "កាលបរិច្ឆេទ​បានកែប្រែ" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "ចំនួន​លទ្ធផល​អតិបរមាបាន​បង្ហាញ ៖" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "កំណត់​ថាតើ​លទ្ធផល​ចំនួន​ប៉ុន្មាន ដែល​នឹងត្រូវ​បាន​បង្ហាញ​លើ​ទំព័រ​លទ្ធផល​មួយ ។" + +#~ msgid "Global Shortcuts" +#~ msgstr "ផ្លូវកាត់​សកល" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "ចាប់ផ្ដើម​ស្វែងរក && និងសេវាការធ្វើ​លិបិក្រម​ស្វ័យ​ប្រវត្តិ" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "ការ​ធ្វើលិបិក្រម" + +#~ msgid "Index my home folder" +#~ msgstr "ធ្វើលិបិក្រម​ថតផ្ទះ​របស់​ខ្ញុំ" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "បន្ថែម​ថត​ផ្សេង​ទៀត​ដែល​ត្រូវ​បញ្ចូល សម្រាប់ការធ្វើ​លិបិក្រម ។" + +#~ msgid "Add..." +#~ msgstr "បន្ថែម..." + +#~ msgid "Privacy" +#~ msgstr "ភាព​ឯកជន" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "បញ្ជាក់​ធនធាន​ណាមួយ ដូចជា​ថត ឬ លំនាំ ដែល​អ្នក​ចង់​ដក​ចេញ​ពីការ​ធ្វើលិបិក្រម ។" + +#~ msgid "Select Folder" +#~ msgstr "ជ្រើស​ថត" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "តើ​អ្នក​ពិត​ជាចង់​យក​ថត​នេះ​ចេញ​ពី​បញ្ជី​ថត ដែល​ត្រូវ​បញ្ចូល​សម្រាប់ធ្វើលិបិក្រម​ឬ ?" + +#~ msgid "Remove Folder" +#~ msgstr "យក​ថត​ចេញ" + +#~ msgid "Add Resource" +#~ msgstr "បន្ថែម​ធនធាន" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "តើ​អ្នក​ពិត​ជា​ចង់​យក​ធាតុ​នេះ​ចេញ​ពីបញ្ជី​ទិន្នន័យ​ដែល​ត្រូវ​ដកចេញ​ពី​ការ ធ្វើ​លិបិក្រម​ឬ ?​" + +#~ msgid "Remove Item" +#~ msgstr "យក​ធាតុ​ចេញ" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "មិន​អាច​ចាប់ផ្ដើម​ដេមិន Beagle ។" + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "សូម​ជ្រើស​ធនធាន​មួយ ដែល​អ្នក​ចង់​ដក​ចេញ​ពី​ការ​ធ្វើលិបិក្រម ។" + +#~ msgid "Folder:" +#~ msgstr "ថត ៖" + +#~ msgid "File name pattern:" +#~ msgstr "គំរូ​ឈ្មោះ​ឯកសារ ៖" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "តម្រៀប​តាម" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "តម្រៀប​តាម" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "ភាព​ទាក់ទង" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "កំណត់​លំដាប់​តម្រៀប​នៅ​ពេល​ចាប់ផ្ដើម ។ អ្នក​ប្ដូរ​លំដាប់​តម្រៀប​លទ្ធផលជា​មួយ​នឹង​ម៉ឺនុយ​បរិបទ​បញ្ជី​លទ្ធផល ។" + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "លទ្ធផល​របស់ xx តាមរយៈ xx នៃ xxx ត្រូវ​បាន​បង្ហាញ ។" + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- អ្នក​អាច​ផ្លាស់ប្ដូរ​វិសាល​ភាព​នៃ​ការ​ស្វែងរក​របស់​អ្នក ដោយ​ប្រើ​ប្រអប់​ផ្សំ \"ក្នុង\" ។
   វិសាល​ភាព​ធំទូលាយ​ជាងនេះ​អាច​អាច​បង្កើត​លទ្ធផល​ច្រើន​ជាងនេះ ។" + +#~ msgid "&Within:" +#~ msgstr "ក្នុង ៖" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "កំណត់​ថាតើ​ប្រភព​អ្វី ដែល​នឹង​គួរ​ត្រូវ​បាន​ស្វែង​រក" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "កម្មវិធី" + +#~ msgid "&Find" +#~ msgstr "រក" + +#~ msgid "Could not start instant message log viewer." +#~ msgstr "មិន​អាច​ចាប់ផ្ដើម​កម្មវិធី​មើល​កំណត់ហេតុ​សារ​បន្ទាន់ ។" diff --git a/po/nb/Makefile.am b/po/nb/Makefile.am new file mode 100644 index 0000000..61136e8 --- /dev/null +++ b/po/nb/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = nb +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/nb/kerry.po b/po/nb/kerry.po new file mode 100644 index 0000000..c41d175 --- /dev/null +++ b/po/nb/kerry.po @@ -0,0 +1,812 @@ +# translation of nb.po to +# Olav Pettershagen , 2006. +# translation of kerry.po to +msgid "" +msgstr "" +"Project-Id-Version: nb\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-03-22 11:04+0100\n" +"Last-Translator: Olav Pettershagen \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Olav Pettershagen" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "olav.pet@online.no" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Tittel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artist: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Bredde: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Høyde: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Fargetype: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefon arbeid: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefon privat: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiltelefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokoll: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Starttid: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Sluttid: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Mappe: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Opphavsperson: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Lysbilder: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sider: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Ord: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Dato: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Plassering: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Sider: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Plassering: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Tøm søkehistorie" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Konfigurer Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Søk med Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Vis søkedialog" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Søk i hovedutvalg" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Søk med Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Skal Kerry starte automatisk\n" +"når du logger inn?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Skal Kerry starte automatisk?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Ikke start" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-grensesnitt for Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Søkeord" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Vis søkedialogen ved oppstart" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Resultat: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Beskrivelse" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Fjern søkeord og resultater" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Søk:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Start søket etter det angitte ordet" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Resultatene %1 til %2 of %3 er vist." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Forrige resultater" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Vis forrige søkeresultater" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Neste resultater" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Vis neste søkeresultater" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Alt" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Programmer" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kontordokumenter" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Samtaler" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Bilder" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Media" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Nettsider" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Sorter etter" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Type" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Dato: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Navn" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevans" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Endringsdato" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Konfigurer Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Lukk søkedialogen. Et ikon vil fortsat vises i systemkurven" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Tips" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Det skilles ikke mellom små og store bokstaver under søket ." +"
- Bruk OR for å søke etter flere alternative ord. Eks.: " +"George OR Ringo" +"
- Bruk et minustegn foran søkeordet for å utelate det, f.eks. " +"-yesterday" +"
- Bruk anførselstegn for å søke etter fraser. Eks.: " +"\"Strawberry fields\"" +"
- Legg til ext:type for å spesifisere en filendelse. Eks.: ext:txt " +"eller ext: for ingen filendelse." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "De %1 beste resultatene av %2 er vist." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Ingen resultater." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "De %1 beste resultatene av %2 er vist." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Forespørsel etter \"%1\" mislyktes." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Årsaken er sannsynligvis at Beagle-nissen ikke kjører." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Start Beagle-nissen automatisk når du logger inn" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klikk for å starte Beagle-nissen" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Søker..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Kjør" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Sist vist: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "Nettadresse:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Side uten tittel" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publisert: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Blogg:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Oppføring uten tittel" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Sist endret: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Sammendrag ikke spesifisert" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Ukjent navn" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Mottatt: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Emne mangler" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Fra" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Ukjent person" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Program:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Dato: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Samtale med %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Sluttid: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Sluttid: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Vis i filbehandler" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "I mappen" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Tom" + +#: searchdlg.cpp:1053 +#, fuzzy, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"_n: Inneholder 1 element\n" +"Inneholder %n ielementer" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Resultat: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Kunne ikke starte Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Kunne ikke starte Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Kunne ikke starte Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Kunne ikke starte Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Kunne ikke starte Beagle-nissen." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Ingen resultater for \"%1\" ble funnet." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "- Kontroller om alle søkeordene er riktig stavet." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Søk" + +#~ msgid "&Indexing" +#~ msgstr "&Indeksering" + +#~ msgid "General" +#~ msgstr "Generelt" + +#~ msgid "Default result sort order:" +#~ msgstr "Standardsortering av resultater:" + +#~ msgid "Date Modified" +#~ msgstr "Endringsdato" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Maksimalt antall resultater:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Angi hvor mange resultater som skal vises på én resultatside." + +#~ msgid "Global Shortcuts" +#~ msgstr "Globale snarveier" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Start søke- && og indekseringstjenester automatisk" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indeksering" + +#~ msgid "Index my home folder" +#~ msgstr "Indekser min hjemmemappe" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Legg eventuelt til flere mapper som skal indekseres." + +#~ msgid "Add..." +#~ msgstr "Legg til..." + +#~ msgid "Privacy" +#~ msgstr "Personvern" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Angi ressurser, f.eks. en mappe eller et filnavnmønster, som ikke skal indekseres." + +#~ msgid "Select Folder" +#~ msgstr "Velg mappe" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Vil du virkelig fjerne denne mappen fra listen over mapper som skal indekseres?" + +#~ msgid "Remove Folder" +#~ msgstr "Fjern mappe" + +#~ msgid "Add Resource" +#~ msgstr "Legg til ressurs" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Vil du virkelig fjerne dette elementet fra listen over informasjon som ikke skal indekseres?" + +#~ msgid "Remove Item" +#~ msgstr "Fjern element" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "Kunne ikke starte Beagle-nissen." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Velg en ressurs som ikke skal indekseres." + +#~ msgid "Folder:" +#~ msgstr "Mappe:" + +#~ msgid "File name pattern:" +#~ msgstr "Filnavnmønster:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Sorter etter" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Sorter etter" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Relevans" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Definer standardsorteringen ved oppstart. Du kan høyreklikke i resultatlisten og endre sorteringen i hurtigmenyen." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Resultatene xx til xx av xxx er vist." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Du kan utvide søket ved å bruke \"Inneholder\"-boksen.
  Et bredere søk kan gi flere resultater." + +#~ msgid "&Within:" +#~ msgstr "&Innenfor:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Angi hvilke kilder du vil søke i" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Programmer" + +#~ msgid "&Find" +#~ msgstr "&Finn" diff --git a/po/nl/Makefile.am b/po/nl/Makefile.am new file mode 100644 index 0000000..69faf0b --- /dev/null +++ b/po/nl/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = nl +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/nl/kcmbeagle.po b/po/nl/kcmbeagle.po new file mode 100644 index 0000000..6c1e777 --- /dev/null +++ b/po/nl/kcmbeagle.po @@ -0,0 +1,238 @@ +# translation of kcmbeagle.po to Dutch +# +# Rinse de Vries , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-29 20:35+0100\n" +"Last-Translator: Rinse de Vries \n" +"Language-Team: Dutch \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Selecteer welke beschikbare Beagle-backends u wilt activeren." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Backends" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indexeren" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Backends" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Daemonstatus" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Algemeen" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Beagle-indexeerdienst automatisch starten" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Gegevens indexeren wanneer op batterijkracht" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Index" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Mijn persoonlijke map indexeren" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" +"Voeg aanvullende mappen toe die u wilt laten meenemen tijdens het indexeren." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Naam" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Toevoegen..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Privacy" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Geef de gegevensbronnen, zoals mappen of patronen, op die u wilt uitsluiten van " +"het indexeren." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Type" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Map selecteren" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Wilt u deze map verwijderen uit de lijst met mappen die zullen worden " +"geïndexeerd?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Map verwijderen" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Gegevensbron toevoegen" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Wilt u dit item verwijderen uit de lijst met gegevens die zullen worden " +"uitgesloten van het indexeren?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Item verwijderen" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Zoeken" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Selecteer een gegevensbron die u wilt uitsluiten van indexeren." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Map:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Bestandsnaampatroon:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Standaardvolgorde zoekresultaat:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Datum gewijzigd" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Relevantie" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Definieer de standaard sorteervolgorde bij opstarten." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Maximum aantal getoonde resultaten:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Geen limiet" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" +"Bepaal hoeveel resultaten er maximaal op één resultatenpagina zullen worden " +"getoond." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Standaard resultaten met details tonen" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Globale sneltoetsen" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle Search" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Zoekdialoog tonen" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Primaire selectie doorzoeken" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Status verversen" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "Beagle-dienst draait momenteel. Klik hier om te stoppen." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "Beagle-dienst is momenteel gestopt. Klik hier om te starten." + +#: status.cpp:118 +msgid "Start" +msgstr "Starten" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Dienst is niet gestart." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Versie Beagle-dienst: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Huidige status:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Indexinformatie:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Beagle-dienst is al gestopt." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Beagle-dienst draait al." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Beagle-dienst kon niet worden opgestart." diff --git a/po/nl/kerry.po b/po/nl/kerry.po new file mode 100644 index 0000000..9da8c85 --- /dev/null +++ b/po/nl/kerry.po @@ -0,0 +1,709 @@ +# translation of kerry.po to Dutch +# translation of kerry.po to +# +# Rinse de Vries , 2006. +# Rinse de Vries , 2006. +# Bram Schoenmakers , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-27 00:12+0100\n" +"Last-Translator: Rinse de Vries \n" +"Language-Team: Dutch \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Rinse de Vries" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "rinsedevries@kde.nl" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artiest: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Breedte: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Hoogte: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Kleurtype: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefoon bedrijf: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefoon privé: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiele telefoon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocol: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Starttijd: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Eindtijd: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Map: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Auteur: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Dia's: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Pagina's:%1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Woorden: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Categorie: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Versie: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Naam pakketbouwer:%1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "E-mailadres pakketbouwer: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Locatie: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Uitvouwen" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Invouwen" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Zoekgeschiedenis legen" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry instellen..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle Search" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Zoekdialoog tonen" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Primaire selectie doorzoeken" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle Search (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Wilt u dat Kerry automatisch wordt gestart\n" +"als u zich aanmeldt?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Kerry automatisch starten?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "Nie&t starten" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Het dagelijks draaiend proces voor het bijwerken\n" +"van de systeemwijde Beagle-documentatie-index is gevonden." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Systeem kan trager reageren dan gewoonlijk" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-schil voor Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Een term om naar te zoeken" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Zoekdialoog tijdens opstarten tonen" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Score: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Beschrijving" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Wis de zoekterm en de zoekresultaten" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Zoeken:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Start het zoeken naar de opgegeven term" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Resultaten %1 t/m %2 van %3 worden getoond." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Vorige resultaten" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Toon de vorige zoekresultaten" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Volge&nde resultaten" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Toon de volgende zoekresultaten" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Tonen" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Alles" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Programma's" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Contacten" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kantoordocumenten" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversaties" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Afbeeldingen" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Multimedia" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Webpagina's" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Bestands/padnaam" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sorteren op" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Type" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Datum" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Naam" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevantie" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Laatst gewijzigd" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Elke datum" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Vandaag" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Sinds gisteren" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Deze week" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Deze maand" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Dit jaar" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "In&stellen..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "De configuratiedialoog openen" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Sluit het zoekdialoog, er blijft een pictogram in het systeemvak staan" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Programma's, contacten, conversaties, bestanden en meer..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Snelle tips" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- u kunt gebruik maken van hoofd- en kleine letters, zoeken is " +"hoofdlettergevoelig. " +"
- Om te zoeken voor optionele termen, gebruik OR. Voorbeeld: " +"George OR Ringo. " +"
- Om zoektermen uit te sluiten, zet het minteken ervoor. Voorbeeld " +"-katten. " +"
- Bij het zoeken naar een uitdrukking die uit meerdere woorden bestaat, " +"voeg aanhalingstekens toe. Voorbeeld: \"Er zullen draken zijn\". " +"
- Voeg ext:type toe om een bestandsextensie te specificeren. Voorbeeld: " +"ext:txt voor tekstbestanden met de extensie txt, of ext: " +"voor geen extensie." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- kies welke mappen en bronnen u wilt laten indexeren - of niet. " +"
-wijzig de sorteervolgorde en het aantal getoonde resultaten. " +"
- definieer uw eigen sneltoetsen om het zoekdialoog te openen." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Configuratiedialoog openen" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 resultaten gevonden." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Geen resultaten" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Beste %1 resultaten van %2 worden getoond." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(nog zoekende)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "De zoekactie voor \"%1\" is mislukt." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Zeer waarschijnlijk komt dit doordat de Beagle-daemon niet draait." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Beagle-daemon automatisch starten bij aanmelden" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klik om de Beagle-daemon te starten" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Bezig met zoeken..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Uitvoeren" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Laatst bekeken: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL-adres:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Naamloze pagina" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Gepubliceerd: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Naamloos item" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Laatst gewijzigd: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Geen samenvatting opgegeven" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Geen naam bekend" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Ontvangen: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Geen onderwerp" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Van" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "onbekend persoon" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Programma:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Datum: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Gesprek met %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Geïnstalleerd op: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Installatiegrootte: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Downloadgrootte: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Tonen in bestandsbeheerder" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "In map" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Leeg" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Bevat 1 item\n" +"Bevat %n items" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Score: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboy kon niet worden opgestart." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolution kon niet worden opgestart." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Thunderbird kon niet worden opgestart." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "KAddressbook kon niet worden opgestart." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle-daemon kon niet worden opgestart." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Geen resultaten voor \"%1\" gevonden." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Een wijder zoekbereik kan meer resultaten geven." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Controleer de spelling van uw zoektermen." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +" - De Beagle-daemon is zojuist gestart. Wacht even totdat het programma klaar " +"is met indexeren." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Alles invouwen" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Alles uitvouwen" diff --git a/po/nn/Makefile.am b/po/nn/Makefile.am new file mode 100644 index 0000000..bc984b5 --- /dev/null +++ b/po/nn/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = nn +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/nn/kerry.po b/po/nn/kerry.po new file mode 100644 index 0000000..2167706 --- /dev/null +++ b/po/nn/kerry.po @@ -0,0 +1,835 @@ +# Translation of kerry to Norwegian Nynorsk +# +# Karl Ove Hufthammer , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-10-07 12:13+0200\n" +"Last-Translator: Karl Ove Hufthammer \n" +"Language-Team: Norwegian Nynorsk \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Karl Ove Hufthammer" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "karl@huftis.org" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Tittel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artist: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Breidd: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Høgd: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Fargetype: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefon (arbeid): %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefon (heime): %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Telefon (mobil): %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokoll: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Starttid: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Sluttid: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Mappe: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Forfattar: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Lysbilete: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sider: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Ord: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Dato: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Plassering: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Sider: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Plassering: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Tøm søkjelogg" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Set opp Kerry …" + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle-søk" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Vis søkjevindauge" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Søk etter primærutval" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle-søk (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Skal Kerry startast automatisk\n" +"kvar gong du loggar inn?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Start Kerry automatisk?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Ikkje start" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-grensesnitt for Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Søkjetekst" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Vis søkjevindauge ved oppstart" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Poeng: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Skildring" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Tøm søkjefeltet." + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Søk:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Start søket etter søkjeteksten." + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Resultat %1 til %2 av %3 vert vist." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Førre resultat" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Vis førre søkjeresultat." + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Neste resultat" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Vis neste søkjeresultat." + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Alt" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Program" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kontordokument" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Samtalar" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Bilete" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Medium" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Nettsider" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Filer/adresser" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sorter etter" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Type" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Dato: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Namn" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevans" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Dato endra" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Set opp Kerry …" + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, fuzzy, no-c-format +msgid "Open the configuration dialog" +msgstr "Opna oppsettdialog" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Når du lukkar søkjedialogen, vert eit ikon liggjande i systemtrauet." + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Snøggtips" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"– Du kan bruka både store og små bokstavar; søket skil ikkje mellom desse." +"
– Bruk «OR» for å søkja etter valfrie ord. Eksempel: Tor OR Odin" +"
– Bruk eit «-»-teikn for å utelukka ord frå søket. Eksempel:-unyttig" +"
– Legg til hermeteikn for å søkja etter heile uttrykk. Eksempel: " +"\"Dar kjem dampen\"" +"
– Legg til «ext:filetternamn» for berre å søkja etter filer med dette " +"etternamnet. Eksempel: ext:txt" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"– Vel mappene og resursane du vil, eller ikkje vil, indeksera." +"
– Endra sorteringsrekkjefølgja og talet på søkjetreff som skal visast." +"
– Definer eigne snarvegar for å visa søkjedialogen." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Opna oppsettdialog" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Dei beste %1 resultata av %2 vert vist." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Ingen resultat." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Dei beste %1 resultata av %2 vert vist." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Feil ved søk etter «%1»." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Grunnen er truleg at Beagle-tenesta ikkje køyrer." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Start automatisk Beagle-tenesta ved innlogging" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Trykk her for å starta Beagle-tenesta" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Søkjer …" + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Køyr" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Sist vist: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "Adresse:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Namnlaus side" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publisert: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Blogg:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Namnlaus oppføring" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Sist endra: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Inkje samandrag" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Inkje namn" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Motteken: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Utan emne" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Frå" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Ukjend person" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Program:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Dato: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Samtale med %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Sluttid: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Vis i filhandsamar" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "I mappa" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Tom" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Inneheld 1 element\n" +"Inneheld %n element" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Poeng: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Klarte ikkje starta Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Klarte ikkje starta Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Klarte ikkje starta Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Klarte ikkje starta Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Klarte ikkje starta Beagle-tenesta." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Fann ingen resultat for «%1»." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "– Sjå til at du har stava alle orda rett." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"– Beagle-tenesta vart nett starta. Vent til ho er ferdig med å indeksera." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Søk" + +#~ msgid "&Indexing" +#~ msgstr "&Indeksering" + +#~ msgid "&Backends" +#~ msgstr "&Motorar" + +#~ msgid "&Daemon Status" +#~ msgstr "&Teneste-status" + +#~ msgid "General" +#~ msgstr "Generelt" + +#~ msgid "Start search and indexing services automatically" +#~ msgstr "Start søkje- og indekseringstenester automatisk" + +#~ msgid "Default result sort order:" +#~ msgstr "Standard sorteringsrekkjefølgje:" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Definer standard rekkjefølgje for søkjetreff ved oppstart. Du kan seinare byta rekkjefølgja brukt." + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Maks tal på resultat som skal visast:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Definer kor mange søkjetreff som skal visast på søkjeresultatsida." + +#~ msgid "Global Shortcuts" +#~ msgstr "Globale snøggtastar" + +#~ msgid "Index my home folder" +#~ msgstr "Indekser heime-mappa" + +#~ msgid "Add Application Paths" +#~ msgstr "Legg til programstigar" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Legg til fleire mapper som òg skal indekserast." + +#~ msgid "Add..." +#~ msgstr "Legg til …" + +#~ msgid "Privacy" +#~ msgstr "Personvern" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Vel resursar, som mapper eller mønster, som du ikkje ønskjer at skal indekserast." + +#~ msgid "Select Folder" +#~ msgstr "Vel mappe" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Er du sikker på at du ikkje ønskjer å indeksera denne mappa?" + +#~ msgid "Remove Folder" +#~ msgstr "Fjern mappe" + +#~ msgid "Add Resource" +#~ msgstr "Legg til resurs" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Er du sikker på at du ikkje ønskjer å indeksera dette elementet?" + +#~ msgid "Remove Item" +#~ msgstr "Fjern element" + +#~ msgid "Select which of the available Beagle backends you want to have enabled." +#~ msgstr "Vel kven av dei tilgjengelege Beagle-motorane du ønskjer å bruka." + +#~ msgid "Backends" +#~ msgstr "Motorar" + +#~ msgid "Refresh Status" +#~ msgstr "Oppdater status" + +#~ msgid "Beagle service is currently running. Click here to stop." +#~ msgstr "Beagle-tenesta køyrer no. Trykk her for å stoppa ho." + +#~ msgid "Beagle service is currently stopped. Click here to start." +#~ msgstr "Beagle-tenesta køyrer ikkje. Trykk her for å starta ho." + +#~ msgid "Start" +#~ msgstr "Start" + +#~ msgid "Service not started." +#~ msgstr "Tenesta er ikkje starta." + +#~ msgid "Beagle service version: %1\n" +#~ msgstr "Beagle-versjon: %1\n" + +#~ msgid "Current status:\n" +#~ msgstr "Status:\n" + +#~ msgid "Index information:" +#~ msgstr "Indeksinformasjon:" + +#~ msgid "Beagle service was already stopped." +#~ msgstr "Beagle-tenesta var allereie stoppa." + +#~ msgid "Beagle service already running." +#~ msgstr "Beagle-tenesta køyrde allereie." + +#~ msgid "Could not start beagle service." +#~ msgstr "Klarte ikkje starta Beagle-tenesta." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Result xx til xx av xxx vert vist." + +#~ msgid "&Within:" +#~ msgstr "&I:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Definer kva type kjelder som skal søkjast etter." + +#~ msgid "&Find" +#~ msgstr "&Søk" + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Vel resursar du vil ekskludera frå indekseringa." + +#~ msgid "Folder:" +#~ msgstr "Mappe:" + +#~ msgid "File name pattern:" +#~ msgstr "Filnamnmønster:" + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "– Du kan endra kva du vil søkja etter under «I»-feltet.
  Dess meir du søkjer etter, dess fleire treff får du." diff --git a/po/pl/Makefile.am b/po/pl/Makefile.am new file mode 100644 index 0000000..498aaef --- /dev/null +++ b/po/pl/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = pl +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/pl/kerry.po b/po/pl/kerry.po new file mode 100644 index 0000000..a3eace4 --- /dev/null +++ b/po/pl/kerry.po @@ -0,0 +1,827 @@ +# translation of pl.po to +# Polish translation of PACKAGE. +# Zbigniew Braniecki , 2006. +# Marek Stępień , 2006. +# Wojciech Kapusta , 2006. +# +# +msgid "" +msgstr "" +"Project-Id-Version: pl\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-03-23 19:11+0100\n" +"Last-Translator: Wojciech Kapusta \n" +"Language-Team: \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"Zbigniew Braniecki\n" +"Wadim Dziedzic\n" +"Wojciech Kapusta\n" +"Stanisław Małolepszy\n" +"Marek Stępień" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "i18n@suse.deteam@aviary.pl" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Tytuł: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artysta: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Szerokość: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Wysokość: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Typ koloru: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefon służbowy: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefon domowy: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Telefon komórkowy: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokół: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Czas rozpoczęcia: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Czas zakończenia: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Katalog: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Slajdy: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Strony: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Słowa: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Data: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Położenie: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Strony: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Położenie: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Wyczyść historię wyszukiwania" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Konfiguruj program Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Wyszukiwanie Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Pokaż okno wyszukiwania" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Szukaj w pierwszym zakresie" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Wyszukiwanie Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Czy Kerry powinien być włączany automatycznie\n" +"podczas logowania?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Czy włączać program Kerry automatycznie?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Nie uruchamiaj" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Interfejs KDE dla Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Termin do wyszukania" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Pokaż okno wyszukiwania podczas uruchamiania" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Wynik: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Opis" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Wyczyść pole wyszukiwania i wyniki" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Szukaj:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Rozpocznij wyszukiwanie wprowadzonego terminu" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Wyniki od %1 do %2 z %3 sa wyświetlane." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Poprzednie rezultaty" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Pokaż poprzednie wyniki wyszukiwania" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Następne wyniki" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Pokaż następne wyniki wyszukiwania" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Wszystko" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplikacje" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Dokumenty biurowe" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Konwersacje" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Obrazki" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Media" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Strony WWW" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Sortuj wg" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Typ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Data: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nazwa" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Dopasowanie" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Data modyfikacji" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Konfiguruj program Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Zamknij okno wyszukiwania, ikona pozostanie w tacce systemowej" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Podpowiedzi" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Można używać małych i dużych liter; wyszukiwanie nie zwraca uwagi na wielkość " +"liter." +"
-Aby wyszukać alternatywnych wyrażeń, należy użyć OR, np.: " +"Lech OR Jarosław" +"
- Aby wykluczyć z wyników wystąpienia niepożądanych wyrażeń, należy " +"poprzedzić je symbolem minus, np -koty" +"
- Aby odnaleźć wyrażenie wielowyrazowe, należy ująć je w cudzysłowy, np. " +"\"Litwo, ojczyzno moja\"" +"
- Aby przeszukać pliki o konkretnych rozszerzeniach, należy użyć " +"ext:rozszerzenie, np. ext:txt, albo ext: " +"dla plików bez rozszerzeń" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Najlepsze %1 wyników z %2 jest pokazywane." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Brak wyników." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Najlepsze %1 wyników z %2 jest pokazywane." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Zapytanie o \"%1\" nie udało się." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Prawdopodobną przyczyną jest to, że demon Beagle nie jest uruchomiony." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Automatycznie uruchamiaj demona Beagle podczas logowania" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Nacisnij aby uruchomić demona Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Wyszukiwanie..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Uruchom" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Ostatnio oglądany: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Nienazwana strona" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Opublikowane: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Nienazwany wpis" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Ostatnio modyfikowane: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Nie zdefiniowano opisu" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Nazwa nieznana" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Otrzymano: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Brak tematu" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Od" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Nieznana osoba" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplikacja:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Konwersacja z %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Czas zakończenia: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Czas zakończenia: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Otwórz w menedżerze plików" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "W katalogu" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Pusty" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Zawiera jeden element\n" +"Zawiera %n elementy\n" +"Zawiera %n elementów" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Wynik: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Nie udało się uruchomić Tomboy'a." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Nie udało się uruchomić Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Nie udało się uruchomić Tomboy'a." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Nie udało się uruchomić Tomboy'a." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Nie udało się uruchomić demona Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Brak wyników wyszukiwania dla \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"Należy sprawdzić pisownię w wyszukiwanych słowach, aby upewnić się, że nie " +"popełniono błędów." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Szukaj" + +#~ msgid "&Indexing" +#~ msgstr "&Indeksowanie" + +#~ msgid "General" +#~ msgstr "Ogólne" + +#~ msgid "Default result sort order:" +#~ msgstr "Domyślny porządek wyników sortowania:" + +#~ msgid "Date Modified" +#~ msgstr "Data modyfikacji" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Maksymalna ilość wyświetlanych wyników:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Określ ile wyników ma być wyświetlane na pojedyńczej stronie." + +#~ msgid "Global Shortcuts" +#~ msgstr "Skróty globalne" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Uruchamiaj serwisy wyszukiwania oraz indeksowania automatycznie" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indeksowanie" + +#~ msgid "Index my home folder" +#~ msgstr "Indeksuj mój katalog domowy" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Dodaj dowolny dodatkowy katalog do indeksowania." + +#~ msgid "Add..." +#~ msgstr "Dodaj..." + +#~ msgid "Privacy" +#~ msgstr "Prywatność" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Proszę podać zasób, jak katalog czy wzorzec, który ma zostac wyłączony z indeksowania." + +#~ msgid "Select Folder" +#~ msgstr "Katalog" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Czy na pewno usunąć ten katalog z listy indeksowanych katalogów?" + +#~ msgid "Remove Folder" +#~ msgstr "Usuń katalog" + +#~ msgid "Add Resource" +#~ msgstr "Dodaj zasób" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Czy na pewno usunąć ten element z listy danych wyłączonych z indeksowania?" + +#~ msgid "Remove Item" +#~ msgstr "Usuń element" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "Nie udało się uruchomić demona Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Proszę wprowadzić zasoby, które mają zostać wykluczone z indeksowania" + +#~ msgid "Folder:" +#~ msgstr "Katalog:" + +#~ msgid "File name pattern:" +#~ msgstr "Wzorzec nazw plików:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Sortuj wg" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Sortuj wg" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Dopasowanie" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Proszę ustawić domyślny porządek sortowania przy uruchamianiu. Można zmienić porządek sortowania w menu kontekstowym listy wyników." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Wyniki xx do xx z xxx są wyświetlone." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "Można zmienić zasięg wyszukiwania używając pola \"W\".
  Szerszy zasięg może pokazać więcej wyników." + +#~ msgid "&Within:" +#~ msgstr "&W:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Proszę określić, co ma być przeszukiwane" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Aplikacje" + +#~ msgid "&Find" +#~ msgstr "&Znajdź" diff --git a/po/pt/Makefile.am b/po/pt/Makefile.am new file mode 100644 index 0000000..fd3494d --- /dev/null +++ b/po/pt/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = pt +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/pt/kcmbeagle.po b/po/pt/kcmbeagle.po new file mode 100644 index 0000000..7685380 --- /dev/null +++ b/po/pt/kcmbeagle.po @@ -0,0 +1,233 @@ +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-27 14:18+0100\n" +"Last-Translator: José Nuno Coelho Pires \n" +"Language-Team: pt \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POFile-SpellExtra: Beagle Kerry\n" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" +"Seleccione qual das infra-estruturas disponíveis do Beagle deseja activar." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Infra-Estruturas" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Indexação" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "In&fra-Estruturas" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "Estado do Servi&dor" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Geral" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Iniciar automaticamente o serviço de indexação do Beagle" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Indexar os dados enquanto tiver bateria" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Indexação" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Indexar a minha pasta pessoal" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Incluir pastas adicionais na indexação." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Nome" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Adicionar..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Privacidade" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Indique os recursos, como pastas ou padrões, que deseja excluir da indexação." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Tipo" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Seleccione a Pasta" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Deseja mesmo remover esta pasta da lista de pastas a incluir na " +"indexação?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Remover a Pasta" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Adicionar um Recurso" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Deseja mesmo remover este item da lista de dados a excluir da " +"indexação?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Remover o Item" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Procurar" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Seleccione por favor um recurso a excluir da indexação." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Pasta:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Padrão de nomes dos ficheiros:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Direcção predefinida da ordenação dos resultados:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Data de Modificação" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Relevância" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Defina a direcção de ordenação predefinida no arranque." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Número máximo de resultados apresentados:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Sem Limite" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "Defina quantos resultados deseja mostrar numa página de resultados." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Mostrar os resultados da procura com detalhes por omissão" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Atalhos Globais" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Pesquisa no Beagle Kerry" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Mostrar a Janela de Procura" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Primeira Selecção a Procurar" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Actualizar o Estado" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" +"O serviço do Beagle está em execução de momento. Carregue aqui para parar." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" +"O serviço do Beagle está parado de momento. Carregue aqui para o iniciar." + +#: status.cpp:118 +msgid "Start" +msgstr "Iniciar" + +#: status.cpp:131 +msgid "Service not started." +msgstr "O serviço não foi iniciado." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Versão do serviço Beagle: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Estado actual:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Informação do índice:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "O serviço do Beagle já foi interrompido." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "O serviço do Beagle já está em execução." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Não foi possível iniciar o serviço do Beagle." diff --git a/po/pt/kerry.po b/po/pt/kerry.po new file mode 100644 index 0000000..3cacd0e --- /dev/null +++ b/po/pt/kerry.po @@ -0,0 +1,708 @@ +# translation of pt.po to portuguese +# Antonio Cardoso Martins , 2006. +# +msgid "" +msgstr "" +"Project-Id-Version: pt\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-07 14:15+0000\n" +"Last-Translator: Antonio Cardoso Martins \n" +"Language-Team: portuguese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POFile-IgnoreConsistency: &Indexing\n" +"X-Generator: KBabel 1.10.2\n" +"X-POFile-SpellExtra: GroupWise Yahoo AIM MSN Tomboy Beagle Evolution\n" +"X-POFile-SpellExtra: Weblog Ringo ext txt OR KAddressBook Kerry\n" +"X-POFile-SpellExtra: Thunderbird\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "António Cardoso Martins,José Nuno Pires" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "digiplan@netvisao.pt,jncp@netcabo.pt" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Álbum: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Título: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Largura: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Altura: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipo de cor: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Telefone de trabalho: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Telefone de casa: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Telemóvel: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocolo: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Hora inicial: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Hora final: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Pasta: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Slides: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Páginas: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Palavras: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Categoria: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Versão: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Nome do criador do pacote: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "E-mail do criador do pacote: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Localização: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Expandir" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Recolher" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Limpar o Histórico de Procuras" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configurar o Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Pesquisa no Beagle Kerry" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Mostrar a Janela de Procura" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Primeira Selecção a Procurar" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Procura no Beagle do Kerry (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Deve-se iniciar o Kerry automaticamente\n" +"quando arranca?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Iniciar Automaticamente o Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Não Iniciar" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Foi detectado o processo diário de actualização\n" +"do índice de documentação do Beagle do sistema." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "O Sistema Poderá Estar Mais Lento que o Normal" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Interface do Beagle para o KDE" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Um termo de procura" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostrar a janela de pesquisa no arranque" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Pontuação: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descrição" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Limpar o termo de procura e os resultados" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Procurar:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Iniciar a procura para o termo introduzido" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Resultados %1 através %2 de %3 são apresentados." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "Resultados &Anteriores" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostrar os resultados de procura anteriores" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "Resultados Segui&ntes" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostrar os próximos resultados da procura" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Mostrar" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Tudo" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplicações" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Contactos" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documentos Office" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversações" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Imagens" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Meio" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Páginas Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Nome/Local do Ficheiro" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Ordenar Por" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipo" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Data" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nome" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevância" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Data de Modificação" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Qualquer Data" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Hoje" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Desde Ontem" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Esta Semana" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Este Mês" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Este Ano" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "Confi&gurar..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Abrir a janela de configuração" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Fechar a janela de procura, mantendo-se um ícone na bandeja do sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Aplicações, Contactos, Conversas, Ficheiros, entre outros..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Dicas Rápidas" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Pode utilizar letras maiúsculas ou minúsculas; a procura não faz distinção." +"
- Para procurar por termos opcionais, utilize OR. ex: " +"George OR Ringo" +"
- Para excluir termos de procura, utilize o símbolo 'menos' à frente, como " +"em -gatos" +"
- Se procura por uma frase, adicione aspas. ex: " +"\"Procuram-se dragões\"" +"
- Adicione ext:tipo para especificar uma extensão de ficheiro, por ex: " +"ext:txt ou ext: para nenhuma" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Escolha as pastas e recursos a indexar - ou não." +"
- Mude o critério de ordenação e o número de resultados apresentados." +"
- Defina os seus próprios atalhos para invocar a janela de procura." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Abrir a janela de configuração" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 resultados encontrados." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Sem resultados." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Melhores %1 resultados de %2 apresentados." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(ainda à procura)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Falhou a pesquisa de \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "A causa mais provável é o serviço do Beagle não estar a correr." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Iniciar automaticamente o serviço do Beagle no arranque" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Carregue para iniciar o serviço Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "A procurar..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Executar" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Última visualização: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Página sem Título" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicado: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Item sem Título" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Última modificação: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "O Resumo não Foi Indicado" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Nenhum Nome Conhecido" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Recebido: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Sem Assunto" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Pessoa Desconhecida" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplicação:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversação Com %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Instalado em: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Tamanho instalado: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Tamanho da transferência: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Revelar no Gestor de Ficheiros" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Na Pasta" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Vazio" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Contém 1 item\n" +"Contém %n itens" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Pontuação: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Não foi possível iniciar o Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Não foi possível iniciar o Evolution." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Não foi possível iniciar o Thunderbird." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Não foi possível iniciar o KAddressBook." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Não foi possível iniciar o serviço do Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Não foram encontrados resultados para \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" +"- Um âmbito mais abrangente de procura poderá produzir mais resultados." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Deve verificar a ortografia das palavras da sua pesquisa." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- O servidor do Beagle acabou de ser iniciado. Tenha paciência, por favor, até " +"que ele tenha terminado a sua indexação." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Recolher Tudo" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Expandir Tudo" diff --git a/po/pt_BR/Makefile.am b/po/pt_BR/Makefile.am new file mode 100644 index 0000000..2046214 --- /dev/null +++ b/po/pt_BR/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = pt_BR +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/pt_BR/kerry.po b/po/pt_BR/kerry.po new file mode 100644 index 0000000..7074bed --- /dev/null +++ b/po/pt_BR/kerry.po @@ -0,0 +1,826 @@ +# SOME DESCRIPTIVE TITLE. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: base\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2005-03-09 13:54+0100\n" +"Last-Translator: Novell Language \n" +"Language-Team: Novell Language \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.9\n" + +#: _translatorinfo.cpp:1 +#, fuzzy +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"_: NOME DOS TRADUTORES\n" +"Seus nomes" + +#: _translatorinfo.cpp:3 +#, fuzzy +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" +"_: E-MAIL DOS TRADUTORES\n" +"Seus e-mails" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Álbum: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Título: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artista: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Largura: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Altura: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Tipo de cor: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Fone comercial: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Fone residencial: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Fone celular: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "OBJETIVO: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protocolo: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Horário de início: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Horário de término: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Pasta: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Autor: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Slides: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Páginas: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Palavras: %1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "Data: %1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "Localização: %1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "Páginas: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Localização: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Limpar Histórico de Pesquisa" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Configurar Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Pesquisa de Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Mostrar Caixa de Diálogo de Pesquisa" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Seleção Primária de Pesquisa" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Pesquisa de Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Iniciar Kerry automaticamente \n" +"ao efetuar login?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Iniciar Kerry automaticamente?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Não Iniciar" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Front-end KDE para o Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Termo para pesquisa" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Mostrar caixa de diálogo de pesquisa na inicialização" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Pontuação: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Descrição" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Limpa o termo e os resultados da pesquisa" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Pesquisar:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Inicia a pesquisa do termo digitado" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Mostrados os resultados de %1 a %2 de %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Resultados Anteriores" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Mostrar os resultados da pesquisa anterior" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Próximos Resultados" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Mostrar os resultados da próxima pesquisa" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Tudo" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Aplicativos" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Documentos do Office" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Conversações" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Imagens" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Mídia" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Páginas da Web" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "Classificar por" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tipo" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "Data: %1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Nome" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevância" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "Data da Modificação" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "Configurar Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" +"Fecha a caixa de diálogo de pesquisa, um ícone permanecerá na bandeja do " +"sistema" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Dicas Rápidas" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Você pode usar maiúsculas e minúsculas, pois a pesquisa não diferencia entre " +"elas." +"
- Para pesquisar termos opcionais, use OU. Ex.: George OU Ringo" +"
- Para excluir um termo da pesquisa, insira antes dele o símbolo de menos, " +"como -gatos" +"
- Ao pesquisar uma frase, adicione aspas. Ex.: \"Se houver dragões\"" +"
- Adicione ext:tipo para especificar uma extensão de arquivo. Ex.: " +"ext:txt ou ext: caso não queira definir nenhum tipo de extensão" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "Melhores %1 resultados de %2 mostrados." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Não há resultados." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Melhores %1 resultados de %2 mostrados." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Falha na consulta de \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "A causa provável é o não funcionamento do daemon do Beagle." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Iniciar o daemon do Beagle automaticamente no login" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Clique para iniciar o daemon do Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Pesquisando..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Executar" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Última visualização: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Página sem Título" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicado: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Entrada sem Título" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Última modificação: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Resumo não Especificado" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Sem Nomes Conhecidos" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Recebido: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Sem Assunto" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "De" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Pessoa Desconhecida" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Aplicativo:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Data: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Conversação com %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "Horário de término: %1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "Horário de término: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Revelar no Gerenciador de Arquivos" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Na Pasta" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Vazio" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"{0>_n:<}0{>_n:<0} Contém 1 item\n" +"Contém %n itens" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Pontuação: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Impossível iniciar Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Impossível iniciar Evolution." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Impossível iniciar Tomboy." + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "Impossível iniciar Tomboy." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Impossível iniciar daemon do Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Não foram encontrados resultados para \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "" +"- Você deve verificar a ortografia das palavras da pesquisa para ver se " +"escreveu alguma palavra incorretamente por engano." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "&Pesquisar" + +#~ msgid "&Indexing" +#~ msgstr "&Indexação" + +#~ msgid "General" +#~ msgstr "Geral" + +#~ msgid "Default result sort order:" +#~ msgstr "Ordem de classificação padrão de resultados:" + +#~ msgid "Date Modified" +#~ msgstr "Data da Modificação" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "Número máximo de resultados exibidos:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "Define quantos resultados deverão ser exibidos em uma página de resultados." + +#~ msgid "Global Shortcuts" +#~ msgstr "Atalhos Globais" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "Iniciar &serviços de pesquisa e indexação automaticamente" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "&Indexação" + +#~ msgid "Index my home folder" +#~ msgstr "Indexar minha pasta pessoal" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "Adiciona outras pastas a serem incluídas para indexação." + +#~ msgid "Add..." +#~ msgstr "Adicionar..." + +#~ msgid "Privacy" +#~ msgstr "Privacidade" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "Especifica recursos, como uma pasta ou padrão, a serem excluídos da indexação." + +#~ msgid "Select Folder" +#~ msgstr "Selecionar Pasta" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "Deseja realmente remover esta pasta da lista de pastas a serem incluídas para indexação?" + +#~ msgid "Remove Folder" +#~ msgstr "Remover Pasta" + +#~ msgid "Add Resource" +#~ msgstr "Adicionar Recurso" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "Deseja realmente remover este item da lista de dados a serem excluídos da indexação?" + +#~ msgid "Remove Item" +#~ msgstr "Remover Item" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "Impossível iniciar daemon do Beagle." + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "Selecione um recurso que deseja excluir da indexação." + +#~ msgid "Folder:" +#~ msgstr "Pasta:" + +#~ msgid "File name pattern:" +#~ msgstr "Padrão de nome de arquivo:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "Classificar por" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "Classificar por" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "Relevância" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "Define a ordem de classificação padrão na inicialização. É possível alternar a ordem de classificação de resultados com o menu de contexto de lista de resultados." + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "Mostrados os resultados de xx a xx de xxx." + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- Você pode mudar o escopo da pesquisa usando a caixa de combinação \"Em\".
  Um escopo de pesquisa mais amplo pode produzir mais resultados." + +#~ msgid "&Within:" +#~ msgstr "&Em:" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "Define em que fontes a pesquisa deverá ser feita" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "Aplicativos" + +#~ msgid "&Find" +#~ msgstr "&Localizar" + +#~ msgid "Could not start instant message log viewer." +#~ msgstr "Impossível iniciar visualizador de registro de mensagens instantâneas." diff --git a/po/sk/Makefile.am b/po/sk/Makefile.am new file mode 100644 index 0000000..1e1bb19 --- /dev/null +++ b/po/sk/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = sk +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/sk/kcmbeagle.po b/po/sk/kcmbeagle.po new file mode 100644 index 0000000..f890326 --- /dev/null +++ b/po/sk/kcmbeagle.po @@ -0,0 +1,227 @@ +# translation of kcmbeagle.po to Slovak +# +# Richard Fric , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-21 08:42+0200\n" +"Last-Translator: Richard Fric \n" +"Language-Team: Slovak \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==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "" + +#: backends.cpp:40 +msgid "Backends" +msgstr "" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "" + +#: indexing.cpp:59 +msgid "Index" +msgstr "" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "" + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "" + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "" + +#: search.cpp:44 +msgid "Relevance" +msgstr "" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "" + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "" + +#: search.cpp:53 +msgid "No Limit" +msgstr "" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "" + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "" + +#: status.cpp:118 +msgid "Start" +msgstr "" + +#: status.cpp:131 +msgid "Service not started." +msgstr "" + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" + +#: status.cpp:148 +msgid "Index information:" +msgstr "" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "" + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "" + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "" diff --git a/po/sk/kerry.po b/po/sk/kerry.po new file mode 100644 index 0000000..c22241d --- /dev/null +++ b/po/sk/kerry.po @@ -0,0 +1,684 @@ +# translation of kerry.po to Slovak +# +# Richard Fric , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-09-15 20:56+0200\n" +"Last-Translator: Richard Fric \n" +"Language-Team: Slovak \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==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "" + +#: main.cpp:44 +msgid "A term to search" +msgstr "" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "" + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "" + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "" + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "" + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "" + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" diff --git a/po/sv/Makefile.am b/po/sv/Makefile.am new file mode 100644 index 0000000..300ce12 --- /dev/null +++ b/po/sv/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = sv +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/sv/kerry.po b/po/sv/kerry.po new file mode 100644 index 0000000..19c3824 --- /dev/null +++ b/po/sv/kerry.po @@ -0,0 +1,703 @@ +# translation of kerry.po to Swedish +# +# Stefan Asserhäll , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-07 17:40+0100\n" +"Last-Translator: Stefan Asserhäll \n" +"Language-Team: Swedish \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Stefan Asserhäll" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "stefan.asserhall@comhem.se" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Album: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Titel: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Artist: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Bredd: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Höjd: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Färgtyp: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Arbetstelefon: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Hemtelefon: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Mobiltelefon: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokoll: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Starttid: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Sluttid: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Katalog: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Författare: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Stordiabilder: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sidor: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Ord: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Kategori: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Version: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Namn på skaparen av paketet: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "E-post till skaparen av paketet: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Plats: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Expandera" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Dra ihop" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Rensa sökhistorik" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Anpassa Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle sökning" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Visa sökdialogruta" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Sök förstahandsmarkering" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle sökning (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Ska Kerry starta automatiskt\n" +"när du loggar in?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Starta Kerry automatiskt?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Starta inte" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Processen som kör dagligen för att uppdatera systemets\n" +"dokumentationsindex för Beagle detekterades." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Systemet kan vara långsammare än vanligt" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "KDE-gränssnitt för Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Ett begrepp att söka efter" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Visa sökdialogruta vid start" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Poäng: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Beskrivning" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Rensa sökbegrepp och resultat" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Sök:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Starta sökning efter det angivna begreppet" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Resultaten %1 till och med %2 av %3 visas." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Föregående resultat" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Visa föregående sökresultat" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Nästa resultat" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Visa nästa sökresultat" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Visa" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Allting" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Program" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Kontakter" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Kontorsdokument" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Samtal" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Bilder" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Media" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Webbsidor" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Fil- eller sökvägsnamn" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sortera enligt" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Typ" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Datum" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Namn" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Relevans" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Senast ändrad" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Godtyckligt datum" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Idag" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Sedan igår" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Denna veckan" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Denna månaden" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Detta året" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "A&npassa..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Öppna inställningsdialogrutan" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Stäng sökdialogrutan. En ikon blir kvar i systembrickan." + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Program, kontakter, konversationer, filer med mera..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Snabbtips" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Du kan använda stora och små bokstäver, sökningen är inte skiftlägeskänslig." +"
- För att söka efter alternativa begrepp, använd OR, t.ex.: " +"George OR Ringo" +"
- För att undanta sökbegrepp använd ett minustecken framför det, såsom " +"-katter" +"
- När du söker efter meningar, lägg till citationstecken, t.ex.: " +"\"Här finnes drakar\"" +"
- Lägg till ext:typför att ange en filändelse, t.ex.: ext:txt " +"eller ext: för ingen filändelse alls" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Välj vilka kataloger och resurser som ska indexeras eller inte." +"
- Ändra sorteringsordning och antal resultat som visas." +"
- Definiera dina egna snabbtangenter för att visa sökdialogrutan." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Visa inställningsdialogruta" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 resultat hittade." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Inga resultat." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "De bästa %1 resultaten av %2 visas." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(söker fortfarande)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Förfrågan efter \"%1\" misslyckades." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Den troliga orsaken är att Beagle-demonen inte kör." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Starta Beagle-demonen automatiskt vid inloggning" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Klicka för att starta Beagle-demonen" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Söker..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Kör" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Senast visad: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "Webbadress:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Namnlös sida" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Publicerad: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Webblogg:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Namnlös post" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Senast ändrad: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Ingen sammanfattning angiven" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Inget namn känt" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Mottaget: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Ingen rubrik" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Från" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Okänd person" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Program:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Datum: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Samtal med %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Installerad den: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Installerad storlek: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Nerladdningsstorlek: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Avslöja i filhanteraren" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "I katalog" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Tom" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Innehåller 1 objekt\n" +"Innehåller %n objekt" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Poäng: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Kunde inte starta Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Kunde inte starta Evolution." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Kunde inte starta Thunderbird." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Kunde inte starta addressboken." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Kunde inte starta Beagle-demonen." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "Inga resultat hittades för \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Ett större sökomfång kan ge fler resultat." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Du bör kontrollera stavningen hos sökorden." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Beagle-demonen har precis startat. Ha tålamod till den är klar med sin " +"indexering." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Dra ihop alla" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Expandera alla" diff --git a/po/th/Makefile.am b/po/th/Makefile.am new file mode 100644 index 0000000..dd99b7d --- /dev/null +++ b/po/th/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = th +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/th/kerry.po b/po/th/kerry.po new file mode 100644 index 0000000..0dc369a --- /dev/null +++ b/po/th/kerry.po @@ -0,0 +1,701 @@ +# translation of kerry.po to Thai +# +# Sahachart Anukulkitch , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-10-29 11:51+1100\n" +"Last-Translator: Sahachart Anukulkitch \n" +"Language-Team: Thai \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "สหชาติ อนุกูลกิจ" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "drrider@gmail.com" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "อัลบัม: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "ชื่อเพลง: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "ศิลปิน: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "ความกว้าง: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "ความสูง: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "ชนิดสี: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "โทรศัพท์ที่ทำงาน: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "โทรศัพท์บ้าน: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "โทรศัพท์เคลื่อนที่: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "โปรโตคอล: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "เวลาเริ่ม: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "เวลาสิ้นสุด: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "โฟลเดอร์: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "ผู้เขียน: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "จำนวนสไลด์: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "จำนวนหน้า: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "จำนวนคำ: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "ประเภท: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "รุ่น: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "ชื่อผู้ทำแพ็คเกจ: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "อีเมลผู้ทำแพ็คเกจ: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "ที่ตั้ง: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "กางออก" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "ยุบลง" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "ล้างประวัติการค้นหา" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "ปรับแต่ง Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "โปรแกรมค้นหา Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "แสดงไดอะล็อกสำหรับค้นหา" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "ค้นหาส่วนที่เลือกไว้ก่อน" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle Search (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<ไม่มีการค้นหาเมื่อเร็วๆ นี้>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"จะให้ Kerry เริ่มโปรแกรมโดยอัตโนมัติ\n" +"เมื่อคุณล็อกอินหรือไม่?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "เริ่มงาน Kerry โดยอัตโนมัติหรือไม่?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "ไม่ต้&องเริ่ม" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"ตรวจพบโพรเซสที่ทำงานทุกวันสำหรับปรับข้อมูลการทำ\n" +"ดัชนีเอกสารทั้งระบบของ Beagle" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "ระบบอาจจะทำงานช้ากว่าปกติ" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "โปรแกรมเบื้องหน้าของ Beagle สำหรับ KDE" + +#: main.cpp:44 +msgid "A term to search" +msgstr "คำค้นหา" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "แสดงไดอะล็อกการค้นหาเมื่อเริ่มต้น" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "คะแนน: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "คำอธิบาย" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "ล้างคำค้นและผลลัพธ์" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "ค้น&หา:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "เริ่มต้นการค้นหาสำหรับคำที่ใส่เข้าไป" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "แสดงผลลัพธ์ %1 ถึง %2 จาก %3" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "ผลลัพธ์ก่อ&นหน้า" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "แสดงผลลัพธ์การค้นหาก่อนหน้า" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "ผลลัพธ์ถั&ดไป" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "แสดงผลลัพธ์การค้นหาถัดไป" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "แสดง" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "ทุกอย่าง" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "แอพพลิเคชัน" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "รายนามการติดต่อ" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "เอกสารสำนักงาน" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "บทสนทนา" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "รูปภาพ" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "สื่อต่างๆ" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "หน้าเว็บ" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "ชื่อแฟ้ม/พาธ" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "เรียงโดย" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "ชนิด" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "วันที่" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "ชื่อ" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "ความเกี่ยวข้อง" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "แก้ไขล่าสุด" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "วันที่ใดๆ" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "วันนี้" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "ตั้งแต่เมื่อวาน" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "สัปดาห์นี้" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "เดือนนี้" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "ปีนี้" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "ปรั&บแต่ง..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "เปิดไดอะล็อกการปรับแต่ง" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "เมื่อปิดไดอะล้กการค้นหา จะยังมีไอคอนอยู่ในถาดระบบ" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "แอพพลิเคชัน, รายนามติดต่อ, บทสนทนา, แฟ้ม และอื่นๆ..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "เกร็ดด่วนๆ" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- คุณสามารถใช้ได้ทั้งตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก " +"การค้นหาไม่ได้สนใจตัวพิมพ์ใหญ่เล็ก" +"
- ในการค้นหาคำค้นที่เป็นตัวเลือกเพิ่มเติม ใช้คำ OR ตย. " +"George OR Ringo" +"
- ในการแยกคำค้นออกไป ให้ใช้เครื่องหมายลบ (-) ไว้ข้างหน้า เช่น -cats" +"
- เมื่อทำการค้นหาวลี ใส่เครื่องหมายคำพูดเข้าไปด้วย ตย." +"\"There be dragons\"" +"
- เพิ่ม ext:ชนิด เพื่อทำการระบุนามสกุลของแฟ้ม ตย. ext:txt หรือ " +"ext: สำหรับชื่อแฟ้มไม่มีนามสกุล" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- เลือกโฟลเดอร์และทรัพยากรที่จะให้ทำดัชนี - หรือไม่ให้ทำ " +"
- เปลี่ยน ลำดับการเรียง และจำนวนผลลัพธ์ที่จะให้แสดง " +"
- สร้างปุ่มลัดของคุณเอง เพื่อทำการเปิดไดอะล็อกการค้นหา" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "เปิดไดอะล็อกการปรับแต่ง" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "พบ %1 ผลลัพธ์" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "ไม่มีผลลัพธ์" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "แสดงผลลัพธ์ที่ดีที่สุด %1 จาก %2" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(ยังคงหาอยู่)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "การเรียกค้นสำหรับ \"%1\" ล้มเหลว" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "สาเหตุที่เป็นไปได้มากที่สุดคือแดมอน Beagle ไม่ได้กำลังทำงานอยู่" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "เริ่มงานแดมอน Beagle โดยอัตโนมัติเมื่อทำการล็อกอิน" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "คลิกเพื่อเริ่มงานแดมอน Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "กำลังค้นหา..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "สั่งทำงาน" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "ดูครั้งล่าสุด: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "หน้าไม่มีชื่อ" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "ตีพิมพ์: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "เว็บล็อก:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "รายการไม่มีชื่อ" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "ปรับปรุงครั้งสุดท้าย: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "ไม่มีข้อสรุประบุไว้" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "ไม่มีชื่อที่รู้จัก" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "ที่ได้รับ: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "ไม่มีหัวเรื่อง" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "จาก" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "บุคคลไม่รู้จัก" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "แอพพลิเคชัน:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "วันที่: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "สนทนากับ %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "ติดตั้งเมื่อ: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "ขนาดในการติดตั้ง: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "ขนาดการดาวน์โหลด: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "เปิดดูในโปรแกรมจัดการแฟ้ม" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "ในโฟลเดอร์" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "ว่างเปล่า" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "บรรจุ %n รายการ" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

คะแนน: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "ไม่สามารถเริ่มงาน Tomboy ได้" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "ไม่สามารถเริ่มงาน Evolution ได้" + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "ไม่สามารถเริ่มงาน Tomboy ได้" + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "ไม่สามารถเริ่มงาน KAddressBook ได้" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "ไม่สามารถเริ่มงานแดมอน Beagle ได้" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "ไม่พบผลลัพธ์สำหรับคำค้น \"%1\"" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- ขอบเขตการค้นหาที่กว้างกว่านี้ จะทำให้ได้ผลลัพธ์มากกว่านี้" + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- คุณควรตรวจสอบการสะกดของคำค้นของคุณ" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- โปรแกรมแดมอน Beagle เพิ่งเริ่มงาน โปรดอดทนรอจนกว่ามันจะทำดัชนีเสร็จสิ้น" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "ยุบลงทั้งหมด" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "กางออกทั้งหมด" diff --git a/po/tr/Makefile.am b/po/tr/Makefile.am new file mode 100644 index 0000000..a9550cb --- /dev/null +++ b/po/tr/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = tr +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/tr/kcmbeagle.po b/po/tr/kcmbeagle.po new file mode 100644 index 0000000..120bf84 --- /dev/null +++ b/po/tr/kcmbeagle.po @@ -0,0 +1,229 @@ +# translation of kcmbeagle.po to +# +# Görkem Çetin , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-11-05 00:01+0200\n" +"Last-Translator: Görkem Çetin \n" +"Language-Team: \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Kullanılabilecek Beagle servislerinden birisini seçin." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Beagle servisleri" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&İndeksleme" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Servisler" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "&Servis Durumu" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Genel" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Beagle indekslemesine otomatik başla" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Pille çalışıyorken indeksle" + +#: indexing.cpp:59 +msgid "Index" +msgstr "İndeks" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Ev (başlangıç) dizinini de indeksle" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "İndekslenecek başka dizinleri ekleyin." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "İsim" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Ekle..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Gizlilik" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Tür" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Dizin Seç" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Bu dizini indekslenecek dizin listesinden silmek istiyor musunuz?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Dizini Sil" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Kaynak Ekle" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "Bu öğeyi indekslenecek verilerden silmek istiyor musunuz?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Öğeyi Sil" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Ara" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "İndekslemeden hariç tutulacak kaynağı seçin" + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Dizin:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Dosya adı:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Öntanımlı sonuç sıralaması: " + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Değiştirilme Tarihi" + +#: search.cpp:44 +msgid "Relevance" +msgstr "İlgi" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Başlangıçta öntanımlı sıralama yöntemini belirleyin." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Görüntülenecek azami sonuç sayısı:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Sınırsız" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "" + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Genel Kısayollar" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle Arama Motoru" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Arama Penceresini Göster" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Birincil Seçimi Ara" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Durumu Tazele" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "Beagle servisi çalışıyor. Durdurmak için buraya tıklayın." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "Beagle servisi çalışmıyor. Başlatmak için burayı tıklayın." + +#: status.cpp:118 +msgid "Start" +msgstr "Başla" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Servis başlatılmadı." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Beagle servis sürümü: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Güncel durum:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "İndeks bilgisi:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Beagle servisi zaten durmuş durumda." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Beagle servisi zaten çalışıyor." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Beagle servisi başlatılamadı." diff --git a/po/tr/kerry.po b/po/tr/kerry.po new file mode 100644 index 0000000..db27589 --- /dev/null +++ b/po/tr/kerry.po @@ -0,0 +1,695 @@ +# S.Çağlar Onur , 2006 +msgid "" +msgstr "" +"Project-Id-Version: Kerry 0.07\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-02-27 14:04+0020\n" +"Last-Translator: S.Çağlar Onur, \n" +"Language-Team: Turkish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: UTF-8\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Görkem Çetin" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "gorkem@pardus.org.tr" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Albüm: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Başlık: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Sanatçı: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Genişlik: %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Yükseklik: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Renk tipi: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "İş telefonu: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Ev telefonu: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Cep telefonu: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Protokol: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Başlangıç zamanı: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Bitiş zamanı: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Klasör: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Yazar: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Slayt: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Sayfa: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Kelime: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Sınıf: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Sürüm: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Paketleyici adı: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Paketleyici e-postası: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Yer: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Arama Geçmişini Temizle" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Kerry'i Ayarla..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle Arama" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Arama Penceresini Göster" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Birincil Seçimi Ara" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle Araması (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Kerry KDE başladığı zaman\n" +"otomatik olarak başlatılsın mı?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Kerry Otomatik Başlatılsın mı?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Başlatma" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Sisteminiz Daha Yavaş Olabilir" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Beagle KDE Önyüzü" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Arama Kriteri" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Arama penceresini uygulama başlayınca göster" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Skor: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Tanım" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Arama sonuçları ve kriterlerini temizle" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Ara:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Girilen terimi aramaya başla" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "%1. ve %2. sonuçlar arası görüntüleniyor (%3 sonuç arasında)." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Önceki Sonuçlar" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Önceki arama sonuçlarını göster" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Sonraki Sonuçlar" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Sonraki arama sonuçlarını göster" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Göster" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Herşey" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Uygulamalar" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Kişiler" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Ofis Dökümanları" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Konuşmalar" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Görüntüler" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Medya" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Web Sayfaları" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Dosya/Yol Adı" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Sırala" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Tip" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Tarih" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "İsim" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "İlişki" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Son Değiştirilme" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Herhangi Bir Zaman" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Bugün" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Dünden Beri" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Bu Hafta" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Bu Ay" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Bu Yıl" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "&Yapılandır..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Yapılandırma penceresini aç" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Arama penceresini kapat. Bir simge sistem çekmecesinde duracaktır" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Uygulamalar, Kişiler, Konuşmalar, Dosyalar ve daha fazlası..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Hızlı İpuçları" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Arama küçük büyük harf duyarsızdır." +"
- Seçimlik terim aramak için OR kullanın. Örnek: Ayşe OR Tatil" +"
- Arama terimini hariç tutmak için, önünde - karakteri kullanın, örneğin " +"-kedi" +"
- Bir ifadeyi ararken, tırnak kullanın. Örnek: \"Özgür dünya\"" +"
- Bir dosya sonekini belirtmek için ext:tür kullanın. Örnek: metin " +"dosyaları için ext:txt" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Hangi dizinlerin indeksleneceğini seçin." +"
- Sıralama sırasını ya da gösterilen sonuçların sayısını " +"değiştirebilirsiniz." +"
- Kendi kısayollarınızı tanımlayabilirsiniz." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Yapılandırma penceresini aç" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "%1 sonuç bulundu." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Sonuç yok." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "En iyi %1 sonuç gösteriliyor (%2 sonuç arasında)" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "%1 sorgusunda hata var." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Beagle servisi çalışmıyor." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Beagle uygulamasını açılışta başlat" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Beagle uygulamasını başlatmak için tıkla" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Aranıyor..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Çalıştır" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Son görüntüleme: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Başlıksız Sayfa" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Yayınlanma: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Başlıksız Girdi" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Son değişiklik: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Özet Yok" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Bilinmeyen İsim" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Alım: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Konu Yok" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Gönderen" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Bilinmeyen Kişi" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Uygulama:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Tarih: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "%1 ile Mesajlaşma" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Kurulu: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Kurulu boyut: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "İndirilen boyut: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Dosya Yöneticisinde Düzelt" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "Klasörde" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Boş" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "%n öğe içeriyor" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Puan: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Tomboy başlatılamadı." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Evolution başlatılamadı." + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "Tomboy başlatılamadı." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Adres defteri uygulaması başlatılamadı." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Beagle uygulaması çalıştırılamadı." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "\"%1\" için sonuç bulunamadı." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Daha geniş bir arama kapsamı, daha fazla sonucu gösterebilir." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Aradığınız kelimelerin yazımını kontrol edin." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Beagle servisi yeni başlatıldı. Lütfen indekslemeyi bitirene kadar bekleyin." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" diff --git a/po/uk/Makefile.am b/po/uk/Makefile.am new file mode 100644 index 0000000..7ffee10 --- /dev/null +++ b/po/uk/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = uk +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/uk/kcmbeagle.po b/po/uk/kcmbeagle.po new file mode 100644 index 0000000..38fbbe1 --- /dev/null +++ b/po/uk/kcmbeagle.po @@ -0,0 +1,236 @@ +# Translation of kcmbeagle.po to Ukrainian +# +# Ivan Petrouchtchak , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kcmbeagle\n" +"POT-Creation-Date: 2006-10-27 08:41+0200\n" +"PO-Revision-Date: 2006-10-28 21:52-0700\n" +"Last-Translator: Ivan Petrouchtchak \n" +"Language-Team: Ukrainian \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" + +#: backends.cpp:37 +msgid "Select which of the available Beagle backends you want to have enabled." +msgstr "Виберіть який з наявних програм Beagle ви хочете увімкнути." + +#: backends.cpp:40 +msgid "Backends" +msgstr "Програми" + +#: beagle.cpp:52 kerry.cpp:58 +msgid "&Indexing" +msgstr "&Індексування" + +#: beagle.cpp:53 kerry.cpp:59 +msgid "&Backends" +msgstr "&Програми" + +#: beagle.cpp:54 kerry.cpp:60 +msgid "&Daemon Status" +msgstr "Стан &даемона" + +#: indexing.cpp:47 search.cpp:32 +msgid "General" +msgstr "Загальне" + +#: indexing.cpp:52 +msgid "Start Beagle indexing service automatically" +msgstr "Автоматично запускати службу індексування Beagle" + +#: indexing.cpp:55 +msgid "Index data while on battery power" +msgstr "Індексувати дані, коли живлення від батареї" + +#: indexing.cpp:59 +msgid "Index" +msgstr "Індекс" + +#: indexing.cpp:65 +msgid "Index my home folder" +msgstr "Індексувати мою домівку" + +#: indexing.cpp:69 +msgid "Add any additional folder to be included for indexing." +msgstr "Додати додаткові теки для включення в індексування." + +#: indexing.cpp:75 indexing.cpp:108 search.cpp:43 +msgid "Name" +msgstr "Назва" + +#: indexing.cpp:81 indexing.cpp:115 +msgid "Add..." +msgstr "Додати..." + +#: indexing.cpp:96 +msgid "Privacy" +msgstr "Конфіденційність" + +#: indexing.cpp:101 +msgid "" +"Specify any resource, such as folder or pattern, you wish to exclude from " +"indexing." +msgstr "" +"Вкажіть будь-який ресурс, такий як теки чи шаблони, які ви хочете виключити з " +"індексування." + +#: indexing.cpp:107 search.cpp:41 +msgid "Type" +msgstr "Тип" + +#: indexing.cpp:226 indexing.cpp:257 +msgid "Select Folder" +msgstr "Виберіть теку" + +#: indexing.cpp:240 +msgid "" +"Do you really want to remove this folder from the list of folders to be " +"included for indexing?" +msgstr "" +"Ви дійсно хочете вилучити цю тек зі списку тек, які включено в " +"індексування?" + +#: indexing.cpp:240 +msgid "Remove Folder" +msgstr "Вилучити теку" + +#. i18n: file select_privacy_resource.ui line 16 +#: indexing.cpp:250 rc.cpp:3 +#, no-c-format +msgid "Add Resource" +msgstr "Додати ресурс" + +#: indexing.cpp:277 +msgid "" +"Do you really want to remove this item from the list of data to be excluded " +"from indexing?" +msgstr "" +"Ви дійсно хочете вилучити цей елемент зі списку даних, які виключено з " +"індексування?" + +#: indexing.cpp:277 +msgid "Remove Item" +msgstr "Вилучити елемент" + +#: kerry.cpp:57 +msgid "&Search" +msgstr "&Пошук" + +#. i18n: file select_privacy_resource.ui line 27 +#: rc.cpp:6 +#, no-c-format +msgid "Please select a resource you wish to exclude from indexing." +msgstr "Будь ласка, виберіть ресурс, який ви хочете виключити з індексування." + +#. i18n: file select_privacy_resource.ui line 55 +#: rc.cpp:10 +#, no-c-format +msgid "Folder:" +msgstr "Тека:" + +#. i18n: file select_privacy_resource.ui line 68 +#: rc.cpp:13 +#, no-c-format +msgid "File name pattern:" +msgstr "Шаблон назв файлів:" + +#: search.cpp:38 +msgid "Default result sort order:" +msgstr "Типове впорядкування результатів:" + +#: search.cpp:42 +msgid "Date Modified" +msgstr "Дата модифікації" + +#: search.cpp:44 +msgid "Relevance" +msgstr "Відповідність" + +#: search.cpp:45 +msgid "Define the default sort order at startup." +msgstr "Вкажіть типове впорядкування при запуску." + +#: search.cpp:50 +msgid "Maximum number of results displayed:" +msgstr "Максимальна кількість результатів для показу:" + +#: search.cpp:53 +msgid "No Limit" +msgstr "Без обмеження" + +#: search.cpp:54 +msgid "Define how many results shall be displayed on one result page." +msgstr "Вкажіть скільки результатів має бути показано на одній сторінці." + +#: search.cpp:58 +msgid "Show search results with details by default" +msgstr "Типово показувати результати з подробицями" + +#: search.cpp:62 +msgid "Global Shortcuts" +msgstr "Глобальні скорочення" + +#: search.cpp:68 +msgid "Kerry Beagle Search" +msgstr "Пошук Kerry Beagle" + +#: search.cpp:72 +msgid "Show Search Dialog" +msgstr "Показати вікно пошуку" + +#: search.cpp:73 +msgid "Search Primary Selection" +msgstr "Шукати головний вибір" + +#: status.cpp:73 +msgid "Refresh Status" +msgstr "Освіжити стан" + +#: status.cpp:113 +msgid "Beagle service is currently running. Click here to stop." +msgstr "Служба Beagle в даний час працює. Клацніть сюди, щоб її зупинити." + +#: status.cpp:117 +msgid "Beagle service is currently stopped. Click here to start." +msgstr "Служба Beagle в даний час зупинена. Клацніть сюди, щоб її запустити." + +#: status.cpp:118 +msgid "Start" +msgstr "Запустити" + +#: status.cpp:131 +msgid "Service not started." +msgstr "Службу не запущено." + +#: status.cpp:142 +msgid "" +"Beagle service version: %1\n" +msgstr "" +"Версія служби Beagle: %1\n" + +#: status.cpp:144 +msgid "" +"Current status:\n" +msgstr "" +"Поточний стан:\n" + +#: status.cpp:148 +msgid "Index information:" +msgstr "Інформація про індекс:" + +#: status.cpp:182 +msgid "Beagle service was already stopped." +msgstr "Службу Beagle вже було зупинено." + +#: status.cpp:201 +msgid "Beagle service already running." +msgstr "Службу Beagle вже було запущено." + +#: status.cpp:209 +msgid "Could not start beagle service." +msgstr "Не вдалося запустити службу beagle." diff --git a/po/uk/kerry.po b/po/uk/kerry.po new file mode 100644 index 0000000..8361e41 --- /dev/null +++ b/po/uk/kerry.po @@ -0,0 +1,706 @@ +# Translation of kerry.po to Ukrainian +# +# Ivan Petrouchtchak , 2006. +msgid "" +msgstr "" +"Project-Id-Version: kerry\n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-11-21 18:36-0800\n" +"Last-Translator: Ivan Petrouchtchak \n" +"Language-Team: Ukrainian \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" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Іван Петрущак" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "ivanpetrouchtchak@yahoo.com" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "Альбом: %1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "Заголовок: %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "Виконавець: %1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "Ширина : %1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "Висота: %1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "Тип кольору: %1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "Робочий телефон: %1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "Домашній телефон: %1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "Мобільний телефон: %1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM: %1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo: %1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN: %1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber: %1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ: %1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise: %1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "Протокол: %1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "Час початку: %1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "Час закінчення: %1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "Тека: %1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "Автор: %1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "Слайди: %1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "Сторінок: %1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "Слів: %1" + +#: beaglesearch.cpp:91 +#, c-format +msgid "Category: %1" +msgstr "Категорія: %1" + +#: beaglesearch.cpp:92 +#, c-format +msgid "Version: %1" +msgstr "Версія: %1" + +#: beaglesearch.cpp:94 +#, c-format +msgid "Packager name: %1" +msgstr "Назва пакувальника: %1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "Ел. пошта пакувальника: %1" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "Адреса: %1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "Розгорнути" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "Згорнути" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "Очистити історію пошуку" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "Налаштувати Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Пошук Kerry Beagle" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "Показати вікно пошуку" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "Пошук головного вибору" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Пошук Kerry Beagle (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<Нема недавніх пошуків>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"Чи повинен Kerry стартувати автоматично\n" +"під час входу в систему?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "Запускати Kerry автоматично?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "&Не запускати" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" +"Виявлено виконання щоденного процесу оновлення\n" +"індексу документації Beagle в усій системі." + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "Система може стати повільнішою, ніж звичайно" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Графічний інтерфейс KDE для Beagle" + +#: main.cpp:44 +msgid "A term to search" +msgstr "Термін для пошуку" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "Показувати вікно пошуку під час запуску" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "Рахунок: 0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "Опис" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "Очистити поля пошуку і результати" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "&Пошук:" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "Почати пошук для введеного терміну" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "Показано результати від %1 до %2 з %3." + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "&Попередні результати" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "Показати попередні результати пошуку" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "&Наступні результати" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "Показати наступні результати пошуку" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "Показати" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "Всього" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "Програми" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "Контакти" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "Офісних документів" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "Розмов" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "Зображень" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "Носіїв інформації" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Сторінок Тенет" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "Файл/назва шляху" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, no-c-format +msgid "Sort By" +msgstr "Впорядкувати за" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "Типом" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, no-c-format +msgid "Date" +msgstr "Датою" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "Назвою" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "Відповідністю" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, no-c-format +msgid "Last Modified" +msgstr "Останньою зміною" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "Будь-яка дата" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "Сьогодні" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "Зі вчора" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "Цього тижня" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "Цього місяця" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "Цього року" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, no-c-format +msgid "Confi&gure..." +msgstr "&Налаштувати..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "Відкрити вікно налаштування" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "Закрийте вікно пошуку; піктограма залишиться в системному лотку" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "Програми, контакти, розмови, файли та інше..." + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "Швидкі поради" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- Можна використовувати нижній або верхній регістр; на пошук це не впливає." +"
- Для пошуку за додатковими термінами вживайте OR (\"або\"), напр.: " +"Іван OR Євген" +"
- Щоб не включати терміни пошуку, скористайтесь знаком мінуса перед ними, " +"напр., -коти" +"
- Коли ви шукаєте за фразою, то додайте лапки, напр.: " +"\"Там будуть дракони\"" +"
- Додайте ext:type, щоб вказати розширення файла, напр.: ext:txt " +"або ext: для файла без розширення." + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" +"- Виберіть які теки і ресурси індексувати або пропустити." +"
- Змініть впорядкування і кількість показаних результатів." +"
- Виробіть власні скорочення для виклику вікна пошуку." + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "Відкрити вікно налаштування" + +#: searchdlg.cpp:370 +msgid "%1 results found." +msgstr "Знайдено результатів - %1." + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "Нема результатів." + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "Показано найкращі результати (%1) з %2." + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "(ще триває пошук)" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "Помилка запиту для \"%1\"." + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "Ймовірно, не запущено даемон Beagle." + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "Запускати даемон Beagle автоматично під час входу в систему" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "Клацніть для запуску даемона Beagle" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "Пошук..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "Запустити" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "Останній перегляд: %1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "Сторінка без назви" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "Опубліковано: %1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Веб-журнал:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "Запис без назви" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "Останні зміни: %1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "Не вказано короткий опис" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "Невідома назва" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "Отримано: %1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "Без теми" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "Від" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "Невідома особа" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "Програма:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "Дата: %1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "Розмова з %1" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "Встановлено: %1" + +#: searchdlg.cpp:907 +#, c-format +msgid "Installed size: %1" +msgstr "Розмір встановлення: %1" + +#: searchdlg.cpp:913 +#, c-format +msgid "Download size: %1" +msgstr "Розмір завантаження: %1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "Показати в менеджері файлів" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "У теці" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "Порожньо" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"Містить %n елемент\n" +"Містить %n елементи\n" +"Містить %n елементів" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

Рахунок: %1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "Не вдалося запустити Tomboy." + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "Не вдалося запустити Evolution." + +#: searchdlg.cpp:1331 +msgid "Could not start Thunderbird." +msgstr "Не вдалося запустити Thunderbird." + +#: searchdlg.cpp:1342 +msgid "Could not start KAddressBook." +msgstr "Не вдалося запустити KAddressBook." + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "Не вдалося запустити даемон Beagle." + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "не знайдено результатів для \"%1\"." + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "- Ширший обшир пошуку, можливо, видав би більше результатів." + +#: searchdlg.cpp:1462 +msgid "- You should check the spelling of your search words." +msgstr "- Перевірте правопис у словах пошуку." + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" +"- Тільки що запущено даемон Beagle. Будь ласка, зачекайте поки він не закінчить " +"індексування." + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "Згорнути всі" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "Розгорнути всі" diff --git a/po/zh_CN/Makefile.am b/po/zh_CN/Makefile.am new file mode 100644 index 0000000..b5f72f3 --- /dev/null +++ b/po/zh_CN/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = zh_CN +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/zh_CN/kerry.po b/po/zh_CN/kerry.po new file mode 100644 index 0000000..bc9bab4 --- /dev/null +++ b/po/zh_CN/kerry.po @@ -0,0 +1,806 @@ +# SOME DESCRIPTIVE TITLE. +# Novell Language , 2006. +# Funda Wang , 2006. +# +msgid "" +msgstr "" +"Project-Id-Version: base\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2006-05-26 20:18+0100\n" +"Last-Translator: Funda Wang \n" +"Language-Team: zh_CN \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.9\n" + +#: _translatorinfo.cpp:1 +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "Funda Wang" + +#: _translatorinfo.cpp:3 +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "fundawang@linux.net.cn" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "相册:%1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "标题 %1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "艺人:%1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "宽度:%1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "高度:%1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "颜色类型:%1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "业务电话:%1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "家庭电话:%1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "移动电话:%1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM:%1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo:%1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN:%1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber:%1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ:%1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise:%1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "协议:%1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "开始时间:%1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "结束时间:%1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "文件夹:%1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "作者:%1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "幻灯片数:%1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "页数:%1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "字数:%1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "日期:%1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "位置:%1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "页数:%1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "位置:%1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "清除搜索历史" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "配置 Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle 搜索" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "显示搜索对话框" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "搜索主选项" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle 搜索(%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<无最近搜索>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "是否在登录时自动启动 Kerry?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "自动启动 Kerry 吗?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "不启动(&D)" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Beagle 的 KDE 前端" + +#: main.cpp:44 +msgid "A term to search" +msgstr "要搜索的术语" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "在启动时显示搜索对话框" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "得分:0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "说明" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "清除搜索术语和结果" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "搜索(&S):" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "开始搜索输入的术语" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "显示了总共%3个结果中的第%1个到第%2个。" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "上一批结果(&P)" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "显示上一批搜索结果" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "下一批结果(&N)" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "显示下一批搜索结果" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "所有对象" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "应用程序" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "办公文档" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "对话" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "图像" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "媒体" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "Web 页面" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "排序依据" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "类型" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "日期:%1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "名称" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "相关性" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "修改日期" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "配置 Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "关闭搜索对话框,一个图标将驻留在系统托盘中" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "快速提示" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- 您可以使用大写和小写字符;搜索是不区分大小写的。" +"
- 要搜索可选的项,请使用 OR。 例如:George OR Ringo" +"
- 要排除搜索项,请在前面加上减号,例如 -cats" +"
- 当搜索短语时,请加上引号,例如:\"There be dragons\"" +"
- 加上 ext:type 可指定文件扩展名,例如:ext:txtext: 表示没有扩展名" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "显示了总共%2个结果中最匹配的%1个。" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "无结果。" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "显示了总共%2个结果中最匹配的%1个。" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "对“%1”的查询失败。" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "可能的原因是 Beagle 守护程序未运行。" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "在登录时自动启动 Beagle 守护程序" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "单击以启动 Beagle 守护程序" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "正在搜索..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "运行" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "上次查看:%1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "无标题页面" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "已发布:%1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Web 日志:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "无标题的项" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "上次修改:%1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "未指定摘要" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "无已知名称" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "接收时间:%1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "无主题" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "发件人" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "未知人员" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "应用程序:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "日期:%1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "与 %1 的对话" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "结束时间:%1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "结束时间:%1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "在文件管理器中显示" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "在文件夹中" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "空" + +#: searchdlg.cpp:1053 +#, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "包含 %n 项" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

得分:%1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "无法启动阿帖。" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "无法启动 Evolution。" + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "无法启动阿帖。" + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "无法启动阿帖。" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "无法启动 Beagle 守护程序。" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "未找到有关“%1”的结果。" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "- 您应当检查搜索单词的拼写,以确定是否无意间拼错了单词。" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "搜索(&S)" + +#~ msgid "&Indexing" +#~ msgstr "索引(&I)" + +#~ msgid "General" +#~ msgstr "常规" + +#~ msgid "Default result sort order:" +#~ msgstr "结果默认排序顺序:" + +#~ msgid "Date Modified" +#~ msgstr "修改日期" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "显示的最大结果数:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "定义一个结果页面上可显示多少个结果。" + +#~ msgid "Global Shortcuts" +#~ msgstr "全局快捷键" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "自动启动搜索和索引服务" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "索引(&I)" + +#~ msgid "Index my home folder" +#~ msgstr "对我的主文件夹建立索引" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "添加要在建立索引时包含的文件夹。" + +#~ msgid "Add..." +#~ msgstr "添加..." + +#~ msgid "Privacy" +#~ msgstr "隐私" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "指定您希望在建立索引时排除的资源,例如文件夹或模式。" + +#~ msgid "Select Folder" +#~ msgstr "选择文件夹" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "您确实要将此文件夹从建立索引时包括的文件夹列表中删除吗?" + +#~ msgid "Remove Folder" +#~ msgstr "删除文件夹" + +#~ msgid "Add Resource" +#~ msgstr "添加资源" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "您确实要将此文件夹从建立索引时排除的文件夹列表中删除吗?" + +#~ msgid "Remove Item" +#~ msgstr "删除项" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "无法启动 Beagle 守护程序。" + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "请选择您希望在建立索引时排除的资源。" + +#~ msgid "Folder:" +#~ msgstr "文件夹:" + +#~ msgid "File name pattern:" +#~ msgstr "文件名模式:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "排序依据" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "排序依据" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "相关性" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "定义启动时的默认排序顺序。您可以通过结果列表的快捷菜单来切换结果排序顺序。" + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "xx 到 xx (共xxx) 的结果已显示。" + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- 您可以使用“范围”组合框更改搜索范围。
  扩大搜索范围可产生更多的结果。" + +#~ msgid "&Within:" +#~ msgstr "范围(&W):" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "定义在哪些源中进行搜索" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "应用程序" + +#~ msgid "&Find" +#~ msgstr "查找(&F)" diff --git a/po/zh_TW/Makefile.am b/po/zh_TW/Makefile.am new file mode 100644 index 0000000..c37fe4d --- /dev/null +++ b/po/zh_TW/Makefile.am @@ -0,0 +1,3 @@ +KDE_LANG = zh_TW +SUBDIRS = $(AUTODIRS) +POFILES = AUTO diff --git a/po/zh_TW/kerry.po b/po/zh_TW/kerry.po new file mode 100644 index 0000000..05694cd --- /dev/null +++ b/po/zh_TW/kerry.po @@ -0,0 +1,819 @@ +# SOME DESCRIPTIVE TITLE. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: base\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-11-21 08:45+0100\n" +"PO-Revision-Date: 2005-03-09 13:54+0100\n" +"Last-Translator: Novell Language \n" +"Language-Team: Novell Language \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.9\n" + +#: _translatorinfo.cpp:1 +#, fuzzy +msgid "" +"_: NAME OF TRANSLATORS\n" +"Your names" +msgstr "" +"_: 譯者姓名\n" +"您的姓名" + +#: _translatorinfo.cpp:3 +#, fuzzy +msgid "" +"_: EMAIL OF TRANSLATORS\n" +"Your emails" +msgstr "" +"_: 譯者電子郵件\n" +"您的電子郵件" + +#: beaglesearch.cpp:42 +#, c-format +msgid "Album: %1" +msgstr "專輯:%1" + +#: beaglesearch.cpp:43 beaglesearch.cpp:75 beaglesearch.cpp:89 +#: beaglesearch.cpp:100 +#, c-format +msgid "Title: %1" +msgstr "標題:%1" + +#: beaglesearch.cpp:44 +#, c-format +msgid "Artist: %1" +msgstr "藝術家:%1" + +#: beaglesearch.cpp:45 +#, c-format +msgid "Width: %1" +msgstr "寬:%1" + +#: beaglesearch.cpp:46 +#, c-format +msgid "Height: %1" +msgstr "高:%1" + +#: beaglesearch.cpp:47 +#, c-format +msgid "Color type: %1" +msgstr "色彩類型:%1" + +#: beaglesearch.cpp:52 searchdlg.cpp:738 +#, c-format +msgid "Business phone: %1" +msgstr "公司電話:%1" + +#: beaglesearch.cpp:53 searchdlg.cpp:746 +#, c-format +msgid "Home phone: %1" +msgstr "住宅電話:%1" + +#: beaglesearch.cpp:54 searchdlg.cpp:742 +#, c-format +msgid "Mobile phone: %1" +msgstr "手機:%1" + +#: beaglesearch.cpp:55 +#, c-format +msgid "AIM: %1" +msgstr "AIM:%1" + +#: beaglesearch.cpp:56 +#, c-format +msgid "Yahoo: %1" +msgstr "Yahoo:%1" + +#: beaglesearch.cpp:57 +#, c-format +msgid "MSN: %1" +msgstr "MSN:%1" + +#: beaglesearch.cpp:58 +#, c-format +msgid "Jabber: %1" +msgstr "Jabber:%1" + +#: beaglesearch.cpp:59 +#, c-format +msgid "ICQ: %1" +msgstr "ICQ:%1" + +#: beaglesearch.cpp:60 +#, c-format +msgid "GroupWise: %1" +msgstr "GroupWise:%1" + +#: beaglesearch.cpp:63 +#, c-format +msgid "Protocol: %1" +msgstr "通訊協定:%1" + +#: beaglesearch.cpp:64 searchdlg.cpp:671 +#, c-format +msgid "Start time: %1" +msgstr "開始時間:%1" + +#: beaglesearch.cpp:65 searchdlg.cpp:673 +#, c-format +msgid "End time: %1" +msgstr "結束時間:%1" + +#: beaglesearch.cpp:69 +#, c-format +msgid "Folder: %1" +msgstr "資料夾:%1" + +#: beaglesearch.cpp:70 +msgid "(%1)" +msgstr "(%1)" + +#: beaglesearch.cpp:76 beaglesearch.cpp:99 +#, c-format +msgid "Author: %1" +msgstr "作者:%1" + +#: beaglesearch.cpp:77 +#, c-format +msgid "Slides: %1" +msgstr "投影片:%1" + +#: beaglesearch.cpp:79 beaglesearch.cpp:106 +#, c-format +msgid "Pages: %1" +msgstr "頁數:%1" + +#: beaglesearch.cpp:80 +#, c-format +msgid "Words: %1" +msgstr "字數:%1" + +#: beaglesearch.cpp:91 +#, fuzzy, c-format +msgid "Category: %1" +msgstr "日期:%1" + +#: beaglesearch.cpp:92 +#, fuzzy, c-format +msgid "Version: %1" +msgstr "位置:%1" + +#: beaglesearch.cpp:94 +#, fuzzy, c-format +msgid "Packager name: %1" +msgstr "頁數:%1" + +#: beaglesearch.cpp:95 +#, c-format +msgid "Packager email: %1" +msgstr "" + +#: beaglesearch.cpp:105 +#, c-format +msgid "Location: %1" +msgstr "位置:%1" + +#: hitwidget.cpp:98 searchdlg.cpp:1609 +msgid "Expand" +msgstr "" + +#: hitwidget.cpp:109 searchdlg.cpp:1609 +msgid "Collapse" +msgstr "" + +#: kerryapp.cpp:112 +msgid "Clear Search History" +msgstr "清除搜尋歷程" + +#: kerryapp.cpp:116 +msgid "Configure Kerry..." +msgstr "設定 Kerry..." + +#. i18n: file searchdlg_layout.ui line 22 +#: kerryapp.cpp:123 main.cpp:88 rc.cpp:13 rc.cpp:130 +#, no-c-format +msgid "Kerry Beagle Search" +msgstr "Kerry Beagle 搜尋" + +#: kerryapp.cpp:127 +msgid "Show Search Dialog" +msgstr "顯示搜尋對話方塊" + +#: kerryapp.cpp:128 +msgid "Search Primary Selection" +msgstr "搜尋主要選項" + +#: kerryapp.cpp:132 +msgid "Kerry Beagle Search (%1)" +msgstr "Kerry Beagle 搜尋 (%1)" + +#: kerryapp.cpp:158 +msgid "" +msgstr "<最近沒有搜尋>" + +#: kerryapp.cpp:188 +msgid "" +"Should Kerry start automatically\n" +"when you login?" +msgstr "" +"您登入時\n" +"是否自動啟動 Kerry?" + +#: kerryapp.cpp:188 +msgid "Automatically Start Kerry?" +msgstr "自動啟動 Kerry?" + +#: kerryapp.cpp:188 +msgid "&Do Not Start" +msgstr "不啟動(&D)" + +#: kerryapp.cpp:256 +msgid "" +"The daily running process for updating the system\n" +"wide Beagle documentation index was detected." +msgstr "" + +#: kerryapp.cpp:265 +msgid "System May Be Slower Than Usual" +msgstr "" + +#: main.cpp:38 +msgid "KDE Frontend to Beagle" +msgstr "Beagle 的KDE 前端 " + +#: main.cpp:44 +msgid "A term to search" +msgstr "搜尋詞彙" + +#: main.cpp:45 +msgid "Show search dialog on startup" +msgstr "啟動時顯示搜尋對話方塊" + +#. i18n: file hitwidget_layout.ui line 127 +#: rc.cpp:4 rc.cpp:121 +#, no-c-format +msgid "Score: 0" +msgstr "分數:0" + +#. i18n: file hitwidget_layout.ui line 288 +#: rc.cpp:7 rc.cpp:124 +#, no-c-format +msgid "Description" +msgstr "描述" + +#. i18n: file searchdlg_layout.ui line 83 +#: rc.cpp:17 rc.cpp:134 +#, no-c-format +msgid "Clear the search term and results" +msgstr "清除搜尋詞彙和結果" + +#. i18n: file searchdlg_layout.ui line 91 +#: rc.cpp:20 rc.cpp:137 +#, no-c-format +msgid "&Search:" +msgstr "搜尋(&S):" + +#. i18n: file searchdlg_layout.ui line 130 +#: rc.cpp:24 rc.cpp:141 +#, no-c-format +msgid "Start the search for entered term" +msgstr "開始搜尋輸入的詞彙" + +#. i18n: file searchdlg_layout.ui line 190 +#: rc.cpp:27 rc.cpp:144 searchdlg.cpp:376 +#, no-c-format +msgid "Results %1 through %2 of %3 are shown." +msgstr "顯示 %1 到 %2 (%3) 的結果。" + +#. i18n: file searchdlg_layout.ui line 235 +#: rc.cpp:30 rc.cpp:147 +#, no-c-format +msgid "&Previous Results" +msgstr "上一個結果(&P)" + +#. i18n: file searchdlg_layout.ui line 241 +#: rc.cpp:33 rc.cpp:150 +#, no-c-format +msgid "Show the previous search results" +msgstr "顯示上一個搜尋結果" + +#. i18n: file searchdlg_layout.ui line 266 +#: rc.cpp:36 rc.cpp:153 +#, no-c-format +msgid "&Next Results" +msgstr "下一個結果(&N)" + +#. i18n: file searchdlg_layout.ui line 272 +#: rc.cpp:39 rc.cpp:156 +#, no-c-format +msgid "Show the next search results" +msgstr "顯示下一個搜尋結果" + +#. i18n: file searchdlg_layout.ui line 317 +#: rc.cpp:42 rc.cpp:159 +#, no-c-format +msgid "Show" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 358 +#: rc.cpp:45 rc.cpp:162 +#, no-c-format +msgid "Everything" +msgstr "所有項目" + +#. i18n: file searchdlg_layout.ui line 369 +#: rc.cpp:48 rc.cpp:165 +#, no-c-format +msgid "Applications" +msgstr "應用程式" + +#. i18n: file searchdlg_layout.ui line 380 +#: rc.cpp:51 rc.cpp:168 +#, no-c-format +msgid "Contacts" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 391 +#: rc.cpp:54 rc.cpp:171 +#, no-c-format +msgid "Office Documents" +msgstr "公文" + +#. i18n: file searchdlg_layout.ui line 402 +#: rc.cpp:57 rc.cpp:174 +#, no-c-format +msgid "Conversations" +msgstr "交談" + +#. i18n: file searchdlg_layout.ui line 413 +#: rc.cpp:60 rc.cpp:177 +#, no-c-format +msgid "Images" +msgstr "影像" + +#. i18n: file searchdlg_layout.ui line 424 +#: rc.cpp:63 rc.cpp:180 +#, no-c-format +msgid "Media" +msgstr "媒體" + +#. i18n: file searchdlg_layout.ui line 435 +#: rc.cpp:66 rc.cpp:183 +#, no-c-format +msgid "Web Pages" +msgstr "網頁" + +#. i18n: file searchdlg_layout.ui line 446 +#: rc.cpp:69 rc.cpp:186 +#, no-c-format +msgid "File/Path Name" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 479 +#: rc.cpp:72 rc.cpp:189 +#, fuzzy, no-c-format +msgid "Sort By" +msgstr "排序方式" + +#. i18n: file searchdlg_layout.ui line 520 +#: rc.cpp:75 rc.cpp:192 +#, no-c-format +msgid "Type" +msgstr "類型" + +#. i18n: file searchdlg_layout.ui line 531 +#: rc.cpp:78 rc.cpp:195 +#, fuzzy, no-c-format +msgid "Date" +msgstr "日期:%1" + +#. i18n: file searchdlg_layout.ui line 542 +#: rc.cpp:81 rc.cpp:198 +#, no-c-format +msgid "Name" +msgstr "名稱" + +#. i18n: file searchdlg_layout.ui line 553 +#: rc.cpp:84 rc.cpp:201 +#, no-c-format +msgid "Relevance" +msgstr "相關" + +#. i18n: file searchdlg_layout.ui line 586 +#: rc.cpp:87 rc.cpp:204 +#, fuzzy, no-c-format +msgid "Last Modified" +msgstr "修改日期" + +#. i18n: file searchdlg_layout.ui line 627 +#: rc.cpp:90 rc.cpp:207 +#, no-c-format +msgid "Any Date" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 638 +#: rc.cpp:93 rc.cpp:210 +#, no-c-format +msgid "Today" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 649 +#: rc.cpp:96 rc.cpp:213 +#, no-c-format +msgid "Since Yesterday" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 660 +#: rc.cpp:99 rc.cpp:216 +#, no-c-format +msgid "This Week" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 671 +#: rc.cpp:102 rc.cpp:219 +#, no-c-format +msgid "This Month" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 682 +#: rc.cpp:105 rc.cpp:222 +#, no-c-format +msgid "This Year" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 751 +#: rc.cpp:108 rc.cpp:225 +#, fuzzy, no-c-format +msgid "Confi&gure..." +msgstr "設定 Kerry..." + +#. i18n: file searchdlg_layout.ui line 754 +#: rc.cpp:111 rc.cpp:228 +#, no-c-format +msgid "Open the configuration dialog" +msgstr "" + +#. i18n: file searchdlg_layout.ui line 782 +#: rc.cpp:117 rc.cpp:234 +#, no-c-format +msgid "Close the search dialog, an icon will stay in the system tray" +msgstr "關閉搜尋對話方塊,圖示留在系統匣中" + +#: searchdlg.cpp:79 +msgid "Applications, Contacts, Conversations, Files and more..." +msgstr "" + +#: searchdlg.cpp:161 +msgid "Quick Tips" +msgstr "快速秘訣" + +#: searchdlg.cpp:165 +msgid "" +"- You can use upper and lower case; search is case-insensitive." +"
- To search for optional terms, use OR. ex: George OR Ringo" +"
- To exclude search terms, use the minus symbol in front, such as " +"-cats" +"
- When searching for a phrase, add quotes. ex: \"There be dragons\"" +"
- Add ext:type to specify a file extension, ex: ext:txt or " +"ext: for none" +msgstr "" +"- 您可使用大寫和小寫,搜尋會區分大小寫。" +"
- 若要搜尋選擇性詞彙,請使用 OR。例如: George OR Ringo" +"
- 若要排除搜尋詞彙,請在前面使用減號,例如 -cats" +"
- 搜尋一組詞時,請加上引號。例如: \"There be dragons\"" +"
- 加上 ext:type 可指定副檔名,例如: ext:txtext: 代表無副檔名" + +#: searchdlg.cpp:178 +msgid "" +"- Choose what folders and resources shall be indexed - or not." +"
- Change the sort order and the number of shown results." +"
- Define your own shortcuts to invoke the search dialog." +msgstr "" + +#: searchdlg.cpp:187 +msgid "Open configuration dialog" +msgstr "" + +#: searchdlg.cpp:370 +#, fuzzy +msgid "%1 results found." +msgstr "顯示最佳 %1 結果 (%2)。" + +#: searchdlg.cpp:372 +msgid "No results." +msgstr "沒有結果。" + +#: searchdlg.cpp:374 +msgid "Best %1 results of %2 shown." +msgstr "顯示最佳 %1 結果 (%2)。" + +#: searchdlg.cpp:380 +msgid "(still searching)" +msgstr "" + +#: searchdlg.cpp:398 +msgid "The query for \"%1\" failed." +msgstr "查詢 %1 失敗。" + +#: searchdlg.cpp:402 +msgid "The likely cause is that the Beagle daemon is not running." +msgstr "可能的原因是 Beagle 精靈沒有在執行。" + +#: searchdlg.cpp:404 +msgid "Automatically start Beagle daemon at login" +msgstr "登入時自動啟動 Beagle 精靈" + +#: searchdlg.cpp:413 +msgid "Click to start the Beagle daemon" +msgstr "按一下以啟動 Beagle 精靈" + +#: searchdlg.cpp:423 +msgid "Searching..." +msgstr "正在搜尋..." + +#: searchdlg.cpp:562 +msgid "Run" +msgstr "執行" + +#: searchdlg.cpp:575 +#, c-format +msgid "Last viewed: %1" +msgstr "上一次檢視:%1" + +#: searchdlg.cpp:578 +msgid "URL:" +msgstr "URL:" + +#: searchdlg.cpp:589 +msgid "Untitled Page" +msgstr "未命名網頁" + +#: searchdlg.cpp:600 +#, c-format +msgid "Published: %1" +msgstr "發行:%1" + +#: searchdlg.cpp:606 +msgid "Weblog:" +msgstr "Weblog:" + +#: searchdlg.cpp:617 searchdlg.cpp:656 +msgid "Untitled Entry" +msgstr "未命名項目" + +#: searchdlg.cpp:628 searchdlg.cpp:646 searchdlg.cpp:985 searchdlg.cpp:1058 +#, c-format +msgid "Last modified: %1" +msgstr "上一次修改:%1" + +#: searchdlg.cpp:682 +msgid "No Summary Specified" +msgstr "未指定摘要" + +#: searchdlg.cpp:703 searchdlg.cpp:752 +msgid "No Name Known" +msgstr "不知道名稱" + +#: searchdlg.cpp:709 searchdlg.cpp:759 +msgid "," +msgstr "," + +#: searchdlg.cpp:780 +#, c-format +msgid "Received: %1" +msgstr "接收:%1" + +#: searchdlg.cpp:797 +msgid "No Subject" +msgstr "沒有主旨" + +#: searchdlg.cpp:803 searchdlg.cpp:883 +msgid "From" +msgstr "從" + +#: searchdlg.cpp:808 searchdlg.cpp:856 +msgid "Unknown Person" +msgstr "不明人士" + +#: searchdlg.cpp:827 +msgid "Application:" +msgstr "應用程式:" + +#: searchdlg.cpp:847 +#, c-format +msgid "Date: %1" +msgstr "日期:%1" + +#: searchdlg.cpp:856 +#, c-format +msgid "Conversation With %1" +msgstr "使用 %1 交談" + +#: searchdlg.cpp:901 +#, c-format +msgid "Installed on: %1" +msgstr "" + +#: searchdlg.cpp:907 +#, fuzzy, c-format +msgid "Installed size: %1" +msgstr "結束時間:%1" + +#: searchdlg.cpp:913 +#, fuzzy, c-format +msgid "Download size: %1" +msgstr "結束時間:%1" + +#: searchdlg.cpp:939 searchdlg.cpp:1009 searchdlg.cpp:1084 +msgid "Reveal in File Manager" +msgstr "在檔案管理員中顯示" + +#: searchdlg.cpp:967 searchdlg.cpp:1030 +msgid "In Folder" +msgstr "所在資料夾" + +#: searchdlg.cpp:1051 +msgid "Empty" +msgstr "空的" + +#: searchdlg.cpp:1053 +#, fuzzy, c-format +msgid "" +"_n: Contains 1 item\n" +"Contains %n items" +msgstr "" +"_n: 包含 1 個項\n" +"包含 %n 個項目" + +#: searchdlg.cpp:1089 +msgid "

Score: %1

" +msgstr "

分數:%1

" + +#: searchdlg.cpp:1289 +msgid "Could not start Tomboy." +msgstr "無法啟動 Tomboy。" + +#: searchdlg.cpp:1319 +msgid "Could not start Evolution." +msgstr "無法啟動 Evolution。" + +#: searchdlg.cpp:1331 +#, fuzzy +msgid "Could not start Thunderbird." +msgstr "無法啟動 Tomboy。" + +#: searchdlg.cpp:1342 +#, fuzzy +msgid "Could not start KAddressBook." +msgstr "無法啟動 Tomboy。" + +#: searchdlg.cpp:1387 +msgid "Could not start Beagle daemon." +msgstr "無法啟動 Beagle 精靈。" + +#: searchdlg.cpp:1454 +msgid "No results for \"%1\" were found." +msgstr "找不到 %1。" + +#: searchdlg.cpp:1461 +msgid "- A broader search scope might produce more results." +msgstr "" + +#: searchdlg.cpp:1462 +#, fuzzy +msgid "- You should check the spelling of your search words." +msgstr "- 您應該檢查搜尋字詞的拼字,看看有沒有拼錯。" + +#: searchdlg.cpp:1464 +msgid "" +"- The Beagle daemon was just started. Please be patient until it finished its " +"indexing." +msgstr "" + +#: searchdlg.cpp:1610 +msgid "Collapse All" +msgstr "" + +#: searchdlg.cpp:1611 +msgid "Expand All" +msgstr "" + +#~ msgid "&Search" +#~ msgstr "搜尋(&S)" + +#~ msgid "&Indexing" +#~ msgstr "索引(&I)" + +#~ msgid "General" +#~ msgstr "一般" + +#~ msgid "Default result sort order:" +#~ msgstr "預設結果排序:" + +#~ msgid "Date Modified" +#~ msgstr "修改日期" + +#~ msgid "Maximum number of results displayed:" +#~ msgstr "最大結果顯示數目:" + +#~ msgid "Define how many results shall be displayed on one result page." +#~ msgstr "定義一個結果網頁的最大結果顯示數目。" + +#~ msgid "Global Shortcuts" +#~ msgstr "全域捷徑" + +#, fuzzy +#~ msgid "Start Beagle indexing service automatically" +#~ msgstr "開始搜尋 && 並自動索引服務" + +#, fuzzy +#~ msgid "Index" +#~ msgstr "索引(&I)" + +#~ msgid "Index my home folder" +#~ msgstr "索引我的主要資料夾" + +#~ msgid "Add any additional folder to be included for indexing." +#~ msgstr "新增要索引的其他資料夾。" + +#~ msgid "Add..." +#~ msgstr "新增..." + +#~ msgid "Privacy" +#~ msgstr "隱私權" + +#~ msgid "Specify any resource, such as folder or pattern, you wish to exclude from indexing." +#~ msgstr "指定不索引的任何資源,例如,資料夾或模式。" + +#~ msgid "Select Folder" +#~ msgstr "選取資料夾" + +#~ msgid "Do you really want to remove this folder from the list of folders to be included for indexing?" +#~ msgstr "您確定要移除索引資料夾清單中的這個資料夾?" + +#~ msgid "Remove Folder" +#~ msgstr "移除資料夾" + +#~ msgid "Add Resource" +#~ msgstr "新增資源" + +#~ msgid "Do you really want to remove this item from the list of data to be excluded from indexing?" +#~ msgstr "您確定要移除不索引資料清單中的這個項目?" + +#~ msgid "Remove Item" +#~ msgstr "移除項目" + +#, fuzzy +#~ msgid "Could not start beagle service." +#~ msgstr "無法啟動 Beagle 精靈。" + +#~ msgid "Please select a resource you wish to exclude from indexing." +#~ msgstr "請選取不要索引的資源。" + +#~ msgid "Folder:" +#~ msgstr "資料夾:" + +#~ msgid "File name pattern:" +#~ msgstr "檔名模式:" + +#, fuzzy +#~ msgid "Sort by Type" +#~ msgstr "排序方式" + +#, fuzzy +#~ msgid "Sort by Date" +#~ msgstr "排序方式" + +#, fuzzy +#~ msgid "Sort by Relevance" +#~ msgstr "相關" + +#~ msgid "Define the default sort order at startup. You can switch the result sort order with the result list context menu." +#~ msgstr "啟動時定義預設排序。您可以使用結果清單快顯功能表,切換結果排序。" + +#~ msgid "Results of xx through xx of xxx are shown." +#~ msgstr "顯示 xx 到 xx (xxx) 的結果。" + +#~ msgid "- You can change the scope of your search using the \"Within\" combo box.
  A broader search scope might produce more results." +#~ msgstr "- 您可以使用 \"Within\" 下拉式方塊,變更搜尋範圍。
  搜尋範圍愈大,搜尋結果可能愈多。" + +#~ msgid "&Within:" +#~ msgstr "之內(&W):" + +#~ msgid "Define in what sources shall be searched" +#~ msgstr "定義要搜尋的來源" + +#, fuzzy +#~ msgid "Add Application Paths" +#~ msgstr "應用程式" + +#~ msgid "&Find" +#~ msgstr "尋找(&F)" + +#~ msgid "Could not start instant message log viewer." +#~ msgstr "無法啟動即時訊息記錄檢視器。" diff --git a/stamp-h.in b/stamp-h.in new file mode 100644 index 0000000..e69de29 diff --git a/subdirs b/subdirs new file mode 100644 index 0000000..3c9d8f5 --- /dev/null +++ b/subdirs @@ -0,0 +1,2 @@ +kerry +po