dict-xh-20070206.orig/0000755000175000017500000000000010562171667012740 5ustar dokodokodict-xh-20070206.orig/xh/0000755000175000017500000000000010562173203013343 5ustar dokodokodict-xh-20070206.orig/xh/aspell/0000755000175000017500000000000010562173203014623 5ustar dokodokodict-xh-20070206.orig/xh/aspell/info.in0000644000175000017500000000033510562150021016100 0ustar dokodokoname_english Xhosa lang xh author: name Zuza Software Foundation email info at translate org za copyright LGPL version {VERSION} charset iso8859-1 special - -*- soundslike none alias xh xhosa dict: name xh add xh dict-xh-20070206.orig/xh/aspell/Copyright0000644000175000017500000000042210562150021016505 0ustar dokodokoThe Aspell Xhosa dictionary is based on the combined Xhosa wordlist: http://cvs.sourceforge.net/viewcvs.py/translate/dict/xh/ Xhosa Wordlist ------------- Copyright (C) 2004 Kevin Scannel The wordlist is based on Internet crawling with seed pages from the Xhosa Bible. dict-xh-20070206.orig/xh/myspell/0000755000175000017500000000000010562173203015030 5ustar dokodokodict-xh-20070206.orig/xh/myspell/README_xh_ZA.txt0000644000175000017500000006662510562150022017630 0ustar dokodokoMySpell Xhosa Spellchecker ------------------------------ 1. Copyright 2. Installation and Setup 3. Contributing 4. Copying Enjoy! 1. Copyright ============ Xhosa Wordlist ------------- Copyright (C) 2004 Kevin Scannel the wordlist has been licened under the LGPL. The initial wordlist was created from a web crawler corpora. Effort has been made to validate capitalisation but there may be errors. MySpell Affix File ------------------ Copyright (C) 2004 Zuza Software Foundation release under the LGPL Currently the affix file only has word frequencies with no affix compression specified. 2. Installation and Setup ========================= Automated --------- http://lingucomponent.openoffice.org/download_dictionary.html Use the DicOOo.sxw file to step you through an automatic install process. If the Xhosa spellchecker is not available online then download the offline pack from: http://translate.sourceforge.net/ Non-automated ------------- For instructions on how to install the Xhosa dictionary please visit the following URL. http://lingucomponent.openoffice.org/download_dictionary.html#installspell Spellchecker Selection ---------------------- Tools -> Options -> Language Settings -> Writing Aids Available language modules -> Edit -> Select Xhosa -> Ensure it is enabled 3. Contributing =============== You can help to make this software better. If you find errors in the spellchecker or have wordlists that you would like to contribute to the spellchecker or if you would like to extend the affix file then contact Dwayne Bailey 4. Copying ========== GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 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. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, 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 and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, 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 library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete 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 distribute a copy of this License along with the Library. 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 Library or any portion of it, thus forming a work based on the Library, 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) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, 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 Library, 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 Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you 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. If distribution of 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 satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be 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. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library 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. 9. 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 Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library 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 with this License. 11. 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 Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library 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 Library. 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. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library 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. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser 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 Library 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 Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, 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 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "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 LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. 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 LIBRARY 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 LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), 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 Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. 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) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! dict-xh-20070206.orig/xh/myspell/xh_ZA.aff0000644000175000017500000000160210562150022016510 0ustar dokodoko# xh_ZA.aff - Xhosa (xh) affix file for use in myspell # # Copyright (C) 2004 Zuza Software Foundation # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # SET ISO8859-1 TRY aeinulkhosbgywmztdpfcqrvj-ASJMHxEKBGNPTRLDIZFOUWVYC dict-xh-20070206.orig/xh/wordlists/0000755000175000017500000000000010562173203015375 5ustar dokodokodict-xh-20070206.orig/xh/wordlists/wordlist.openoffice.in0000644000175000017500000040760010562150025021714 0ustar dokodoko# wordlist.opeenoffic.in - Xhosa (xh) words extracted from the # translations of OpenOffice.org # # Copyright (C) 2006 Zuza Software Foundation # # Some words that were found have been expanded to cover plurals, # etc. Capitalisation has been validated. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # igama po ixabiso okanye inani ukuba ukuya ngaphandle khetha uxwebhu seenkcukacha nceda imposiso isiqendu ukuze isimbo ifayili ufuna ingaba xa akukho text faka Podile Kholisa ukwenzela ukusuka uluhlu iinkcukacha isakhelo umgca sebenzisa apha ulungiselelo indawo umhla into indlela ekunene ekhohlo uludwe cima inombolo olwehlayo kubuyiswa kuphela ummandla ulwazi itheyibhile imimiselo susa umsebenzi inkqubo zonke phezulu kwekhasi khona ingxelo Hlela weefayili olu nqomfa phambi Bonisa amaxwebhu le kuko weenkcukacha ubukhulu kubuyiselwa izintlu gcina apho phakathi ngenisa kufuneka emva ayikwazanga imimandla fakela isixa Isazisi iifayili izinto ixesha iqhosha ezehlayo zegrafu umda amaxabiso uvimba ikhasi yokusebenza misela isihloko oku kwakhona imigca ezantsi umdibaniso imo phinda isalathi amagama iziqulatho itshati enjengoonobumba kuyo org kwenzeke ngokobude ukufaka uguqulelo oluxwesileyo onke iinguquko lo kabini ekukhethwa umthombo umbala seefayili ngezantsi ngaphezulu ngoku ngokobubanzi izimbo icwecwe ngaphakathi kakuhle isiseko kwaye kubalwa unako ububanzi iiseli lweenkcukacha iimpawu yenza ukuqhuba musa ekupheleni dala yakho qwalasela isixwexwe inkxaso ekuqaleni ukucima qinisekisa isihluzi sakho imibhalo emazantsi wothungelwano unxulumaniso konke yothungelwano uze lokuqala ezixwesileyo yeedilesi kakhulu izikhewu inkcazelo umbhalo ngokuzenzekela luya Hlengahlengisa yesiqendu kakade entsha embindini elandelayo zemiyalelo lona isakhono ikhowudi iindawo olandelayo izazobe ithuba isiqulathi isalathisi guqula endaweni umthakathi ubude ngekhompyutha isithuba intloko ikona idilesi zeenkcukacha uphawu somgca oonobumba lwesiqendu lwefayili kulungiselelo kulo kufakwa izakhelo yemeyile yeenkcukacha thumela kuba koshicilelo isixhobo iinombolo ifonti esi app xwebhu phawu ngoko lokugqithisa kuvimba kunye ifomu elipheleleyo wolwazi umsebenzisi ke isantya imisebenzi amaqondo wokufaka umzobo umgangatho kwisiseko kanxantathu ezinye ayikwazi zidibanise uyafuna oluzenzekelayo ngethuba ngenene Layisha kwimo kususwa inqanaba esipheleleyo elinye Yila wefonti umfuziselo ukufikelela qalisa ofuna lekhompyutha kuxwebhu iitheyibhile eli ekujoliswe Bhabhisela bakho usasazo src qaphela onjengonobumba olutsha ngokusebenzisa islayidi yemposiso ulawulo uhlobo kuthunyelwa kunjalo kumgca inyathelo imida iifonti yoqukuqelo yamacuntsu writer uya umbhexeshi phantsi phambili ohamba Isidibanisi isalathiso fumana uncedo shicilela shenxisa ngeempawu lesiseko kwisakhelo kwi kuluhlu kuludwe kodwa iseva imeko i eyonganyelweyo esitsha elilelona ubumbeko Tshintsha senzala okukhethwayo ngenxa ngaphaya lokugqibela kuzo kukho komgca izixhobo ingqokelela inc gama esizikithini enye calc yonke yesixokelelwano unike umyalezo okunye okubhalwe ngaphezu kwesi kulapho isiqulatho isimo ilayibrari iingxelo ifaka zoyelelwano ziya zakho yekhasi umva umhlathi ukukhetha sesiqendu malunga lakho kwiqokobhe kwifayili jonga isiphumo iseli iileyibhile hlaziya elitsha alukwazanga yinyaniso wesikhululo Uthungelwano ummiselo Umboniso ulwimi nokuba nika ngokunjalo ngasentla lefayili langoku kwitheyibhile kuya kusetyenziswa Kopa izlayidi isishicileli inxalenye impress imodyuli iinkcazelo ezikhethiweyo vula umncedi ukumiswa ukubonisa ucwangciso okuzenzekelayo ngendlela lungelelanisa leeseli intandabuzo incwadi iinkqubo icandelo Fihla ezivela elifanele ekubhekiselelwe ehamba ayikho amanani zoluhlu zemigca yokwenza yesiseko uqhube ungenelo ukuphakama ukujonga soxwebhu somsebenzi sokusebenza okwangoku okulandelayo obona Microsystems mhlawumbi kuvuleka koxwebhu izithuba IYurophu iya Imenyu guqulela ezonganyelweyo esizenzekelayo buncinci amakhasi yenani wokuqala vala uqalise umyalelo umqondiso umfanekiso ukususa ukhuseleko sengxelo semigca segrafu openoffice ngempumelelo lwangoku luqulethe Lungiselela lomsebenzisi kwisixokelelwano kwinani izibiyeli igophe iengile ethi esisiseko elimbaxa elilandelayo ekhethiweyo asikwazanga zokusebenza yodwa ye womyalelo wesiseko wesiqendu wandule uvavanyo ungeniso Ukushiywa ukusebenzisa ukusebenza Tyhila sothungelwano osasazo okubhalwa nabaqeshwa kwindawo kwexabiso ku-30 kolu ISpanish isixokelelwano isikhululo IsiArabic iqulethe intsingiselo fayili esilandelayo elithi eliphakathi elibalelwa awukwazanga amacwecwe ziziphumezi Zingela zeedilesi yexabiso Vumela uyilo uqinisekile umlinganiselo umaleko ukusetyenziswa ukufakwa udidi omtsha okufutshane ngqindilili ngomgca luzizi loluhlu kwikhasi kwezikhewu kwamagama kumsebenzi koluhlu izihluzi isithunzi isilumkiso iqela imibala Excel ewe engasebenziyo elisentloko zeefayili yenkqubo yangoku yandisa yamanani unxulumano ukugcina ubekelelo sekhasi oya omnye noku nganye lwetheyibhile kuthatyathwa kuguqulwa kuguqulelwa inzala inkcazelo-mboniso iindlela ethatyathwa esifanele ERR emgceni ekunokukhethwa ekhoyo benkxaso amaqhosha zenkqubo yengxoxo yelayisensi yangaphambili X wenkcazelo unxaxho umzekelo umiselo umahluko ukumiselwa ukumisela ukubuyiswa ukubhala ukhethe sovavanyo shenxisela seyikhona qhosha olulodwa okona nyathelo Ngesalathisi na msebenzi lwe-HTML lokugqithisela kwemigca kuwo kuso kulayishwa Kuhlohlwa kudaleka Isihangul iseti isazobe intsusa inguquko imiqondiso imiqathango imeyile iindleko ifestile ezikhoyo eyehlayo Chaza azikwazanga abakhulu zeziqendu zetheyibhile yiya yakusebenza xela wemigca wefomu uzame usuku ulungelelaniso ukuthumela ufakele sentlawulo selikhona sefayili ongezantsi ngokwamaqela ngokutsha ngokubeka ngalinye ngako lweeseli lomgangatho lokuthenga lokuqalisa lincinci kwithuba kwisiqendu kwayona kuqinisekiswa kumthombo kummandla Kukrwelwa kufakwe izilawuli isigxina ibhokisi ezi esikhoyo esebenzayo engeyo elikhoyo DOS athile zesiqendu yokhuseleko yobumbeko yinto yenkcazelo wentsebenziswano unqomfe umnxeba umbuzo soluhlu sezixhobo sakhelo s rhoxisa olunye nto ngayo ngamehlo ngalo lwemali lweedilesi lwakho lothungelwano lommandla Linganisa leentsuku kwefayili kweenkcukacha Khusela iziqalelo iziphumo isiNgesi isibuliso i-macro iinxalenye iintlobo iingongoma iimposiso ii-macro ifeksi hayi ezintsha evela esinye eseNtshona esandleni esabumdlalo elona ehlala bala zolungiselelo zokuzoba zobumbeko yozingelo yomsebenzi Yolula yetheyibhile yeposi yeemposiso y womgca wokuqalisa wezixhobo wesakhelo uzingelo uthotho uphinyephinye umtya ukumisa Ukukhutshwa ukudala ukuboniswa uhlele thabatha StarOffice simbo sangaphambili qhaqha oyilwayo nkqubo ngokuchanekileyo nezintlu nemiqathango n Macintosh macala lwesalathi lula lomsebenzi liphezulu lezintlu kwi-OpenOffice kwesakhelo kuqwalaselwa kuncinci i-OpenOffice Inkwenkwezi iinkonzo iimpembelelo ibloko esisebenzayo elinokwenzeka bukhulu bandakanya Apple amanqaku amaninzi amalungelo alisebenzi alikwazanga akhoyo zoxwebhu zesixokelelwano ze yolwazi yolungiselelo yoludwe yokugqibela yekhompyutha we wakho uqwalaselo uphinde unyaka umyilo ukwenza ukuqalisa ukhuselo ugxumeko source sesazinge sangoku phawula ongasentla Okukhethwa okuhlala njani ngomatshini ngokupheleleyo ngokugqitha namanani mveliso misc MB lwethutyana lwekhasi lwamanani losasazo likhulu langaphambili kwangaphambili kuthungelwano kuqaliswa kumda kule kukhona kugcineka i-URL ithambeka isolulo isiza Isangqa inqaku Inkonzo imvumelwano imihlathi ilizwe iifomu Igalelo ezininzi ezikugcino ezifanele esihlala engaziwayo elingasebenziyo ekufuneka ekhompyutheni eboniswayo Dwelisa dlg dialogs dialog bhala amaqela amachaphaza amabini Zalisa yokufaka yezixhobo yezazobe Yepokotho yegalelo wokuqulathiweyo wesixokelelwano usehlisa unqumamo umthwalo Ukukhethwa ubhaliso ubalo somsebenzisi sihloko seseli sento sefestile qhuba olukhethiweyo Okungasemva nxulumanisa njengoko ngokungqalileyo Nciphisa lwengxelo loxwebhu lovavanyo lokukopa leyo lexesha letheyibhile ledesimali kwiseli kwetheyibhile kwesiqendu kwenzeka kuqhutywa kulingana kudalwa kucinywa koko iziseko iziqendu izalathi Isixeko isiqalelo Isiphelo isicwangciso isampulu isahlulo Iphindaphindwe ingxoxo imizobo imilinganiselo ileyibhile ileta ikhona iitshati iimacro Hlelahlela hlela-hlela evelayo ephumayo engqongileyo emibini elixeliweyo ebuyiselwa ayisebenzi amacala akusayi a zesiseko zendawo zangaphandle yosasazo yomfuziselo yokuqalisa yangaphakathi Yamkela xabiso Word womsebenzi Wokugqabaza wesibini wasemdeni umkhondo Umbhali ukuzigcina ukuphinda ukubekwa ugcinelwe thoba sun soloko sokufaka sikhulu se-XML setheyibhile seajenda rhoqo PowerPoint Phuma Pheza osisiseko oluqhelekileyo olulandelayo office nomlawuli ngokunye Ngenqanawa ngemimiselo ngamnye negama ncam naxa nasezantsi mnyama lwe-OpenOffice lwamagama langaphakathi kwi-disk kwi-CD kwenkqubo kunikwa kungenjalo kumthakathi kumakhasi kuchazwa kuboniswa Kubhaliswa koku Khangela kanje Jikelezisa izixa izalathiso isiqingatha isiphumezi isiganeko i-Microsoft imbonakalo hlomela funda-kuphela funda FILE ezisisiseko ezingu-1 ezingenanto ezilandelayo ethunyelwa esentloko engangqalanga eminye eliguquguqukayo elandisayo Ekuthunyelwa draw Dibanisa beka befonti awaneleyo amanyathelo alukho akunakwenzeka afanele zomsebenzisi zininzi zeeseli zeempawu yophawu yomsebenzisi yokuphuma yohlobo Yiba yesishicileli yesalathi yemiqondiso yeka yeglu xml wokukhanya wokugqibela wenze wenani wegalelo unamalungelo umisele Umgama Umbuso ukutshintsha Ukuphuphuma ukuphawula ukungenisa ukulungiselela ukukhanya ube siqala sibe semveliso sefeksi othi ongu-X olwaneleyo okwenzileyo obukhanyayo o neetheyibhile nasekunene nangemigca mmandla Manyanisa lwe luqhutywe luhlu luhlaza lopelo-magama lomthombo lolwandiso-mali linani lethemba lesimbo lentengiso lamacala kwisiqulathi kwiifayili kwicwecwe kwibhokisi kwethuba kwenye kweli kwegama kuyiwa kuqala kunoku kumiselwa kumaxwebhu kulindeleke kukwazi kugcinwa izixwexwe izindwe izibambi IsiChinese isandi isakhiwo irula Iqondo inyanga intlawulo ingongoma Imvulophu imibekelelo ikopi ikhonto ikhonco iingxoxo iimodyuli iimeko Gobela ezinqumlayo eyi-tangent eya exeliweyo esisesona esingasebenziyo esikhethiweyo engqonge engenanto elahlukileyo eeseli ebaxiweyo ayifunyanwanga aya athe amangeniso amangenelo aluxhaswanga akakwazanga akakho abasebenzisi zeziphi ze-ODBC ze-Laser zedesimali zamaxa yoxwebhu yomfanekiso yolwimi yokuqala yeziqulatho yesalathiso yendlela Yemali ye-3D yamathuba womhlathi wekhasi we-JDBC Webloko unofikeleleko unobumba uno umxholo Umphathi umba ukuzoba Ukuzalisa ukususwa ukususela Ukuqhubeka ukuhlela Ukugqabaza ukucinywa ukubala ugcine ufake Ubume ubeke t somhlathi sisonke sisiqendu sezinto sezibini senani se-Microsoft se phezu oovimba ongu-Y ongasebenziyo oluxwesayo Olungumalathindlela okhawulezayo obunoncedo Nyusa Nqumamisa none njl ngoxwebhu ngoonobumba ngolwazi ngokunqomfa ngesimo Ngesangqa ngemveliso ngeebloko nezinye nani namhla mthakathi Mathematika malibe lweziphumezi lwesiseko lwemigca lweHTML lwazi luphelele loyelelwano lonke lomgca lombhexeshi lokuqhuba libe lesiqhelo leseva lendawo lemibhalo lemfezeko leendawo Landa kwisisele kwisampulu kwingxelo kwimimandla kwifomu kwi-clipboard kwelo kwecwecwe kwazo kwayo kwalo kuyileka kupheleliswa kungaphezulu kumlinganiselo kukukhokela kufundeka kufumana kuchaphazela Kopela koonobumba kokuba kangangoko izingele izikweri ithemba Iskweri isigqibo IsiCyrillic isichazi-magama intetho inqila imveliso imizuzu imifuziselo imacro i-JRE iimbumbulu iilayibrari igcinelwe ifuna IChinese i-BASIC guqulelo Gquma fonti ezingasebenziyo ezenziwe eyintsusa esithunyelwa esithatyathwa esahlukileyo ephindaphindwe emininzi eluxwebhini elizayo elingezantsi elikhethiweyo ekunene-ukuya-ekhohlo Ekhaya D CR Buyisela bonke boluhlu bekusenzeka ayifumaneki amanqanaba amandla amakhonco zorhwebo zokubhala zincinci zikhulu zezazobe ze-Microsoft zefomu ze-3D zamagama yoluhlu yokujikelezisa yobuqu YG ye-SQL yeslayidi yeseva yentlawulo yeJava yefeksi yefayili yaseJava woxwebhu womda wohlobo wexesha wetheyibhile Weslayidi wesimo wemposiso web Wamkelekile vimba ushiyashiywano usebenzise Uqhelaniso unqumamiso ungenise ungaqinisekanga umzk Umtyhutyhi Umqalisi umgqabazo umcacisi-gunya umamkeli ukuthotywa ukuthabatha ukungevani ukunceda ukulugcina ukuhlaziya ukuguqulwa ukuguqula ukudibanisa ukubeka uhlomelo ufakelo udala Ubunzima Ububomvu tyelela Tye theyibhile sommandla sokuphelelisa sokuphawula SK sivavanywa sithetha sikhona sezazobe setshati sendlela sencwadi Saphezulu phindaphinda othile Osixwexwe oopopayi ongenisiweyo ongasemva omtyaba oluya oluphezulu olungaphaya olufunekayo okuyo Okutsha okuqhelekileyo okunikwa Okungasentla obubobona noko njengekhamte ngokwefonetiki ngokuzenzekelayo ngokubaxa ngexesha ngesandla ngentla ngasekhohlo ngamabala nexwesileyo nesiseko neenkcukacha ndawo Ncamathelisa nazo naziphi nako msinyane lwezinto lwe-t lwe-StarOffice lwesiqhelo lwesikweri lwangaphambili lungiselelo lomhla Lomgqabazo lodwa liya linda lenani lekamva kwislayidi kwiseva kwinto kwingxoxo kwilahleko kwezi kwexesha kwendawo kwemihla kwayena kwakho kuye kuqhuba kumphezulu Kulungile kulindelekile kukhulu kufaka kubekho kube kommandla komhlathi kokuqhuba Khaba jikelele JDBC izihloko Ivili ityebile i-Sun i-Solaris iskrini Isizikithi Isiphawuli isikhewu isikhangeli IsiGrike isazinge ipesenti Ingcaciso imiyalezo imithombo imifanekiso Ilungelo iliza iiseva iintlawulo iingxaki iileta ii ifanele iBhodi iakhawunti hlanganisa gxumeko ezifakelweyo ezenzekelayo ezandleni eyiyona eskrinini esithile esithe esisentloko Esinegophe esezantsi eseMpuma equtyudwe equtyudiweyo eqhelekileyo enxulunyanisiweyo enexabiso Eneencam Emsebenzini emanyanisiweyo elingana elide elibonisa DPI chatha bomgca blowu besakhelo bekuqhutywa beefayili base asiyofayili aqulethwe angu-1 amaxa amatsha Amathuba amacandelo alusebenzi accessibility Access abe zonyaka zomsebenzi Zolisa zobuqu zezixhobo zezinto zezalathisi zetshati zempahla zeglu zamakhasi zama yoqwalaselo yonxulumaniso yona yomthombo yomnxeba yommandla Yomlimandlela yokuthumela yokumisa yokubhala yethutyana yeqela yengxelo yefonti yefomu yamaqhosha XX woncedo womqondiso wokuthenga wokubala wethutyana wesiqhelo wenza Wentlawulo Wenqanawa wendawo wamacala walapha VALUE uza uyaqhuba usafuna URL u-Rhoxisa uqinisekiso uphume u-Phinda Unxantathu unqomfa unganqumlani umthamo umrhumo Umlimandlela umcacisi umanyaniso Ulwandiso uluntu Ulungelelwaniso ukwenziwa ukwenzeka ukwazi ukwahlula ukuyila ukuvala ukufuna ukubhalisa ukhetha uhlengahlengiso ufikelelo Ubunzulu Ubuluhlaza ubudlelwana TMP Sula somzobo solwazi sithuba siphela se-Windows se-StarOffice se-StarDraw sesikhona sesakhelo sendawo semibhalo seleta sekona seeseli secwecwe se-chi Sasekhohlo resource r Qhelanisa Qhekeza Qala Phumeza Phelisa oxwesileyo ongaphandle oluthi oluqutyudiweyo olungachanekanga oluneenkcukacha oluncinci oluhlu olubalulekileyo olingana okwethutyana okwesiqhelo okungezantsi okungasebenziyo okukona okhethiweyo ochukumisa obungama nomnye nomhla nkcukacha njenge ngxoxo ngqukuva Ngqamanisa Ngommandla ngokuqaphela Ngokujikeleza ngokufanelekileyo ngexabiso ngasekunene nesantya nanini Nangona nakwamanye mva mthombo mncedi mimiselo menu lwezintlu Lwewotshi lwesixwexwe lwenani lwe-F lwee-cookies lwe-DDE lwamakhasi luyaqhutywa lugqityiwe loshicilelo loo lonqumamo lokuphuma lokubhala lokhuseleko liphelele lingu lesalathiso lempumezo lelayibrari leenyanga lamathuba la kwixesha kwixabiso kwisixhobo kwisivakalisi kwimimiselo kwiindawo kwezinye kwesinye kwenziwa kwenguquko kwaphezulu kuyalingana Kupapashwa kuhlaziywa kugcinelwe kufunyanwa kufumaneka kufakelwa kucimeka kubhalwa kubekelelo kubandakanywa komhla kokukhethwayo java izishicileli iziqulathi iziphumlisi izinqumamisi Izikhokelo ithetha I-StarWriter isikweri isikhokelo isicaphulo isibophelelo Iqumrhu Intlawuliso inkcazo impendulo imizuzwana imiyalelo imigqaliselo imibuzo Imetriki ikhesa ikhathalogu iintsuku iindaba Iikhalori iii igunya ichaphaza Icala Ibuyisa ibhityile iajenda Hanja generated FIELDNAME ezulayo ezithile ezisebenzayo eziqulethwe eziqulethe eziqendu Ezilinganisekayo ezihambelayo ezibotshelelwe ezi-2 eyi-contangent eyenzelwe e-U ethile esixeliweyo esiphindaphindwe esingagungqiyo esifunekayo enogqibelelo enjengonobumba engummeli engqalileyo engalindelekanga encinci emitsha eliyingqiqo elithile elingumnqakathi elikhulu ekugqibeleni datefunc Cwangcisa core control config component cm classes chitha c bokuqala Bhekelisa Bendawo azikho Azibhaliswa awusebenzi awukwazi awakwazanga Automatically Asizizo asikho asentloko ARG2 amazwe amacebiso alikwazi alifunyanwanga akukwazanga akhethiweyo afana abancinci abamkeli abalandelayo zothungelwano zonqumamo Zoba zingqinelana zigcinwe zezintlu zeseli zenzala zemali zekhalenda zamanani zamacuntsu zale yovavanyo yoshicilelo yoncedo yolandelelwano yokuzoba yokuzingela yokumisela yokulungiselela yokukhetha yokujonga yokubuyisela yokuba yokhuselo yofikelelo yile yeZip ye-XX yexesha ye-StarOffice yesibini ye-OpenOffice yeOLE ye-ODBC yentsusa yenqanaba yengongoma yenene yeenkcazelo yedesimali yeDataPilot yayo yamacala yalo Yakha Yabela wosasazo wokulinganisa wokuchazelwe-umsebenzisi wezlayidi wesithunzi wesithathu wesine wesimbo we-OpenOffice wemvumelwano wemiqondiso wemeyile we-DDE we-Bessel walatha uyila uxele uvule usenyusa US upelo-magama ungenisa Ungahoyi umqathango Umnikelo Umngxuma Ummeli Umlingane Umhleli Umgxumeki ulondolozo ukuyicima ukuvumela ukuvela ukuvavanywa ukushicilela ukuqwalaselwa ukuphindwa ukunqomfa ukulinganiswa ukulahleka ukukhanyiswa ukugcinwa ukufunda ukufakela ukudibana Ukrozo uguqule ugcino uchaza ubonisa ubomi u Time Sql Soqhagamshelwano soncedo sombala sokuqala sokumisela sokuba soku siya sikho Sika sezithandathu sexesha sesiseko se-disk script sasekunene Sasaza samanani Qengqa Plural-Forms plural phuhlu phase oxeliweyo osezantsi osekunene osekhohlo ongu-Z onamacala ommandla oluyintloko oluvela oluphakathi olungaziwayo olungasebenziyo olufakelweyo okuthe ogosogoso ofikelelo njengesiqendu njengenani njalo ngwevu ngokwexabiso ngokwenza ngokuthelekisa ngokulinganayo ngokukrwela ngokoluhlu Ngokokuhamba ngesiqendu ngeqhosha ngengxelo ngena ngemibala ngemeyile ngeBhokisi Ngakwimihlathi Nezalathisi nexesha nemimiselo nayiphi nasekupheleni naluphi mhlophe mhla mdibaniso macro m lwexabiso lwesakhelo lwemibhalo lwemeyile lwe-macro lwegama lwefomu lwe-cookie lweakhawunti lwamaxabiso Luyaqalisa Luyapheliswa luneempawu lufuna lotshintshatshintsho Lomfuziselo lomda lisondeleyo LF lesiRoma lesampulu Lentsingiselo lentlawulo lemilinganiselo lemigca le-Java lecwecwe Lahla kwisixwexwe kwisimo kwisilondolozi kwinkqubo kwinkcazelo kwiinkcukacha kwiindibano kwifestile kwicala kwezintlu Kwewotshi kwenkcazelo-mboniso kwemihlathi kwemibhalo kweenombolo kwasekhohlo kwamanani kwalona kuyilwa kuyehliwa Kuyaqhutywa Kuyaqalisa Kuyapheliswa kususwe Kusekho kusebenza kuqalisa kuphinda kunxibelelwano kuninzi kungaphantsi kumtya kumhlathi kumazantsi kuloo kukotshwa kukotshelwa kukhethwa Kukhangelwa kugqityiwe kugcinwe kufundwa kufana kudityaniswe kucinywe kubumbeko ku-1 Krwela komsebenzi kolungiselelo kokufaka KB kanye kamva k JRE izilumkiso iziganeko Izicwangciso iza itshintshiwe IsiTurkish isitalato isishwankathelo isimaphambili isiLatini isikali isiJamani isetyenziswe isetyenziselwa iscript Isahlukanisi iphepha intshi inkangeleko Injongo ingxaki Ingqikelelo India imityibelo ilayisha ikhalenda iiveki Iiphiramidi iinyanga iinguqulelo Iigrem iifestile iidilesi ihyperlink ifakiwe i-disk Ibhanyabhanya ibe Iankile Hangul Gqabaza eziya ezithenjwayo ezithatyathwe ezipheleleyo ezinxulunyanisiweyo ezihambelana ezi-4 eyi-sine eyilwayo esiqhelekileyo esiphawulayo esingqukuva esikhulu esibonakalayo ephelele entla engu-X engumalathindlela eliseleyo elisebenzayo elinikiweyo Elingasentla elincinci elibonakalayo elibalulwayo eli-1 ekudaleni ebaxekileyo dt de Cutha buyela bomntu besiqendu bekhasi bekelelo b ayiqulethanga ayimfuneko ayifunyenwanga Asiyonyaniso asikwazi apheleleyo amele ambaxa Amanqwanqwa amalungu Amagophe Amacuntsu alpha alikho akuphumelelanga akulingani abathile zoopopayi zommandla Zomlimandlela zomgca zomda zombini zokuqala zokunika zokubeka zikho zifumaneka zibekelelwe zibe zezinye zesibuliso ze-MySQL zemeyile zefonti zeegrafu zeefomu zalapha yoyilo yoqukaniso yonyaka yonqumamo yomthetho Yomlingane yomdibaniso YombhaloOlandeliswayo yombhalo yolandelelwaniso Yokuzalisa Yokuthenga yokusebenzisa yokunika yokungena Yokukopa Yokukhawulezisa yokufunda yokudliwa yoguqulelo YK yi yezinto yesixwexwe yesixhobo yesiqhelo yesakhelo yenziwe yenye Yenqanawa yemvumelwano yemveliso yeMozilla ye-Microsoft yegophe Yeencam ye-DDE Yecuntsu yeCJK ye-Basic yeakhawunti yangaphandle yamaxwebhu yamandulo yamalungelo yako Yaba XP wonyuso wommandla Womfuziselo wokubuya Wokubhalwa wodwa Windows wezazobe we-Windows we-SQL weseva wephetshana we-ODBC wendalo Wembalelwano weengongoma wangoku wamagama wabucala uye Uxinzelelo Uxande uthumele Usingasangqa uqhutywa Uqhawulo unciphise Umsinga Umntu Umkrwelo umfaki Umahlukanisi ulwandiso-mali ulandelelwano ulahlekile Ukwandlaleka Ukuzingela ukuzifaka ukuzidibanisa ukuyeka ukuvula ukusicima ukuseka ukurhoxisa ukuqwalasela Ukuqaliswa ukuphuma ukupheleliswa ukunyuka ukunyaniseka ukungeniswa ukuma Ukuguqulela Ukufundeka ukubona ukubalwa ukhuphe ukhona uhlela Uhlaziyo ugcina udale uchaze Uchasaniso Ubublowu Ubhala ubala Tyhalela Thelekisa Thambekisela StarCalc sonyaka sonqumamo somthombo somdibaniso soludwe sokwahlula sokuskrola sokugqibela sokhuseleko sodwa sisixa sishicileli siqendu siphelele sinikelwe sincinci simo silungelelaniswe sihlengahlengisiwe sigcinelwe siganeko seziphumezi sezibhozo Seti se-StarWriter sesimo sesaphulelo seqokobhe seqhezu Sentloko Sentliziyo Senkcazelo-mboniso semisebenzi sekhadi Seka se-HTML se-3D saneleyo samathuba samandulo sam Qhubela qho Qhekezela Phetha oyi-logarithm ovela Outlook othandekayo osekwe oqoqelweyo ophezulu onikiweyo ongentla Ongasezantsi Ongaphezulu oluyintsusa oluthile oluthe olusesizikithini oluntsonkothileyo Olungenziwa olumanyanisiweyo olukhoyo oludala olo OLE okuzalisa Okuxwesileyo okuthile okuphuthileyo Okuphawulwayo okunemposiso Okukokunye okukhulu okukhethiweyo okufakiweyo okuchazwe okokugqibela ocima obunqamlezileyo obungu obuhamba obubona oboniswayo obelukho Nper noxwebhu noonobumba nomamkeli nolungiselelo no nkcazelo njengomsebenzisi njengombhobho njengesiseko njengesakhelo njengeqhezu njengemeyile njengeleyibhile nguquko ngulo ngonyaka ngokwesiRoma ngokweminyaka Ngokwecala ngokuxela ngokusekwa ngokunxulumene ngokubhala ngokubanzi Ngokokuxhamla ngodwi ngetheyibhile ngesinye ngemigca ngegama ngeentsuku Ngeendlebe ngecwecwe nge-100 nge ngaxeshanye ngaphantsi ngaphambili ngaphambi ngamanye ngalunye ngale ngaba nesandi nenani Nemigca nemibhalo neenkcazelo ne ndlela ndifuna namaxwebhu nakubhaliso myalezo mimandla mawube math lwexesha lwethuba lweslayidi lwesixokelelwano lwesiphumo lwesibini lwemveliso lwemvakalozwi lwembalelwano lweJava lweemeyile lweefayili lwe-beta lwamva Lwabasebenzisi luvela lusuka Lungalungisa luhlengahlengisiwe luguqulwe lugcinwe lufunwa lufanele lonxulumaniso londoloza lolwimi lokuzingela lokuvelisa lokuthotywa lokushicilela lokunokwenzeka lokungasemva lokujikajikisa lokuhlala lokubumba lobhaliso liqwalaselwe liqulethe likhamte lifanele lequmrhu lento lemveliso lekhasi leeveki leemvavanyo leempumelelo lazo lamakhasi lamacwecwe kwiskrini kwisikhululo kwisalathiso kwiqela kwindlela kwimenyu Kwimbonakalo kwiitheyibhile kwiiseli kwiintsuku kwigophe kwidilesi kwicandelo kwento kwemposiso kwemibala kweJava kwangoko kwale kwalapha kwada kuxhomekeke Kuvela kususa kusilele Kushicilelwe kusetyenziswe ku-Okulandelayo kuno-0 kundululwa kumncedi kumanani kuma-30 kulayisheka kulahleke kulahleka kukhethwayo kuka-1 kuka kuhlaziya kugxumeko kuguqulwe kufunyaniswe kufuna kufakelwe kucetyiswa kubo kubhaleka kubekwa kubakho kotshintsho konqumamiso kolwazi kokusebenzisa kokungasemva kokukhethiweyo kokugcina kobomi Kathathu ka Jikela Izipeki Izilungelelanisi izikhululo Izidibanisi I-XSLT iveki ityebe itshintshwe ithunyelwe i-thesaurus isiphindaphindwa isinxaxhi Isinqumamo Isingqisho isilawuli IsiKurdish IsiKorean Isikhumbuzi IsiJapanese IsiHebhere IsiFrench Isicatshulwa isiBengali isi-6 isi-5 isi-3 isi-2 isekwe isatifikethi Isahluko iqokobhe iqhuba iposi Iphondo i-PC inikwe in iminyaka imingcipheko Imikhondo Imidla Imbumbulu ilinge ikho i-JDBC IIS iingqokelela iimveliso iilwimi Iikhowuni iiholideyi i-hyperlink Ihamba Ifowuni Idiski I-DDE i-Boolean ibonisa html Hluza ezixeliweyo ezivulekileyo ezisuka Eziskweri ezisekwe eziqhelekileyo eziphawulayo Ezingqukuva ezineziqulatho ezimbini ezifunekayo ezibhalisiweyo eyona eyi-cosine eyenziwe explorer esuka esonganyelweyo esiyintsusa esithi esithathu esisezantsi esisetyenziswayo esinxulunyanisiweyo esilungiselelweyo esilingana esihlawulwayo esibalelwa esenziwe esekupheleni esekunene esekhohlo eqhosheni ephindwayo entlawulo enqumlayo enkululeko engumthombo engashicilelekiyo Engaphakathi Enamagophe emimandla elisisixa elisisigxina elingumalathindlela Elinganisekayo elingachazwanga elililo elifutshane ekuyo ekhohlo-ukuya-ekunene ekhasini efunyenwe efuneka efayilini eefayili ebalelwa e Cinezela Canda bumnyama bublowu bezikhululo bekuzanywa bamagama ayizaliswanga ayahluka-hluka awuxhaswa awunakuthelekiswa Asiyo asisebenzi asifunyanwanga angumgca angaphelelanga amanye amachokoza alukwazi alufumaneki aluchanekanga akuxhaswa akusekho akunjalo akufumaneki akho akhanyayo akanelanga akakwazi abonganyelweyo Abaqeshwa zoshishino zoshicilelo zonxulumano zonxulumaniso zonakalisiwe zoludwe zokuzingela zokungasemva zokuncedisa zokulungiselela zokulawula zokuhlohla Zokuhlawulelwayo zokufunda zokufaka zobume ziza ziqulethe ziqhutywe ziqhutywa zinkcukacha zinguquko zikhona zifuna zifanele zichaphazela zeziphumezi zezindwe zezalathi ze-URL zesiArab zesampulu ze-Oracle zeOLE Zeodolo zenzekileyo zenyanga Zenxalenye zento zencwadi zemveliso zemimandla Zemihlathi zemibhalo zemibala ze-JDBC zefayili zeentlobo zeendawo ze-dBASE ze-clipboard ze-Basic zayo zangoku zangaphambili ZamaxwebhuAvuliweyo zamaxwebhu zamaxabiso zamacwecwe Zam yoshishino yonakele yomqondiso yomgca yomda yolawulo yokuvula yokuqhuba yokukhangela yokuhluza yokuhlala Yokuguda yokugcina yokucima yokubonisa yohlomelo YKYK yimimandla Yezixwexwe Yezimbo yezibini yezazisi yeyiphi ye-XML ye-Windows ye-UNO yeskrini yesiTshayina yesimbo yesibophelelo yesandi yesahluko yePDF yenze yento yentengiso yenkonzo Yendawo yempahla ye-Mozilla yemo yemigca yemibhalo yemibala yelizwe yekhowudi yekhalenda yegama yeFTP yeetshati yeetheyibhile Yeentengiso yedilesi yazo yawo yale Yabaqeshwa xesha Wothutho Womthombo womsebenzisi wolungiselelo wokwenza wokuzalisa wokutyhutyha Wokuthengisa wokuphelelwa Wokukhutshwa wokukhupha wokugqibelisa wokubonisa wobude Wethoba we-StarOffice weskrini Wesixhenxe Wesithandathu wesiqulatho Wesihlanu Wesibhozo wesangqa wesalathisi Wesabelo wento wentengiso Wencwadi we-MySQL wekona wedilesi Webhokisi wazo wangaphandle wamkele wamachaphaza uzalisiwe u-x uvala ususe ususa usr ushicilelo URL1 uqalisa Uphengululo unxibelelwano unomnqweno ungene Unesixa unenjongo umzuzu Umtyibelo Umthumeli Umphezulu Ummiseli Umlungelelanisi Umlindo umlawuli umjelo Umguquleli umdulisi Umdlali Umalathindlela Umakhi Ulandelelwaniso ukwamkela ukwabelwa ukuzisebenzisa ukuxela Ukuvezwa ukuqinisekisa ukuqhutywa ukuqhaqha ukuphucula Ukuphindaphinda ukunikwa ukunika ukungena ukulungisa Ukulayisha ukulandela ukukrwela ukukhupha ukukhanyisa ukukhanda ukuhoya ukuhlelahlela ukuhla ukuguquguquka Ukugqithela ukufunyanwa ukufakelwa ukuchaza Ukubuyiselwa ukubuyisela ukubuyela ukubuya ukubonakala ukubhekisa ukubambezeleka ufumaneka ufanele ufaka udonga ucima Ubuyisebenzisa Ubutyheli ubone ubona Ubhalo ubhale u-0 txt tm thuba template Switzerland SWF StarImpress SSL soqheliso sonxulumaniso Sonta Somzekelo somyalelo somthonyama sombhalo solwandiso-mali sokuvelisa sokutyhutyha sokuthile sokunikwa Sokukhethwa sokujikajikisa sokubuyiswa Sodidi sobalo SMTP sixwexwe sixokelelwano sixhobo sixa sisithuba siseko sisebenze Sisebenza siqokelela sinxulumene SIMAHLA silawuli sigcinwe sifanele sicebisa shwaka sezikweri se-UNO se-StarCalc se-Solaris sesixokelelwano sesisele Sesiganeko se-SDBC sescript sesalathisi sesalathi seqela sephepha sePDF se-ODBC senziwe sentsusa senkqubo semposiso semiyalelo se-MIME semihlathi seluvuliwe selukhona selikho SELECT Sekukho seItalic sefonti sefomu seemacro sangaphakathi samaxabiso samawaka salo salatha salapho Ququzelela Qokelela qiniseka Qhawula pv phi phaya p oyiyeka oyintsusa owonganyelweyo owehlayo otshintshatshintsho Osekoneni oqutyudiweyo onqwenela ongumthombo ongqindilili ongqalileyo ongenanto omgca omane olwehla olwahlukileyo oluyingqiqo oluyimfuneko oluxeliweyo olusentloko oluseluxwebhini olusekwe olusebenzayo olunqwenelwayo olungqukuva Olungiselelweyo olungaphezulu olulolunye oluliweyo oluligalelo Olukhulu olukekeleyo oluhlonyelweyo olonganyelweyo okuyintlaninge okuthunyelwa okusekwe okuqalisa okupheleleyo okunokwenzeka okunokukhethwa okuLingana okuhlenga-hlengisa okuhamba okugudileyo okudala okucacileyo Okubonwa Okubonakala okubini Okohlobo Okhawulezisiweyo ohlala ofanayo ofana odwa obusisigxina obupheleleyo obugqithisileyo obaxekileyo Nyathelela ntoni ntandabuzo Nothungelwano nokunye noguqulelo nobomi Nkosikazi njengomlawuli njengesixa njengeSimbo njengeSikweri njengento njengegalelo ngumsebenzisi Ngothungelwano ngomthakathi ngokwesiTswana ngokwesiBengali ngokwemimiselo ngokwebanga ngokuzithandela Ngokuxwesileyo ngokuxwesayo ngokuphindwe ngokuphelela ngokukhetha ngoguqulelo ngobuqu ngo ngezinye ngezinto ngezine ngesiqalisi ngesantya ngesahluko ngenqanaba ngenelo ngeminyaka ngekhasi ngeeveki ngazo ngamaxwebhu ngamashumi ngamaqela ngamanani ngakunye ngakumbi nezimbo Nezangqa nexwesayo netheyibhile nesixokelelwano nesixhobo nesiqulatho nesilunga Nesasekunene ne-OpenOffice neentlawulo nawo namanye namagama nalo naliphi nakwizintlu MySQL Ikulungele msebenzisi mposiso Mnumzana mnikelo mna mmiselo mkhulu Misa mininzi Microsoft Mholo mhlathi mgca mayiqulathe maxwebhu Master Manya lwimi lweveki lwe-Sun lwe-StarWriter lweseli lwesazisi Lwesalathisi Lweposi lwentlaninge lwenkqubo lwenkcazelo lwemisila lwemihla lwe-Microsoft lwemenyu lwekhompyutha lwe-gamma lwegamma lwefeksi lweetshati lweenkcazelo lwecwecwe lwe-CJK lwasekhohlo lwaqhutywa lwamacala lwale luza lutsha lusenokuqulatha luqulethwe Lungisa lukhethiweyo lukavimba lufakwe loonobumba lomlungelelanisi lomlinganiselo lomcacisi lombala loludwe lolandelelwano lokuthile lokuthengisa lokuthabatha lokusindisa lokunqumama lokuhlelahlela lokufikelela lokufakwa lokudibaniselana lokubuya lokuboniswa lokubala loku-1 lokhuselo liye liyafuneka lixesha lixabiso lisemgceni Lilungu likhona liguqulwe leziqalelo lezinto lethuba lesiqhulo lesibini lesi-4 lesi-2 leseli lesakhelo lenziwe lenqanawa lenkqubela lengxelo lempuku lemposiso lemeko lemacro lefomu leendaba Lawula lawo Latin lasekhaya landela labasebenzisi kwizlayidi kwizixokelelwano kwizintlu kwizalathi kwi-Sun kwisikhangeli kwisichazi-magama kwisangqa kwisalathi kwiqonga kwinkcazelo-mboniso kwimeko kwilixa kwikhompyutha kwiintlawulo kwiingxelo kwiinguqulelo kwiimposiso kwigama kweslayidi kwesixokelelwano kwephepha kwe-OpenOffice kwenza kwentlawulo kwempahla kwemimiselo Kwemeko kweefayili kwecandelo kwe-3D kwe kwasona kwamacala kwalathwa kwakona kwabelwa Kuyenyukwa kuyekiswa kuyanyukwa kuxinene Kuxelwa kuvulwa kutshanje kuthi kushenxiswa kusenokuthabatha kusenokuba Kuqulethe kunyaka kunxantathu kunqunyanyiswa kunqomfwa kumzobo kumqondiso Kumhleli kumhla kumbhalo kumacala kulungiselelwa Kulowo kulondolozwa kulindwe Kukrwelwe kukhutshwa kukhuselwe kuhlengahlengiswa kuhlala kuguquka kufunyaniswa kufikelelwa kudityaniswa Kubuyisa kubonisa kubhalisa koopopayi komqondiso Komlimandlela kombhalo kombala kolunikiweyo kokuyigcina kokuqalisa kokudala kokubhalwe kokubhalwa kokubhaliweyo koguqulelo khasi khanda kekelisa kasozimali kancinci kai JIS Jikajikisela iziphumezi izinqumami Izimo Izicaphulo Izazisi Izatifikethi ixabislo i-Windows iURL I-UNO items isoloko ISO IsiUrdu isiTshayina IsiThai isishunqulo isiqu Isiqhagamsheli isiqabu isiphathi Isimbo isilondolozi Isicuku isichongi isi-4 isenokungaqhubi isebenze isahluli iqonga iqhezu Iphanyazo ipetshi I-PDF Ipayi Iofisi INYANISO Intsika intshukumo inkqubela inikwa ingaphezulu Ingab incinci Incam Imvakalo impuku impazamo imitya imithwalo Imilinganiso IMicrosoft imiboniso imfuneko Imephu imali i-logo ikhompyutha ikhefu iJava Iiyure iiyantlukwano iintsholongwane iinguqu iimeyile iikopi iikhadi ihlengahlengisiwe ihlelwe i-Gnome ifuneka Idesimali i-Clipart Ichibi ibonakala HOST Hlenga-hlengisa Hlanganisela Help Gqithela Fumanisa Franc filter ezo ezizuzwayo Eziziintsika ezizezona ezizenzekelayo eziyimfuneko ezitsha ezithunyelwa ezithi ezithatyathwa eziphindaphindwe ezinobugocigoci ezingumthombo ezingu ezingezantsi ezingenziwa ezingenabugocigoci ezinemfanelo ezindala ezimele ezimanyanisiweyo ezilahlekileyo ezikhulu ezihlala ezigcinwe ezifakiweyo ezifakelwayo ezibini ezibalulekileyo ezi-6 ezenziwa Eyongamele Eyingxubevange eyahlukileyo exwesileyo evulelekileyo esona Esoluliweyo esivela esisiphumo esinikiweyo esingu esingqisho esingaziwayo Esinekhowudi esincinci esimele Esilungelelaniswe esikhululekileyo esifihlekileyo esifana Esichazelwe eseyikhona esetyenziswa esetyenzisiweyo esenza esebenza equlethe epheleleyo ephathwa enkulu enikiweyo engqiqo engenayo engasentla engama-256 engagungqiyo engafunwayo eneenkcukacha emigceni e-Microsoft elizenzekelayo elisemva eliqwalaselelwa eliqingqiweyo eliqikelelwayo eliqhelekileyo eliqela Eliphikisana eliphambili elinikwa elingenisiweyo elingabanjwayo elineeseli elihlala elifanayo elifana elibonakaliswe ekuyiwa ekuphuculeni Ekunene-Phezulu Ekunene-Ezantsi ekufanele ekuchanekeni ekubhalwa Ekhohlo-Phezulu Ekhohlo-Ezantsi ekho Ekhawulezisiweyo ehlohlwa ehlabathini egcina efihlekileyo efanele eendlela ebonakalayo Ebakho dll Dlala DEFINEDVERSION Date Cyrillic cwecwe CTL csv COUNT com chwetheza chi buzuba bumhlophe bude Bomsebenzi bephepha begama beefonti Bangladesh bakarhulumente azizitshixo azizibini azingqinelani aza ayixhaswa ayivumelekanga ayivuleki ayisebenziseki ayiphumelelanga ayinakusetyenziswa ayiliweyo ayikalungi awunakwenzeka awufumaneki awonganyelweyo avela Asizaliswanga asingqinelani asingovimba asilonyanzelo asekunene asekhohlo asaziwa ARG aqhelekileyo Ankarisha anganelanga andisayo amakhulu Amakhonkco ama-3 alusayi aluqulethanga alinganayo alikhamte alaziwa alahlekileyo akuxinenanga akunakukwazi akuludwe akufuneki akhanya akaluxhasi ajongeneyo ahlengahlengisiweyo agciniwe afihliweyo adweliswe abaphuhlisi abantu ababhexeshi aaa aa zozingelo Zomthombo Zomntu zombhexeshi zolwimi zolwazi Zokuthumela zokuthelekisa Zokushicilela zokuphawula zokungasebenzi zokujikajikisa zokugcina zohlobo zoguqulelo zodwa zodidi zobubanzi zivulwe zivela zitshintshwe zisetyenziswa zisenokuqulatha zisenokuba zisa Ziphelele zinokusetyenziswa zinikiweyo zingakwazanga zimeko zimbini zilumkiso zikhulula ziimpawu ziimeko Zii-macro zihlaziywe zihambelana zifunyenweyo zifayili zifana zi zezobugcisa zezicatshulwa Zezibini ze-XML ze-Word zethutyana zeta ze-Sun ze-StarWriter ze-StarDraw ze-StarCalc ze-SPARC Zesongezo zesolulo zeSodium zesiza zesixa zesithunzi Zesitatshi zesiAsia Zesakhelo zeqela Zeprotheyini ze-PowerPoint zePDF ze-PC ze-OLE zenkxaso zenkcazelo-miboniso Zenkcazelo zenguquko zengqokelela zenani zemposiso zemizobo zemiqondiso zemifanekiso ze-macro ze-Mac ze-LDAP zekhompyutha Zekhasi ze-IO ze-INI zeHTML ze-FTP ze-Excel zeengxelo zedilesi ze-COM zeCJK ze-bézier zealgebra Zealand ze-Adabas zazobe zaseAsia zaphulwa zamawaka zamathuba zamaqela zama-Asia zalapho zahlukanisi zabucala Yotshintshiselwano yosuku yoququzelelo Yoqeqesho yophuhliso yongeniso yonakalisiwe yomxumi yomthumeli Yomthakathi Yomqeshwa Yomkhondo yomhla Yomgaqo-nkqubo yomamkeli yolwandiso yolungelelwaniso yolu yokwakhiwa Yokuzalwa yokuyila yokuxela yokuthuthwa Yokuthoba Yokuthile yokuthabatha yokususa yokusebenza yokuqulathiweyo Yokuqinisekisa yokuqhawula Yokuposa Yokuphathwa yokumiswa yokukhuphela yokujikeleza Yokuhlelwa yokufikelela Yokudibanisa yokubuya Yokubekelela yokubeka yokubala yoko Yogunyaziso yofikeleleko Yodidi yobhaliso yi-ResultSet Yintoni yimibhalo Yimbi yifonti yifestile yifayili yifake yi-64 Yi-300 yeziqendu yezintlu ye-WWW ye-VBA ye-URL Yetsheki ye-Thunderbird yethayili Yesithembiso yesiPhuthukezi yesiphumo yesikhangeli yesihluzi yesihloko yesiGrike yesazobe yesakhiwo ye-RTF ye-ROT13 yephepha ye-Pearson ye-OpenDocument ye-OLE Yentlawuliso yengqokelela yemida yemiboniso YeMethametiki ye-Mac ye-LDAP yekona Yekisa Yekhadi ye-ini Yehlisa yefektri ye-Excel yeepixel Yeengxelo yeendawo Yeemfanelo yeemeyile yeeleta yeefonti ye-cosine ye-COM yebloko yazi yaso yaseNtshona yamanqaku Yamandla yamakhasi yamachokoza yama-Asia yalapho yadalwa yabucala yabasebenzisi xi Xhasa www wozingelo Wovavanyo woshicilelo woqukaniso Wophuhliso Womzekelo Womyilo womlinganiselo Womhla Wombuzo Womaleko woluhlu woludwe wokwandisa Wokuzalwa wokuxuma Wokutyala wokuthotywa wokushicilela Wokupheliswa wokuphela Wokunkcenkcesha Wokunikela Wokulungiselela Wokulahla Wokukhuphela Wokuhlohla wokuhlelahlela Wokuhlela Wokuhlawulelwayo Wokugcina Wokufumana Wokufika Wokufa wokubuyisela Wokhuselo wokhuseleko wohlaziyo Wobekelelo WinLatin win Wezixhomekeki wexabiso weskweri Wesiqalelo Weshumi Wesazisi we-SANE wesalathi wenzala wenqanaba Wenombolo wenkcazelo-mboniso wemveliso wempahla wemimandla Wemihla wemida wemibhalo wemeko wemali Welungelo Weleyibhile we-LDAP wekhonto we-gamma wegama we-FTP Wefestile wefayili we-Euro weetshati Weeseli weemposiso weDDE wecala we-ADO we-3D wasekhohlo wangaphambili Wandise wamanani wale wafika wada Vuselela Vavanya uzobe uziqhaqhe uzingele uzidibanise uzama uyilwayo uyigcine uyifake Uyayilayisha Uyayigcina Uyaphuma Uyadibanisa uxhamle uxela uvale Uvakalelo Utshintshiselwano uthetha Ushiyashiyano ushicilela ushenxise usenza usenokwahluka Usenokufumana useke Usaqhuba uRhoxisa uqwalasele uqulethe uqinisekise uqinisekisa uqiniseke Uqingqo uqhagamshelo uqale upsilon uphawule u-P Unyuse unyawo unyakande unset unqwenela Unqongophalo unika Ungqinelwano Ungaze ungasithembi Ungakuhoyi unethuba uneemvume uncamathelisa Umzantsi Umthengisi Umququzeleli umqokozo Umphawuli Umpapashi Umngcipheko Umlinganiso umhlalaphantsi umhlaba Umguquli Umgqomo Umenzisi Umenzi umalathi Ulwamkelo Ulwabiwo Ulwabelwano ulutho uluhlele ulandelise Ukwamkelwa ukwahlukanisa ukuziqhaqha ukuzibandakanya ukuzama ukuyiqhuba ukuyinika ukuyilwa ukuyigcina Ukuxwesela ukuwucima ukuvelisa ukutyeba ukutshixwa ukuthoba ukuthi ukusombulula ukusiqalisa Ukusindisa Ukushiya ukushenxiselwa ukusetyenziselwa ukusebenziseka Ukuqhawuka Ukuqaqambisa ukuphindaphindwa ukuphengulula Ukuphawulwa ukupapasha ukunyuswa Ukunyusa Ukunyamezeleka Ukundulula ukuluhlela ukulinganisela ukulingana ukuligcina ukukwenza ukukopa UkukhanyaOkuthandwayo ukujongwa Ukujinga Ukujikelezisa Ukuhluza ukuhlola ukuhlenga-hlengisa ukuhlengahlengisa Ukuhlelwa ukuhlela-hlela ukuhlaziywa ukuguqulelwa ukufumanisa ukufumana ukufihla Ukufakaiinombolo ukucutheka ukucimeka ukuchongeka ukuchitha ukucanda Ukubuyisa ukubonakalisa ukubiza Ukubhaleka Ukubhabhisela ukubandakanywa Ukubalula ukubakho ukonwabele ukhabe UI uhlohliwe u-Hlela UhlaziyoLomhla u-Hayi Ugxininiso Uguquguquko ugqitywe ugqibe ufumanise ufumanekayo ufikeleleko Ufakelelo U-F u-Ewe udwi uDibanisa ucinyiwe ubuyele Ubushushu Ubungwevu Ubumnyama ubumbano ubonise Ubizo ubhontsi ubhalise ubandakanye ubale type tyhutyha Tyheli Tshintshiselana Tshintshisa Tshintshatshintsha tsala theta thesaurus tau TARGET Wamkelekile Syria Synaptics Sukuhoya stardiv Sotshintshiselwano soqwalaselo soopopayi sonxulumano sona somyalezo Somxumi Somongameli somntu Somlinganiselo somgqabazo Solwandiso Solondolozo sokuzoba Sokuvala Sokutshata sokuthotywa Sokuthoba Sokunkcenkcesha sokulinganisa sokuhlawula sokuhlala sokuguqulela sokugqithela sokugcina Sokufundwayo Sokuchumisa sokubuyisa sokubhalwa Sokhuselo Sohlobo sobume Sobhaliso sobekelelo sizenzekelayo size Siyathemba sixhasa Sithunzi sisiseko sisiphumo sisihluzi sishiyekileyo siqulethe siqulathi siqalisa siqalelo siphelo Siphelile sincedise silumkiso sihluzi siguqulwe sifunyenweyo sifuna sicaba sibophelelo Shenxa SF Sezlayidi seziqulatho sezimanyanisiwe sezantsi seyichaziwe se-Sun se-StarImpress seskrini sesivakalisi Sesithembiso sesithandathu sesiqulatho Sesimbo sesilondolozi sesihloko Sesicwangciso sesibhozo Sesebe sesangqa sesabelo Serhafu seqhosha se-OpenOffice se-Open sengxoxo sendaweni se-MySQL seMS Semizuzu Semizobo semibala selusebenza selisetyenziswa selendulule selekhona selayisensi selayibrari sekukhona seJava se-hyperlink Segama sefonetiki seetshati Seetheyibhile seentlawulo Seenkcitho seengxelo seedilesi sediski sedesimali se-DataPilot se-clipboard Sebhanyabhanya se-Ai se-Adabas se-10 sdi sazobe sayo satifikethi Sasezantsi sasemva sasazo SAR Saphambi sangaphandle Samaqhosha samagama salula sale salapha sa ROWNUM ROW rot13 Rhuqa rho res REPORTFORM readme Rasterfile RAM Qhubeka qhagamshelana Qhagamshela Qaqambileyo python PTNUM psi program PM pi Phumla Photo-CD PHONE Phindaunike pages ozikhethileyo ozenzekelayo oyindalo oyikhethileyo owenzelwe owaneleyo Otshekhi othungelwano Othengisayo osisigxina oshiyeke osetyenziswayo osentloko osenokungaxhaswa osemazantsi osabuluhlaza OS orenji oqulethe oqhawukileyo opheleleyo ophantse Open OOOVENDOR Onokuba onjengoonobumba ongqukuva ongowona ongomnye ongenziwa ongaphelelanga ongaphambili ongalindelekanga onemposiso omsebenzisi omlawuli omkhulu omicron omega omdala oluyingqokelela olusisiseko olusetyenziswayo olusabunyoka olurhoxayo oluqulethe oluqokelelweyo olunyukayo oluntu olunqwenelekayo olunokunceda Olungumalathi-ndlela olungqalileyo olungezantsi olungelulo olungasemva olungalunganga olulona Olukhuselweyo Olukhawulezayo oluhlawula olufanelekileyo olufanele olufanayo olufana oludibaniselanayo oludalana olucwangcisiweyo oluchaziweyo olubhekiselele olubhalisiweyo olindelekileyo olawulo okwenziweyo okwenziwe okwengca okuza Okuxwesela Okuvakala okuthi Okuthatyathwe Okuthandwa okususa okusentloko okusebenza okuqala okuphindwe okunjengoonobumba okungqinelanayo OKUNGEYONYANISO Okungaphaya Okuncinci Okumnyama okulungiselelweyo okukhutshiweyo Okukekeleyo Okukabini okugqithisela okugqibeleleyo okugqabaza okufunyenweyo okufunekayo okufunda okufikelela okufanelekileyo okufanayo okufaka okudlalisa okude okuboniswa okrwelwa oko okhoyo Ojonge ohlaziyo Ohanjiweyo ofanelekileyo OEM ODBC obuzenzekelayo obuzama obuthile obuthelekisekayo Obuthandwayo obushiyanayo obuqhelekileyo obulusebenzisa obulavenda obukwenzile Obufunekayo Obu Nyusela Nyuka nu ntloko not Noqeqesho Nonxulumano nonee-engile nomgca Nomgaqo nomelene nolwahlulelwano nokuyilwa nokushiyana Nokufaka Nokubhaliweyo nodidi nobukhulu no-9956 no-99 no-255 no-1 no-0 nkxaso njengomsebenzi Njengombhalo njengolwasemoyeni njengolungiselelo njengoludwe njengokuhlala njengoku njengofunda-kuphela njengobekelelo njengezihlala njengezazobe njengesiqhoboshelo njengeqhosha njengePDF njengenkcazelo njengemimiselo njengemimandla njengedesimali Nikela ngxelo ngxaki ngu ngozingelo ngowangaphandle ngophawu ngoodwi ngonobumba ngomyalelo Ngomsebenzi ngomnye Ngomntu ngomhla ngolwimi ngoludwe ngokwesiSuthu Ngokwesiqhelo ngokwenzululwazi ngokwemeko Ngokweebloko NgokwaseNtshona NgokwaseAsia ngokwamanani ngokwamakhasi ngokwakho ngokwakhe ngokusebenza ngokusayina Ngokurhuqa ngokurekhodisha ngokuqwalasela ngokuqinisekileyo ngokuntsonkothileyo ngokungaphelelanga ngokungagqithisanga ngokukekeleyo ngokuguqula ngokugqithiswa ngokugqabaza ngokufutshane ngokufanayo ngokufaka ngokuba Ngokomthetho ngokomgca ngocwangciso Ngezondlo ngeziseko Ngezintlu Ngeyure Ngexande Ngesixa Ngesiganeko ngesiArab ngesazinge ngeqondo ngeqashiso ngenye ngento ngeniso ngemposiso ngempahla ngeminwe Ngelishwa ngelinye Ngekoma ngefeksi ngeenyanga ngeentlawulo ngeenkcukacha ngeenguquko ngeekoma ngechaphaza ngazinye ngaxesha ngawo Ngawaphi ngasinye Ngasemva Ngamaqhosha ngamanqanaba ngamandla nezixwesileyo nezixhobo nezithuba neziqalelo neziphumlisi nezikhewu nezehlayo nezazobe neyintsusa neya nexabiso NEWLINE New Netscape nesithunzi nesinye NESINGEKHOYO nesimo nesimbo nesihluzi nesiHebrew nesibuliso nesi Nesemazantsi Nesekunene Nesangqa nesalathiso neqhosha neqela Nenye nenkxaso Nengekhoyo nenee-engile nendlela nendawo nemibandela Nelosiba neli nekwayintsusa nekhamte neetab Neenxalenye neentlobo neendlela neemeko ne-01 Ndulula ndiyayamkela ndifunde nayo nawuphi nawe nathi nasemva nasekhohlo naphi Namaxesha Namathelisa nale nakuMhleli mu Susa Isiqulathi Isimbo msasazi MS mqondiso mpeg mm misebenzi MIN mibuzo Mibini mibhalo mfuziselo meyile Metafile mda mbuzo mbaxa mazivalwe mazimiselwe mazihambe maxabiso maxa MAX matshini Mark Mapi manyathelo Manyana mangeniso mangaphi mamkeli maluqulathe malungelo maluhlohlwe malubonakale malingabi lwezilungelelanisi lwezibalo Lwezentlalo lwezazobe lwe-Weibull Lwesishicilelo lwesishicileli lwesiNgesi Lwesimbo Lwesihlomeli lwesihloko Lwesicwangciso lwesichazi-magama Lweseva lwesazobe lwesaphulelo lwesampulu lwephepha lwe-OS lwenziwe lwenziwa lwenyanga lwento lwe-MS lweMS Lwempahla Lwemiyalelo lwemimandla lwemihlathi Lwemibala lwekona Lwekhadi lwegalelo lwe-FTP lwefayile lwe-Excel lweeURL lweentlawulo lweenkedama lwee-cookie lwe-clipboard lweCJK lwebhokisi Lwebhodi lwebeta lwe-2 lwasekunene lwangaphandle lwamaxwebhu Lwamathambeka lwamaqhosha lwamandla lwalo lwabahlolokazi luyaqhuba Luxembourg Lushicilelo lusekhona luqhuba luphawu lunqumame luni lukhulula Luhlobo luhlelwe luguqulelo lubhaliswe Ltd lozingelo lotshintsha-tshintsho lothotho Losiba lorhwebo Loququzelelo Loqheliso Loqhagamshelwano lophumliso lopelomagama lonyaka loncedo lomzuzwana lomxumi lomxholo lomxhobisi lomthumeli Lomculo lomboniso lomamkeli lolwazi lolwaa lolungiselelo lolungelelwaniso lolu lolawulo lolandelelwaniso lokusebenzela lokuphetha lokuphelisa lokunxulumanisa lokunokukhethwa lokundululwa Lokulungiselela lokulandelelanisa lokukhetha Lokujonga Lokuhlohla lokuhlela-hlela lokugqabaza Lokugcina Lokufika lokudibanisa lokubhalwe lokubhalisa lokubanjwayo loku lohlobo logxininiso logo LOGICOPERATOR Lodidi lobutyebi lobudlelwana lobekelelo lizele livela lithi lisuswe lisenokuba lisebenzayo liqhelekileyo liphelile linye linikwe linikiwe lingenise lilingane likho likhethiweyo likaTata lihambelana lifunyenwe lifuna lide licima libuyiselwayo libange lib lezikhewu lezibini lexabiso leURL lethu lethambeka lesishicileli lesiqulathi lesiqhoboshelo lesiphindaphindwa lesihloko lesi-8 lesandi lesalathi lesahluko lephetshana lepesenti lenkxaso lenkqubo lengqokelela lengqiqo lengqikelelo lempahla lemihlathi lemidibaniso Lemiboniso lemibala lemenyu lembonakalo le-Macaulay leliphi lelinye legama le-FAQ leentlawulo Leenkcukacha leengxelo Leengoma leengcaphephe leekopi Leefoto lecandelo le-Boolean lebhokisi Leakhawunti layibrari laphakathi Landula lambda lamanyathelo lamangeniso Lamachaphaza labamkeli L kwiziqendu Kwizikhewu kwizifundo kwizibiyeli kwizakhelo kwi-XML kwi-Windows kwitshati kwisizikithi kwisiza kwisiTshayina kwisishicileli kwisiphumo kwisiphindaphindwa kwisibuliso kwisakhiwo kwintsusa kwinqanaba kwinkxaso kwingqokelela kwimodyuli kwimisebenzi kwimigqaliselo kwimida kwikhonto kwiintsusa kwiinkqubo kwiindlela kwiindidi kwigunya kwi-Grid kwi-CDE kwiajenda kwezobuchule kwezixhobo kweziqulatho kweziqendu Kweziphumo kweURL kwethayili Kwesivakalisi kwesimbo kwesikhangeli kwesiganeko kwesicwangciso Kweseva kweseli kwe-script kwescript kwesazisi kwesatifikethi kwesahlukanisi Kwentlawuliso kwenkcazelo kwengxelo kwemiqondiso kwembonakalo kwelona kwekhowudi kwekhamte Kwekhadi kwe-JRE kwe-Java kwe-Izixhobo kwefonti kweengongoma kweendlela kwee-macro Kwebhanyabhanya kwazona kwasekuqaleni kwasekupheleni kwaphulwe kwangaphakathi Kwamkelwe kwamaxwebhu kwamaxabiso kwamathuba kwamanye kwamakhonkco kwakanye kwagqithiswa kwabelwana kwababhexeshi kuzivula kuzingelwa KUYINYANISO kuyilo kuyenzeka Kuyelelene kuyasebenza Kuyahluzwa kuyacetyiswa kuyabandakanywa kuxhaswe kuxelwe kuvunyelwa kuvumela kuvula Kuvelisa Kuvavanywa kuvalwa kuthumela kuthotho kuthetha kuthengwa kuthelekiswa kuthelekiso kususeka kusuku kusonjululwa kushunqulwa kushicilelwa kushenxwa kusetyenziselwa kusenziwa kusenokungasebenzi kusenokubhalwa kusaqhutywa Kuququzelelwa Kuqulethwe kuqulatha kuqokelelwa kuqhutyelwa kuqhubeka Kuphunyulwe Kuphuhliswe kuphuhliso kuphinyephinye kuphindwe kuphindwa kuphezulu Kuphelelisa kuphelele Kunxusene kunqunyanyisiwe kunolwesiqhelo kunoluhlu kunokunye kunokukhokelela kunokubanga kuno kunikwe kungenziwa Kungeniswe kunganeno Kungabikho kunciphisa Kumzantsi kumntu Kumiselwe kumbhexeshi kumanqanaba kumamkeli Kumalathindlela kulwazi kulungisa kulungelelaniswa Kulula kulingane Kulayishwe kulandelelwano kuKugqityiwe kukopeka kukhutshelwa kukhethwe kukhawuleziswa kukhandwe kukamatshini kuka-1583 kuka-0 kujongwa Kujikisela Kuhlengahlengiswe Kuhlelahlelwa kuhlaziyeka kuguquleka kugqitywe kugqithisiwe kugqibezela Kufunyenwe kufunyanwe kufikeleleka kufakeka kudibana kudala Kucwangciswa kucinyiwe kucima Kuchwethezwa kubuyiselwe kubumbeke kububanzi Kubhampela kubanga kubandakanya kubalwe kovavanyo Kong komtya komnye Koluliwe kolawulo kolandelelwaniso kokuthumela kokuthotywa kokuphindwa Kokungaphathekiyo kokulugcina kokujoliswe kokuhlela kokuhlaziya kokhuseleko Khumbula Khulula Khulisa khompyutha Khanyisa kavimba kaRhulumente kappa kanti kangange kafunda-kuphela Juni Iziyelelani iziyelelane Izixhomekeki Izisele iziphawulelwa Izinxulumanisi Izinxulumani izimvo izilayidi Iziko Izijungqe Izigcini izichongi izichazi-magama izibini Izibambo Izangqa Izandi Izabelo iyure Iyunivesithi iyilwe iyileyo iye iyasebenza iyabonakala Iwonga ivunyelwa ividiyo ivela I-Var I-UNIX IUnicode I-TIFF ithi ithe I-SvDraw I-StDev i-StarImpress I-StarDraw i-SQL iskweruthi IsiUzbek Isithebe isiTaliyane isiSwahili Isisele Isiqokeleli isiqikeleli isiqalo isipili isiPhuthukezi Isiphaluka IsiNorwegian IsiNepali Isimamva IsiMalay IsiLithuanian Isilinda isilele isikweruthi IsiKashmiri IsiHebheru Isiguquleli IsiGeorgia isiFrentshi isiDutch Isibuko IsiBopomofo isibonisi Isibiyeli isibalo IsiAzerbaijani IsiArab isi-7 ISerbian isenzeko isebenzayo Isebe i-script Isango isakhi Iraq I-PowerPoint Iplastiki Iphetshana iphazamisekile iota I-OLE Iodolo i-ODBC io inxulunyaniswe Intyatyambo Intshayelelo intsalela intlaninge Internet Intambo InomboloYomnxeba InomboloYefeksi inokwenzeka inokukhethwa inikiweyo ingxoxo-mpikiswano ingxam Inguqulelo ingqamane ingeniso inesiphene index inde Incwadana inconywa I-MS Impahla Imixholo Imivo Iminyino imingxuma imibuliso imibandela Imfaneleko Imbonakaloyokuchwetheza imbali Imbalelwano ilivo Ilitye ilinani ilayisensi ikyubhu ikwazi IKorean ikhuselwe ikhoyo ikhonkco ikhethiwe ikhe Ikhasilasekhaya Ikhadi i-Java iiURL Iisampulu Iirula i-intshi iintloko I-intel Iinkwenkwezi iinkcukachaX iinkcukacha2 iinkcukacha1 iinkcazo iinkcazelo-miboniso iingxoxo-mpikiswano Iingxande Iimilligrem iimfuno iimfuneko iimbonakalo iikyubhu iikhowudi iidesimali iibloko I-HTML Ihleleka IHanja IHangul igqithiswa igqibelele igam ifumaneke ifom ifana I-Excel I-dollar i-Dif Icuntsu i-clipboard icima Icelandic iBrorho ibonise i-Bézier IBaltic HRESULT Hong Hlukanisa hlobo hlalutya ha Gxadazelisa Gqwetha gqitha goso gamma ga festile Ezuziweyo ezonakalisiweyo Ezona Ezobalo ezizinziswe eziziigrafu Eziziiengile ezixwesayo ezixandileyo ezivunyelwa ezivuliweyo ezivenkileni ezityelelwayo Ezitshisiweyo ezithunyelweyo ezithe ezisusekayo ezishicilelwayo ezisezantsi ezisetyenziswa ezisekupheleni ezisabumdlalo eziphuhliswe ezinziswe ezinxulumeneyo ezinxulumene ezinto ezinongqinelwano Ezinkulu ezingu-x ezingqinelana ezingenakugcinwa ezingatyelelwayo ezingasemva ezingaphezu ezingaphelelanga ezingamatwatse ezingamaqabane ezingama-90 ezingama-60 ezingama-30 Ezinamandla eziliqela ezilinganayo ezikwizintlu ezikhanyisiweyo ezikhankanywe ezihlangabezana ezihambelanayo Ezihamba ezigciniweyo ezifuneka ezifunda ezifuna ezifumanekayo ezifakwe ezichazwa-kumsebenzisi eziboniswa ezi-5 ezenzekileyo Ezemali ezaneleyo ezandi ezahlukileyo ezahluka-hlukileyo ezahluka-hlukeneyo eyongameleyo eyiyeyakho eyingqokelela eyilwe eyenziweyo eyenzeke eyahlukahlukileyo eyabelweyo exwebhini exabiso e-Word ewonga Evulekileyo euro etsolo ethotywayo ethatyathwe eta e-Sun Esizulayo esiyimpuku Esixananazileyo Esivulekileyo Esivalekileyo Esitsalwayo esisigxina esishenxisiweyo Esisencochoyini esisele esiRuby esi-ruby esiqutyudiweyo esiqhelo esiphezulu esiphelweni esiphantsi Esiphakiweyo esiphakathi esingumthombo esingu-e esingenanto esingenalunxulumaniso esingahambi esingabonakaliyo esinegama Esineekhowudi esincomekayo esincinane Esikekeleyo esihambelana Esigqibeleleyo Esigciniweyo esifutshane esifumanekayo Esifakwayo Esichithiweyo esibuyisa esiboniswe esibiyelwe eshenxisekayo esezikho Eseyihambele esesizikithini esesikhona esekwe esekhompyutheni eqokelelweyo epsilon ephakathi enxulumeneyo ento enqwenelekayo enokusetyenziswa enokubakho enokuba enobude enikwe Enikwa engu-Y engqukuva Engqayini engqale engezantsi ENGEYONYANISO engenamahaki engena engekhoyo Engaxutywanga engasezantsi engasemva Engaphezulu Engaphambili Engakhuselekanga engaka engachanekanga eneziqulatho enezintlu enene enemposiso enegama endlela Endiyithandayo enamahaki Enamachaphaza enamacala emo Emiyalezo emihla emgaqweni emfutshane emdeni embalelwano emaziphindwe emakhasini elula eluhlwini elondoloziweyo eliyinyaniso eliya elivela Elithelekelelweyo elisetyenziswa elisetyenzisiweyo elisetyenziselwa elisekhohlo eliphindwe eliphezulu elingasekunene elingaphaya elingaphathekiyo elingaphambili elingangqalanga elingalingani elingachanekanga elinesiseko elinemposiso elindelekileyo elimele elihambelana Elihamba Eligoba elichanekileyo elibhalisiweyo elayisha elahlulayo elahlekileyo ekwinqanaba ekwimvumelwano ekusingiswe ekusetyenzisweni ekumgca Ekulandwa Ekukhethwayo ekudibaneni ekubonisweni ekubhaleni ekolu Ekhululekileyo ejikelezayo ehlohliweyo ehlayo ehlawulwa ehlawula ehambelanayo eguquguqukayo egopheni egciniweyo efumanekayo efanayo efana efakwe e-Excel eendaba edulisa Ecwangcisiweyo ecinyiweyo ecandekileyo ebumbeneyo ebingalindelekanga ebinemposiso eBASIC dtappintegrate Document doc dl disk delta connurl chu Chithachitha Cebisa Canada Buyisa buya buvumelekileyo buphelele buninzi bufanele Bubomvu bophawu Bomvu bomfuziselo bmp bit bin Bhekiselela bheka bezintlu be-Y be-X bethu betheyibhile bethayili beta besampulu Besakhono beofisi Bentsusa bento benkqubo benani bempahla Bemiqondiso bemigca Belgium bekugcinwa bekufundwa Bekelela bayo baya baphembeleleka baphantsi balo babe ba B6 B5 B4 azixhaswa Azipapashwa azinakufakwa azigcinwanga azifundekanga azifumaneki azifakwanga azenzi ayisayi ayinayo ayinakuvulwa ayinakufakwa ayihambelani ayifunyanwa ayifunyaniswanga ayifikeleleki ayidaleki ayichazwanga Ayibonakali Ayelelanisiweyo ayaziwa ayafuneka awuphumelelanga awunakuqhutywa awulayishwanga awukho awukalungi awugcinwanga awakwazi asizixhasi asixhaswanga asisosiqalelo asinakuthatyathwa asilongenelo asihlenga-hlengiswanga asifumaneki asifani asibhozo asi-8 asembindini arhoxayo AppType AppId anxulunyanisiweyo anokusetyenziswa anikwa anikiweyo Angumalathindlela angamanye anamanani anako Amaqumrhu amaphinyephinye amanyanisiweyo amane amalungiselelo amakhamte amahlelo Amabhanyabhanya ama-4 ama-2 alwaziwa aluyileki alunakwenzeka alunakuvalwa alunakucinywa alinikwanga alinakusetyenziswa alinako alilunganga alilingani alifunyanwa alandelayo akuxhaswanga akusebenzi Akunamvume akunako akukwazi Akukwazeki akubhaleki akholisa akhankanywe akalokhamte akalingenanga akafunyanwanga ahlulwe Afrika afm afanelekileyo abonisa abazizibini Abathakathi Abangamadoda Abangabafazi abalelwa abaleka Abafunekayo Ababhalelwayo A1 Zulisa Zula zu ZTEST zovimba zovavanyo Zothutho zoshiyashiywaniso zosasazo zophuhliso Zophengululo zoonobumba Zonxibelelwano zonxaxho Zongqinelwano zongenelo zona zomzobo zomxholo Zomsebenzisi Imeyile zomqukuqelo Zomgqabazo zomdibaniso zombuzo Zombhoxo Zomanyano Zolwakhiwo zolu zolondolozo zolawulo zokwenza Zokuzonwabisa Zokuzalisa Zokuvula zokuvavanya zokuthutha zokuthile zokususa zokusongwa zokurhweba zokuqukanisa zokuqla zokuqhutywa zokuqalisa zokuphinda zokupheka zokupapasha zokundulula zokumiswa zokumisa zokulubhala zokulinganisa Zokulala zokukhuphela zokujonga zokujikelezisa zokuhluza zokuhlela-hlela zokuhlelahlela Zokuhlaziya zokugxumeka zokuguda Zokufihla Zokufakela-Zokususa Zokudibana zokuchukumisa zokubonwa zokubonisa zokubona zoku zokhuselo zokhuseleko zogxumeko zogcino zobukhulu zobekelelo zizonke Zizixwexwe zizixhobo ziziimpawu ziziimfuneko ZIYINYANISO ziyenzeka ziye ziyavunyelwa ziyasetyenziswa Ziyaphindaphinda ziyalondolozwa ziyafumaneka ziyafakwa ziyaboniswa ziyabonakala ZIyabandakanywa Zivale zitshintshiwe Zithunyelwa zithuba zithe zithatyathwe zithatyathwa zithathu zithabatheke zisoloko zishicilelwe zishicileli zishenxiselwe zishenxiseka zisetyenziswe zisetyenziselwa zisenokuyilwa zisenokuthatyathwa zisenokusetyenziswa zisenokusetyenziselwa zisenokuphinda zisenokungasixhasi zisenokubuyiseleka zisenokubhekiswa zisenokubakho Zisekhona zisebenzisa zisayiniwe zisasebenziseka zisakhutshwa ziqokelelwa ziqalisa ziphumlisi ziphumezi ziphindaphindiwe zinxulumene zinto zintlu zinombolo zinokuthelekiswa zinokukholisa zinokuhlela-hlelwa zinokhuseleko zinobude zinkcazelo zinikwe zingxelo zingqamene zingenisiwe zingelaisiqendu zingasebenziyo zingasebenzi zingaphezu zingamanyaniswa zingakwazi zingaboniswa zinesixa zindululwa zindleko zindaweni zincede zimposiso zimiselweyo zimbaxa zimbalwa Zimbabwe zilondolozwa zilayisheke zilawuli zilahlekile zilahlekelwa zikwinqanaba zikwicwecwe zikweyiphi zikumhleli zikumathuba zikulungiselelo zikotshelwe zikhoyo zikholisa zikhatyiwe zika-Y zikawonkewonke zikavimba zika-ndifunde zikafunda-kuphela zika ziizphumezi Ziinxalenye Ziintandabuzo ziinkqubo ziingxoxo-mpikiswano ziingxelo ziimposiso ziimacro zihlonyelwe zihloko zihlala ziguqulwe ziguqukile zigqibeke zigcinwa zigciniwe zigcineke Zigcine ziganeko zifunyanisiweyo zifunelwa zifumanekileyo zifikelela zifihliwe zifakwa zidityaniswa zicicinyiwe ziboniswe zi-bitmap zibekho zibalwe zibalelwa Zezlayidi zezixhbo zezithuba zeziqulatho zeziphathwa zeZIP zezimbo zezilungelelanisi zezilawuli zezikweri zezikhewu Zezihluzi zezihloko zezigaba zezazinge Zezakhelo Zezahluko zeyure ze-XSLT Zexesha zexabiso ze-Windows ze-VBA zeVBA ze-UNIX ze-StarImpress ze-SQL Zeslayidi zeskripti Zeskrini zesixwexwe Zesithuba zesishicileli zesiqulathi zesiqhelo zesiphumo zesiphumezi zesiLatini zesiLatin zesi-Asia zesazobe zesalathiso zesalathisi zesalathi zesakhiwo ze-RLE zePerl ze-Palm ze-Outlook ze-OS ze-office zenzeke zentsusa Zentshukumo Zentlawuliso Zengxoxo zengxelo zengongoma ze-ndifunde Zendalo zemisebenzi Zemingxuma zeMicrosot zemgca Zemethamatika zeMenyu ze-Max ze-Mac-Pict zeLotus Zeleta zeLanga zeKatakana zeKanxi zeKana zeIPA ze-HSQL ze-HID ze-glu zegalelo zefom zefeksi zeeyantlukwano zeetshati zeetheyibhile ze-EPS Zeentloko zeenkqubo Zeenkcazo zeenguqulelo Zeenguquko zeendlela zeemeyile zeemeko Zeefonti zeefayile zeeBloko zeDBase ze-CSV zecandelo ZeBraille ze-BMP Zebloko zebhokisi zebhanyabhanya zeBézier ze-AT ze-ADO zaseTaiwan zaphulwe zange zandule zamatha Zamaqhezu zamanyathelo Zamanqaku zamagunya Zamafutha zamacuntshu zamachokoza zamacala zalathiso zakwa-Sun zakamva zabasebenzisi zabameli Z YYYY YY Yoyelelaniso yoxwebu Yoxande yowenza Yothutho yothungelwana yorhwebo yoqobo yophando yoopopayi yoonobumba yo-on Yonxibelelwano Yongqinelwano yongenelo yomtyobozo Yomtyibelo Yomtyhutyhi yomtyhobozo yomtya Yomqukuqelo yomphezulu Yomntu yommeli yomlungelelanisi Yomlawuli yomjelo yomgangatho Yomeleza Yomboniso yombhexeshi yombala yomba Yomanyano yomanyaniso yolwandiso-mali yoluvo yolunye yokwehlisa yokwandisa yokwahlula yokuzinikwla yokuzimela yokuzazisa yokuzama yokuxubanisa yokuthotywa yokuthi yokusongela yokushiya yokushicilela yokushenxisa yokusetyenziswa yokuseka Yokusebenziseka yokusebenza yokusa yokuqwalasela yokuqhubeka yokuqhelekisyo yokuphetha yokuphatheka yokunqumlana yokunikwa yokunikela yokungenisa yokungasebenzi yokungabikho yokuncedisa Yokumbhoxo Yokumanyelwayo Yokuma yokulungeleleneyo yokulondoloza yokulinganisela yokulayisha yokulandelayo yokulahleka yokukhusela yokukhethwayo Yokukhanya yokuhlola yokuhlela-hlela yokuhlelahlela Yokuhlaziya yokuguqulela yokuguqula Yokugalela yokufumaneka yokufumana yokufakwa yokucacisa yokubuyiswa yokubuyiisela Yokuboniswa yokubonakalisa Yokubiza yokubekwa yokubalwa yoku yogqitha yogcino Yodweliso yochasaniso yobungcaphephe Yobume yobumbekko yobukhoboka Yobude Yobhalo Yn YMD YKYK-YG-SK YK-YG-SK yi-Windows yivuselele Yivale Yithi Yitheyibhile yi-Sun yiseli Yingqokelela yindawo yimvakaliso yimilinganiselo yimibala yimfaneleko Yilinganise Yikhowudi yiJava yifomu YIELDMAT YIELDDISC YIELD yichwetheze yiakhawunti Yi-250 Yhlula-hlula Yezobalo Yezlayidi yezithuba yeziseko yeziqalelo Yeziphumo ye-ZIP yezinye yezinqumamisi yezindwe yezimvo yezilayidi yezikhangeli yezicuku yezibambi yezi Yezemali yezantya yezangaphandle Yezandi yeyomlinganiselo ye-XYZ ye-XY yexsha ye-Word yeWinWord97 yeWinWord6 ye-WHERE yeVRML yeVIM yevidiyo ye-vCard ye-vCalendar ye-Var ye-US Yetyathanga yetyala yetshati yethu ye-StDev ye-StarMath Yesolulo-A yesolulo ye-SMTP yeskript yesizathu yesixa yesithuba yesithathu yesiTaliyane yesiSwedish yesiSuthu yesiSpanish yesiSlovak yesisele yesiRussia Yesiqulatho yesiqhagamsheli yesiPolish yesiphawuli yesiNgesi ye-sine yesimo yesiKorean yesiKhmer yesikhewu yesiJapanese yesiJamani yesiHungarian yesiganeko yesiFrentshi yesi-Dutch yesiCzech yesiCyrillic yesiCroatian yesibuliso yesiBulgarian yesibambi yesiAsia yesi Yeshishini ye-SFP yeseli ye-SELECT yesaziso yesantya Yesangqa yesampulu yesalathisi yeRTF yeRAM Yeqhosha yeqhezu ye-Python-UNO yePOP3 Yepeyinti ye-Pentium yePasika ye-OS Yeodolo yenzekile yenzeke yenzala Yenyanga yentloko Yentaka Yenkcazo yenkcazelo-miboniso yenkcazelo-mboniso Yenguquko Yengqikelelo yengeniso Yencuntsu yena yemvulophu ye-MS yempuku yempendulo yempawu yemithombo yemimmandla yemimiselo yemimandla yemilinganiso ye-Micrososft yemetriki yemethametika Yemen yemeko ye-MDI yembonakalo yembalelwano ye-LZW ye-Linux yelayisenzi Yelayibrari yekhoyo Yekhonto yekhamera ye-Java yeJAR ye-ISBN ye-IP yeIMAP yeiCalendar-XML ye-iCalendar ye-HTML yeHTML yegrafu Yeglue ye-Glu ye-FTP yefowuni ye-FAR ye-Evolution ye-Estorian yeeSeli yeeScript yeenxalenye yeentsuku yeentlobo Yeenkqutyana yeenkqubo yeengxoxo yeengxaki Yeengongoma yeendlela Yeendibano yeendaba yeemveliso yeeMenyu yeembumbulu yeeleyibhile yeekhowudi yeekhonto yeefeksi yeefayile yee-DVD yeedesimali yee-CD yee-byte yeDNS ye-DLL ye-Desktop ye-DDEML yeDDE ye-DB ye-DataPilot Yecwecwe yeCTL ye-crashrep ye-CD Yebhokisi ye-Bézier yeBeta ye-ASC YEARFRAC YEAR ye-alpha ye-Adabas ye-ActiveSync ye-800x600 ye-3-D ye-100 Yazisa yaza yaseYurophu yaseTshayina yase-Sun Yasentsomini Yasekunene yaphambi yaNamhla yamva yamaxesha yamaxabiso yamaqela Yamanisa yamananai yamanana yamaJapani Yamagunya yamagama yamacandelo Yam yalathwe Yalathela Yalatha yalapha yakwenza yakutshanje yakuqala yakhethwa Yahlula-hlula Yahlula Yahlukanisa yafunyanwa yachazwa yabhalwa yabelweyo Yabazali yabasebenzi Yabantu Xubanisa xsltfilter xsltdialog Xor XNPV xls XIRR xinzelelo Xinzelelaiziphumlisi Xinzelela XDarwin X11 wrtsh Woxhomekeko wothotho wosasazeko WORKDAY woqwalaselo woqhagamshelo Woopopayi wonke wona womzuzu womtya Womlimandlela Womlayishi womjelo womgangatho Womboniso wombhexeshi wombhalo Wombhali wolungelelwaniso wokwabelwa wokwabela wokuzenzekela Wokuyithabatha wokuyila wokuyigcina wokuthile wokuthengwa Wokuthena wokushinyana Wokusebenzisa wokuqhuba Wokuqeshwa Wokuphelisa Wokunyusa wokungasemva wokumisela Wokumisa Wokumanyanisa wokulugcina wokulinganiswayo wokulinganiso wokulinganisela Wokulanda wokuhlala Wokugalela wokufuna Wokufeksa wokucuthwa wokuchwetheza Wokucacisa wokubonakalisa Wokubekelelwayo woku wohlengahlengiso Wogxumeko Wochasaniso wobungcali wobumbeko wobukhulu wobhaliso wmakhasini winexplorerext Windows-Johab-1361 Windows-950 Windows-936 Windows-932 Windows-874 Wezixwexwe wezivakalisi weziqendu wezimbo wezikhululo Weziganeko Wezibalo wezakhelo weyure we-XRowUpdate we-XResultSetUpdate we-XQueriesSupplier we-Weibull We-UNO we-TWAIN wethuba we-theta we-Sun weSOCKS wesixwexwe Wesithembiso wesishicileli we-Siqendu wesiphathi wesikhululosesishicileli wesikhokelo wesikhanyiselo wesihluzi Wesihloko wesi-2 we-SAX wesakhiwo We-ruby Weqonga wePoisson wePDF we-Oracle we-OpenDocument Weofisi Weodolo wenziwa wenyanga wenxalenye wentsusa wentsingiselo wentloko we-N-th wentetho wenkqubo wengxelo wenguquko wengongoma Wenene Wendlela wencam wena weMS wempumezo wemizuzu wemizobo Wemizekelo Wemisebenzi Wemilo wemigca Isithuba we-MicrosoftPowerPoint we-Microsoft weMicrosoft Wemibuzo weMephuYomfuziselo Wemenyu WeMacro we-Mac Wekwenza wekhompyutha Wekhadi weItalic WEIBULL weHTTP we-HTML we-hexadecimali Wegunya weFTP weepetshi weentsuku weenkqubo Weenkcukatha weenguqulelo we-engile weendwendwe weeleyibhile weeleta WEEKNUM Weekhonto WEEKDAY wee-engile weedesimali we-DLL Wedesimali we-dBASE Wedayimani we-DataPilot Wecwecwe Wecuntsu weCawa Webtop we-Bézier we-Beta we-BASIC weBasic we-Alpha weAlpha wealfabhethi Weajenda we-Adabas wazinkcukacha wawo wase-U Wasesizikithini waseOfisini wasemsebenzini Wasemoyeni wasekunene wasekhaya waseGallery waqaliswa waphula waphezulu waphazamiseka wangaphakathi wambi wamaxwebhu wamawaka wamaqhosha wamanqnaba wamanqanaba wamacwecwe Wamacuntsu Wam walwazi walo walahlwa walahleka wakugqiba wakhe wafunyanwa wabo wabasebenzisi vyu Vuthela Vuka VLOOKUP viewer view Vidiyo very Venezuela Vela VDB vartheta varsigma varrho varpi varphi VARPA VARP varepsilon VARA VAR va Uzobo uziqhelanise uzimele uzilungiselele Uzihlele uzele uzalise uyisebenzise uyiqhelile uyilwe uyikhethe uyihlele uyifaka uyelelwano uyekiswe Uyazamkela Uyayifaka uyathanda uyasebenza uyakonwabela Uyakhatywa Uyacima Uyabonakala uyabhalisa uxwesisa UxwebhuOluvulekileyo uxelele uxanduva Uxakekile uwuse uwudibanise Uvumelekile uvuliweyo uvula uvavanywe UvavanyoLweenkcukacha uvavanye Uulhlu utyibilikisa utyhile utshixiwe Utshintsho uTshintsha utlui uthunyelwe Uthungelwanongekhompyutha uthumela uthobe uthintelo Uthintelekile uthintele uthembe Uthelekiso uthe UTF-8 UTF-7 usuka u-soloko usoloko usisebenzisele USihlalo Usiba ushenxa usetyenziswa usesizikithini USERNAME usenokwenza Usenokuzifumana usenokusibuyisela Usenokulufumana usenokulahlekelwa Usenokukhetha Usenokugcina Usenokufuna usenokuchaza Usenokubuyisela usenokuba Usenodala Usenako usekwe usekiwe usebenzisa Usebenzayo Use usayina usachwetheza usa Uruguay URL2 uqwalasela uqutyudo Uququzelelo uqukuqelo uqubudo Uqiniseko Uqinisekiso-lupelo Uqikisekile uqikelela uqhutywe uqhubele Uqhuba uqhelanisa uqhawukile uqaliswe u-Qalisa Uqala UPPER u-pp upopayi uphumelele Uphuma uphuhliso Uphindaphindo uphinda uphelele Uphela uphando upapasho u-Okulandelayo u-Okulandelayo unyuka unyenyise unxulumanao unxulumalo unxazonke Unxantandathu u-NULL unqunyanyisiwe unovimba unolandelelwaniso Unokwenza Unokwaba Unokuzingenisa Unokuyifumana unokutshintsha unokusivumela unokuqinisekiswa unokuqinisekiselwa unokunqomfa unokunika unokungenisa unokunceda unokuhlela unokuhlawula Unokugcina unokufumana unokufaka unokuchaza unokuba unohlaziyo unofikelelo unodoli Unix Union Uninzi unikwe Ungeneloolusentloko Ungenelelo Ungena Ungazihoyi ungawuhoyi ungangxamanga Ungamachaphaza Ungalihoyi ungakwazi ungakhethwa ungagcini Unesitshixo unesimbo unempumelelo unempazamo une-IIS undo unciphisa Uncedoulungiselelo unazo Unani u-n umzuzwana Umyili umyaleli Umxube umxhelo Umvuzo UMvulo Umvelisi u-Musa Umtyhutyho Umthonyama Umsebnzisi Umsebenzisiongaxelwa Umququzeli Umqulu Umqobo umqathanga umnyanisekisi umnwe Umnqamlezo Umngciphekoosekunene Umncedisi Ummandla Ixabiso Umlibo Umkrozo Umkhusane Umkhethi umkhangeli Umjikelo Umjikelezo Umjikeleziso UmjeloweNkwenkwezi umiselwe UmiseloLwesakhelo umisela Umikeli umhlobo Umhlelahleli UmhlaIxesha Umhla2 Umhla1 Umhl Umgcini Umgaqo Umdibanisi Umcu Umbutho UmbusoOkanyeIphondo UmbusoIphondo Umboniso-nkcazelo Umbonisi Umbhaloongasentla Umbane Umbalawomgca Umbalaolandela Umatshini Umamandla Umacalamahlanu Umacala Umacacisi Ulwaziloxwebhu Ulwando ulwalathiso Ulwakhiwo Ulwahluka-hluko ulwabelo uluqhoboshele uluphosile UlungiseleloNgokuzenzekela UlungiseleloLuyazenzekela ulungiselele ulungele Ulungalungiso Ulungalelaniso ulugcina uludwey uludwex uludwelokukhangela UlonwaboNgaphezulu Ulingano U-LIKE ulayishwe ulawule ulahliwe ukwaphula Ukwaphuka Ukwandiswa Ukwandaokuthekratya Ukwandaokungaphelelanga Ukwandaokugqithisileyo Ukwanda ukwalamana ukwakheka ukwahlulwa Ukwabiwa Ukwabela Ukuzivula ukuzithabatha ukuzisusa ukuzirhoxisa ukuziqhuba Ukuziphawula ukuziphatha ukuzihoya ukuziguqula ukuzicima ukuzibonisa Ukuzala ukuza ukuyiphumeza ukuyileka ukuyikopa ukuyihlola ukuyihlelahlela ukuyiguqula ukuyifaka ukuyidala ukuyibonisa ukuyibandakanya ukuyamkelaIngaba Ukuyaemva ukuxinana Ukuxhomekakwesikhokelo ukuwumisela ukuwudibanisa ukuwathintela ukuwapapasha ukuwanika ukuwacima ukuwacezela ukuwabandakanya ukuvulwa Ukuveliswa Ukuvalela Ukuvakala ukutyumka ukutyoboka ukutyibela Ukutyhutyha Ukutyhileka Ukutyhila Ukutshintshwa ukutshintshisa ukutsala ukutolikwa Ukuthwala ukuthuthwa ukuthintele Ukuthintela ukuthelekisa Ukuthandabuzeka Ukusukaekhohlo Ukusonta ukusonjululwa Ukuskrola ukusisebenzisela ukusiphumeza ukusipapasha ukusikhetha ukushunqulwa Ukushiyana Ukushicilelangobubanzi ukushenxisa ukushenxela ukusenzela Ukusebenzisana Ukusayina ukuqwalselwa ukuqutyudwa ukuqubuda Ukuqingqwa ukuqikelela Ukuqhwanyaza ukuqhubela ukuqhube ukuqhelanisa ukuqhawula ukuqhaqhwa ukuqhagamshelisa Ukuqashisa Ukuqaqamba UKUPHUTHA Ukuphumza ukuphumeza ukuphendula ukupheleliselwa Ukuphathwa Ukuphatha ukunyuselwa Ukunyanzeliswa Ukunyanzeleka ukunxulunyaniswa ukunxulumanisa ukunqumla ukunqandeka Ukungqamanisa Ukungenana ukungayifaki Ukungasebenzisi ukungasebenzi Ukungaqiniseki Ukungangqinelani ukungakhuselwa ukungabuyiselwa ukungabhalisi ukuncamathelisa Ukumkani Ukumiseka ukulwamkela ukuluyeka ukuluqhuba ukuluqalisa ukulunika Ukulungiswa ukulungiseka UkulungisaOkuzenzekelayo UkulungisaKuyazenzekela u-Kulungile Ukulungelelanisa ukulungalungisaamangenelo ukulufunda ukuludala ukulucima ukulondoloza ukuliphumeza ukulinika ukulinganiselwa Ukulinganisa Ukulinga ukulidibanisa ukulicima Ukulayishwa Ukulayisa ukulawula ukulandula ukukuzama ukukumema ukukukhuthaza ukukhuthuza Ukukhuphela Ukukhula ukukhawulezisa Ukukhanyaokungaphelelanga Ukukhanyaokugqithisileyo ukujongeka Ukujolisa ukujikisela ukujikeleziswa ukujikela ukujikajikisa Ukuhluthisa ukuhlonyelwa ukuhlomela ukuhlohlwa ukuhlohla ukuhlela-hlelwa ukuhlawulwa ukuhlawula Ukuhlanganiswa ukuhlangahlengisa ukuhlala Ukuhamba Ukugxumeka ukuguquka ukuguda ukugqwetha ukugqitywakwegama Ukugqiba ukufunyanelwa ukufundwa Ukufkelela Ukufiphalisa Ukufikeleleka Ukufihlwa Ukufakela-phakathi Ukufakafaka Ukudubula Ukudlula ukudlala ukudityaniswa Ukudibaniselana ukudibaniseka ukudalwa Ukucuthwa Ukucombulula ukucinezela Ukucimacima Ukuchwetheza ukuchongwa Ukuchonga Ukuchaphazeleka Ukuchaneka ukucha Ukucaphula ukubuyiwa ukubuhlela ukubufakela Ukubizwa ukubhekiselela ukubhekelisa Ukubhampela ukubhaliswa ukubhaliseka ukubhalela Ukubetha ukubenzisa ukubangwa ukubandakanya Ukubalulwa UkubalaNgokuzenzekela Ukuankarisha Ukroziso Ukrainian Ukondla Ukomeleza Ukolulelwa ukhwenziwa ukhuselwe ukhusele Ukhule ukho ukhethwe u-Khetha Ukhanyiso Ukhanyiselo ukhangele u-Khanda UK ujonge ujikeleziswa ujikajikiswa Ujikajikise Ujikajike uiview uhlomele uhlengahlengisiwe uhlengahlengisa Uhlelo uhlelahlela u-Hlela UhlaziyoOluzenzekelayo uhlaziye Uhlaza uhlanganisele Uhlanga uhlalise uhambe uguqulela Uguquko Ugudle Ugqabhuko ugoso UgcinoOluzenzekelayo ufumane ufumana ufuma ufincekile ufikelelo-kokubhaliweyo ufikelele ufike Ufakelo-khonkco Ufakela u-F9 uEwe u-Emva U-Else udibane ude Ucwangco ucuthiwe Ucuthe Ucothisisa Ucoselelo Ucinezelo ucinezele uchwethezayo Uchwepheshe Ucalanye Ubuzuba ubuyisele ubuya Ubuso Ubuqu Ubunqindilili ubuninzi Ubungqindililiobungaphelelanga Ubungqindilili ubungekho ubungekenzi Ubumfusa-bubomvu Ubumbhoxo ubumbeke ubumbe ubumba UbukhuluBokuzenzela ubugoso ubugcina ubudlelwane Ubuchule Ububanzi-obupheleleyo Ububanziobupheleleyo Ububanzibomlinganiselo uboniswe ubonakala ubize ubekeokunye ubandakanya ubafake u-ASIYONYANISO UAE U-A u-1 twatse Turkey Tunisia TTEST tsolo tsi Tshixa Tshintshisela Tshintsa Tshinntsha Tshebeleza tshati TRUNC TrueVision Trinidad TRIMMEAN TRIM TREND TRANSPOSE TRANSACTIONLOG TOTAL toolbox toolbars Tolika TODAY to tLusayinwe TITEL TIS-620 TINV TImimandla TIMEVALUE TIFF Thuthela Thutha Thunderbird Thiya Thintela thina thi THEME the Thando Thababatha textconversiondlgs testtool Telnet tekusuto tekisuto TDIST tbxctrls TBILLYIELD TBILLPRICE TBILLEQ TARGA Tanzania TANH TAN Kuqaliswa Kugqityiwe Ta Umlungelelanisi Isilungelelanisi T2 T1 SYSDEVSPACE Sylk SYD sxc Swahlazisa svxlink SVX svdraw Susaubeke Sungula SUMXMY2 SUMX2PY2 SUMX2MY2 SUMSQ SUMPRODUCT SUMIF SUM SUBTOTAL SUBSTITUTE styleui STYLE stw STEYX STDEVPA STDEVP STDEVA STDEV stbctrls STATTYP STATEMENT statbar StarWriter StarDraw STANDARDIZE SQRTPI SQRT SP soxwebu sowuyinxalenye sowuqhelile sowungenile sowunalo sowulahlekile sowuchazwe Sowubhalisiwe sowubandakanyiwe Sotyhutyho sothotho sosasazo SORTMODE sopapasho sonyikinyo Songqinelwano songenelo Songela Songa somxholo Somxhobisi Somthengisi somrhumo soMqalisi somonakalo somniniso Somnikeli Somimiselo somda somcacisi-gunya sombuzo Sombhali sombgca somahluko solungiselelo solungelelwaniso solulo Solaris solandelelwano sokwalatha sokwahlulwa sokuzalisa sokuthutha Sokuthumela Sokuthi sokuthelekisa sokusongela Sokushicilelwayo sokushenxisa sokusebenzela sokuqwalasela sokuqikelela Sokuqhekeza sokuqalisa-kwakhona sokuqalisa sokuphindakwandiswe sokupheka sokuon sokunyuswa sokunyaniseka sokunikelwayo sokungenisa sokungena sokunciphisa sokuncedisa sokulayisha sokukopa sokukhutshwayo Sokujonga Sokujoliswe Sokujikeleziswayo sokuhlola Sokuhlaziya Sokuhlawulelwayo sokuguqulwa sokuguqula Sokuguquguquka Sokugqabaza Sokufana sokudibanisa Sokudibana sokucima sokuchukumisa sokubuya Sokubonisa Sokubizwa Sokubhalwayo sokubhala Sokubalwayo sokubala sokonakala Sogcino Socingo sochazo Sobuninzi SobukhuluObuzenzekelayo sobukhulu sobukho sms SMALL SLOPE SLN SKEW sizikithini Sizalisi siza siyithumele siyinto siyasilela siyanela siyafuneka Siyabulela siyabonakala sixakekile sivezwe sithumele sithatyathwa sisuswe sisonkesoluhlu sisondeleyo sisixokelelwano sisishicileli sisiqulathi sisimbo sisikhululo Sisigxina sisenyuka sisenokuba sisebenziseka sisebenzisa Sisebenzayo sisandi sisalathiso Sisalathi sisalatha Sisakhono sisakhelo siqwalaselelwe siqulathe siqinisekise siqhutywa siqhutyelwa siqhagamshelane siqalo siqabu siphumo sipho siphawulweyo Siphantsi sinxulunyaniswe sinqwenela sinqumama sinolungiselelo sinokusetyenziswa sinokuqhubela sinokukwazisa sinokukhangelwa sini SINH singenakugcinwa singekenziwa singasetyenziswa singasetyenziselwa singaqalisi Singapore singagungqiyo sineziphene sinegama sincicinci sinako SIN simamva silungile sikwindawo sikwenza sikwazi sikukhuthaza Sikhuthaza sikhululo sikhoyo sikhethwe Sikhanye sikavimba sikamahluko sikafunda-kuphela sijoliswe sihlonyelwe sihlengahlengiswe sihlawulwayo sihambelanayo sihambelana siguquleli siguqukile SIGN SIGMA sigcineke sifutshane sifumaneke sifikelela sifanelekile SIFANA sifakiweyo sidityaniswe sidityaniswa sidaleke sicwangciso sibonakala sibhaliswe Shift-JIS shells SHEETS SHEET she share SHA1 SGI sfwk Sezityalo sezithuba seziqalelo seziphetho se-ZIP sezinye sezindwe seziibini sezifakiwe sezalathisi sezakhelo seyivuliwe seyivulekile seyisetyenziswa seyiqalisiwe seyimiselwe seyihlaziywe seyifakiwe sexwebhu se-XSLT se-XPM sexabiso seWWW seW4W se-VCL seVCL seva setup sethutyana sethuba se-TGA seTeyiphi se-SVG seStarWriter SESSIONMANAGER se-SQL SeSotho Sesondlo sesona se-soffice se-Soaris seslayidi sesizele sesiza sesiyintsusa Sesixwexwe sesixhobo sesixa sesithunzi Sesithako sesisonke sesishicileli Sesiqu Sesiphi sesiphawuli sesiphathi sesinxulunyanisiwe se-sine Sesilawuli sesikweri sesihluzi sesichukumisi Sesibumbelo sesibini sesiAsiya sesiAsia sesi sesaphule sesantya sesandi sesampulu Sesalathiso services servicename SERIESSUM se-python Septemba se-polygon sephetshana Sephanyazo sepesenti se-PDF se-Oracle Seodolo Senqanawa Senkonzo Senkcitho senkcazo-mboniso senkcazelo Sendibhalisile semva Sempahla Semivo Semitha semigca isithuba Semida Semiboniso Semibekelelo semeyile semenyu sembuyiso sembonakalo semboleko semazantsi se-Macro selwenziwe seluyekile seluqulethe selungelo selufakiwe selufakelwe seluboniswe selixa selisetyenzisiwe selichaziwe seletha selekwimo se-Lambda sekyubhu sekupheleni sekunene Sekuhlohlwe se-Kodak sekhompyutha sekaphuke se-Ichitaro se-I seHyperlink seHTML se-h Segumbi segrid se-Gamma se-FTP seFTP Sefoto se-FM3-File seFisher se-EPS seengongoma seendlela seendawo seemveliso seemposiso Seemfanelo seeleyibhile Seekona seefayi se-DN seDN se-cursor se-CSV se-cossine se-cosine SECOND seCJK seCD-ROM sebukhona Sebloko Sebenzisaizikhewu Sebenza se-AutoCAD se-ASCII SEARCH se-alpha sealfabhethi se-Album Seakhawunti se-Adope seAdobe se-2 Scotland Schilling schedule scanner sbx SB sazo sazisi Saudi saso saseUS saseNtshona saphulelo saphakathi santya Sans Sangaphambi sanele sandi sampulu samkela Samaxa samathemba samaqhezu samakhasi samacwecwe Salvador saLeboa sakudala sahlukanisi sadalwa sabuyiselwa sabuxande sabungwevu Sabungqukuva Sabumnyama Sabumlilo Sabuluhlaza sabucala sabasebenzi saba Rwanda Runtime Rumanian rula RSQ RSN RRI ROWSTR ROWS ROWNAME ROUNDUP ROUNDDOWN ROUND root ROMAN RoK RIGHT Rico Rica ribbar Rhuqela rfc822 REPT REPLACE Repair Rep relationdesign registry REF recommended RECEIVED READ RDB RATE RANK RANDBETWEEN RAND RADIANS Ra QUOTIENT Qukanisa quickstart querydesign Qubuda QUARTILE Qualifier Qhuqha qhagamshelwano Qatar qashiso Qashisela Qalisausuka Qalala Qakatha Punt Puerto PTSTR PT154 pt pstack protchk PROPER propctrlr ProgID productregistration PRODUCT PROB PRICEMAT PRICEDISC PRICE preload PPMT POWER possible Posa Popayi POP POISSON PMT plugapp pkgadd piyano PID piano phumza phucukileyo Photoshop Phindawenze Philippines phezulu-ekunene phezulu-ekhohlo phemezaisantya Phelisaukusuka Phazamisa Phatha phantse Phanda Phambuka petshi Peseta pesenti Peru PERMUTATIONA PERMUT PERCENTRANK PERCENTILE PERCENT PEARSON pdf PCX PATH Paraguay Papasha Panama Palm Pakistan pagedlg PAGE Pa ozotyiweyo Ozobayo ozenza oyithandayo oyingenisileyo oyindayo oyimposiso oyifunayo oyifuna oyidalileyo oyenzayo oye oxhomekeko oxelwe oxela owukhethileyo owufuna Owokuqala Owokugqibela OWNFORMAT owenziwa owenzileyo owaxelileyo owapapashileyo Owangaphambili owandulela owalatha Owakho owahlukileyo owafunela owabelana Ovulwayo ovulelekileyo outliner OUTFILE othembekileyo Othe osusa Osowulubonile osisiqhelo osisiphumezi osisalathisi osisahlukanisi osinqwenelayo osingenisileyo osikhethileyo oshwankathelayo Oshishino osetyenziswe osetyenziswa oselusekiwe oselukho Oselekho osekukho osefayilini osebenzisa osebenzayo osebenza osabubomvu OS2-869 OS2-866 OS2-865 OS2-864 OS2-863 OS2-862 OS2-861 OS2-860 OS2-857 OS2-855 OS2-852 OS2-850 OS2-775 OS2-437 org2 Oracle or oqhutywayo oqhutyelwa oqhelekileyo oqhawuqhawukileyo options ophuhliso ophakathi OPERATIONS OpenGL OOOLICENSE ooo Oononobumba onyanisekileyo onyaka onxuseneyo onqwenelwayo onqumamiso Ononxulumaniso Onolungiselelo onokuyitsala onokusebenza onokukhethwa onokuhlela onokhuselo onjengobobumba onjengenani onikwe Onikwa onika ongwevu ongunobumba Ongumlondolozi ongumlawuli ongumfazi ongumcacisi ongulo ongu ongeyokona ongene ongenamalungelo ongenalunxusano ongena ongekanikwa ongaziwayo ongazisebenzisanga Ongatyi Ongasekunene Ongasekhohlo ongaqhelekanga ongaphunyezwanga ongaphakathi onganelanga ongama-800x600 ongaguqulekiyo ongagobiyo Oneskweri onesiphene Onesalathisi Onekona Onegophe onegama oneenkcukacha oneekona ONE oncedo onamachaphaza omsebenzi Omnyama omngciphelo Omncinci Omhlophe omde Ombhali ombala Oman omacalacala omacala olwe-OpenOffice olwenzelwa olwemiboniso olwandiswa Olwandiso olwahlukahlukeneyo oluymposiso Oluyeleleneyo oluxhonyiweyo oluxhaswayo oluxhasayo oluxelwe Oluvumelana oluvulekileyo oluvalekileyo Oluvakala olutyelelwayo oluthumela oluthelekiswa oluthande oluthambekileyo oluthabatha Olusuka olusisiphumo olushicilelweyo olusetyenziselwa oluseskrinini olusayinwe olusayiniweyo olusandula oluqingqiweyo Oluqhutywayo oluqhubayo oluqelekileyo oluphindwayo olupheleleyo olunqwenelayo Olunqumla olunoxanduva olunokubakho olunikwe olunikiweyo olungu-Z olungu-Y olungu-X olungumthombo Olungumlimandlela Olungumalathisi olungqongqo olungqinelanayo olungqinelana Olungisiweyo Olungiselelwe Olungeyondalo olungeyiyo olungenalahleko olungekhoyo olungaxhaswayo olungasentla olungaqhelekanga olungaphawulwayo olungaphantsi olungabasebenzisi olune-URL olunethuba olunenani olunemposiso oluneligama olunegama oluneendlela Olunamandla olunamagama olunako Olumnyama olumiselwe Olumhlophe olumele olululo olulula olulondoloziweyo olulolona Olukwiskrini OLUKHULULEKILEYO olukhethwayo olukhetheke olukhandiweyo oluhlohliweyo oluhlelwa Oluhlaza Oluhlala oluhambelana Oluhamba oluhamaba Oluguqula Olugudileyo olugcinwa olufuna Olufikelelwa olufihliweyo Olufihlekileyo olufakwa olufakiweyo olufakayo oluchongeka oluchanekileyo olucalanye Olucacileyo Olubuyiselwa Olubuyisa olubuyelelwayo Olubonakalayo olubhityileyo olubhitye olubekwe olothelekiso Olongameleyo olona olisebenzisela olingenisileyo Olinganayo olindileyo olikhamte olenzileyo okwinqanaba okwesibhakabhaka okwe Okwangaphandle Okwangaphambili Okwandisiweyo Okwako Okuzulayo okuzoba Okuyintsusa Okuyimfuneko okuxwebhu Okuxubeneyo okuxhonyiweyo okuwo Okuvulelekileyo okuvelayo Okuvela oku-turquoise Okutshixelekileyo Okutsalwayo Okuthunyelwayo Okuthothileyo okuthenga okuthandwayo Okuthambekileyo okusondeleyo okusisiseko Okusisiphumo Okushicilelekayo Okusetyenziswayo Okusetyenzisiweyo Okusemxholweni Okusemazantsi Okusekunene Okusekhohlo Okusekhaya okusefayilini Okusebenzayo Okusabusangqa okuqutyudiweyo Okuqale Okuphume Okuphindaphindwe okuphezulu okuphawula Okuphantsi Okuphakama Okunyinwayo Okunxuseneyo okunxulunyaniswayo okunxulumeneyo okunqumamisa Okunqamlezileyo okunokwenziwa okunochasaniso Okuninzi Okungqindilili Okungenasiphelo okungenakuthelekiswa Okungasezantsi okungasetyenziswanga okungaphuthanga okungaphezu okungaphelelanga okungafaniyo Okungafani okungachanekanga okungabonisi Okungabonakaliyo okunengqiqo Okunempazamo Okunecala okundululwa Okuncitshisiweyo Okunamachaphaza Okunamacala okumphezulu okumiselweyo Okumhlaba Okumbhoxo okumbaxa Okumabalabala okulondoloziweyo okukokona Okukodwa Okukhulwana okukhoyo Okukhokelayo Okukhethelwa okukhawulezayo Okukhanyayo Okujongwayo Okuhlengahlengiswe okuhlaziywayo Okuhlawulelwayo okugqithisileyo okugqithisa okugqibezela okugqibela okufakwayo Okufakwa okudibanayo Okucinyiweyo okuchaziweyo Okuchasanayo Okucetyiswa Okubukhali Okuboniswayo Okubonakalayo Okubomvu Okublowu okubiza okubekelweyo okubeka okubanjwayo okubamba Okubalwayo Oktobha okrwelwe Okrwelayo okomzuzwana okomgca okolwandle Okoluliweyo okhuselo okhululekileyo Okhaphukhaphu okekeleyo OJ OIsicatshulwa ohlengahlengisiweyo ohambelanayo oguquguqukayo ogama ofumanekayo ofikeleleko ofihlwayo Ofihlekileyo OFFSET ofanele ofakelweyo ofaka ods ODDLYIELD ODDLPRICE ODDFYIELD ODDFPRICE ODD odb odalekileyo ocuthiweyo OCT2HEX OCT2DEC OCT2BIN ochazwe ochazwayo o-charcoal obuzikhulela Obuyintsusa obuyi Obuyelelayo obuxubileyo obuxeliweyo obuwukhethe obuvumelekileyo obuvumeleke obu-turquoise Obutsha obusiskweri obusisiqingatha obusisakhi-sangqa obusisahlukanisi obusebenza obusabu-purple obuqhotyoshelweyo Obuqaqambileyo obuphindaphindiweyo obunzulu obunye Obunoncumo obunokuthelekiswa obunokhuseleko obunjengo-S Obunjengeayisi obungwevu obungumlinganiselo obungumbhontshontsho obungqalileyo obungasebenziyo obungaka obungachanekanga obunemilinganiselo Obumnyama obumbhoxo obu-magenta obuluhlaza obulixande obulinganayo ObulinganaNgokuzenzekela Obulingana obukumgca Obukhululekileyo obukhoyo obukhanayayo obukathathu Obuhleli obuhambelana obugqibeleleyo obugciniweyo obufanelekileyo Obufanekileyo obubonwa obubonisa obubini Obubekelelweyo obophelelekileyo Obonisa obomvu obolekisanayo oboba OBJ obhaliswe Obhalelwayo obalulekileyo obaluleke obahlukeneyo Nzulu Nzonzisa Nynorsk Nyibilikisela Nyama Nxuseneyo nxulumano nxulumaniso nxamnye nxalenye NUMERICFIELD ntsusa Ntsundu NT Nqumama Nqomfoza Nqanda nqanaba Nqamlezisa NPV Npery noyintsusa nowobomi NOW novimba Novemba notshintshiselwano nosuku Nosiba noshiyashiywano noshicilelelo NORMSINV NORMSDIST NORMINV NORMDIST Nordic noqhelaniso NoofServng nonyaka noNxibelelwano noninzi nongqameko nongeniso Nongasezantsi nomzuzwana nomtyibelo nomtya nomthumeli nomthombo nomthengisi nomsayino nomntu nommiselo nommeli nommandla nomlinganiselo NOMINAL nomhlophe nomhlathi nomgqabazo nomfuziselo Nombala NOM nolwimi nolweseva noluntu nolunokunceda noluhlu no-LIKE nolawulo Nokwangaphambili nokutsalela nokusombulula nokushicilelwayo nokusetyenziswa nokuqhuba nokuphuculwa nokuphakama Nokunikwa Nokungasetyenziswayo Nokungaphambili Nokunciphisa nokuncamathelisa nokunamathelisa nokumiswa Nokulinganayo nokukroba nokukhethwayo nokukhethiweyo Nokuhlohlwayo nokugcina Nokufakwa nokucetyiswayo nokubuya nokubhalwa nokubandakanyeka nokba nohambo nofikelelo nodonga nobuncinci Nobubanzi nobona Nobhambathiso nobhaliso no-Beka no-36 no-31 no-12 nkulu Nksk nkqo Nkcazelo-mboniso nkangeleko njengoxwebhu njengonxulumano njengomthombo njengomqathango njengomnyanisekisi njengomdibaniso Njengombhontshonsho njengoluhlu njengokujonga njengokufanayo njengokubhalwe njengeziqhoboshelo njengezintlu njengezichazi-magama Njenge-URL Njengetheyibhile Njengeskripti njengesishicileli Njengesiphetho Njengesinxulumanisi njengesindululo njengeseli njengescript Njengesazinge njengesantya njengesalathiso njengepesenti njengepeni njengenxalenye njengengxoxo njengeminyaka njengemifuziselo Njengembotyi Njengembonakalo njengelungu njengekopi njenge-hyperlink njengeHTML njengehlebo njengefayili njengeeMeyile Njengecwecwe njengecebiso njengasayi njengamaxwebhu njengamaqhosha njengamangenelo nje nIngaba niluzalise Nicaragua Ngxamela ngxam Nguwe nguvimba NGUNYAKANDE ngumnikeli Ngumncedi ngumdibaniso ngumbhalo Ngumbhali ngulo Umhla ngulo Isazisi ngufunda-kuphela Ngubani ngquzulwano ngqo Ngqindililingokugqithisileyo ngqa ngozero ngowuphi ngowokuncedisa Ngovuyo ngoselekho Ngosebenzayo ngosasazo ngo-pi ngo-P ngoopopayi ngoonongxabalaza ngoomandla ngo-October ngonxulumano ngongoma ngomxumi ngomtya ngomthumeli ngomthetho Ngomnxeba ngommiselo ngomlungelelanisi ngomlinganiselo ngomkhangeli ngomhleli ngomgqaliselo Ngomfanekiso ngomdibaniso ngomboniso ngombhalo ngombala ngolwandiso-mali ngolungiselelo ngoluhlu ngolu Ngolawulo Ngokwezobalo ngokwezibalo ngokweyiphi ngokwewonga ngokwe-URL ngokwetheyibhile Ngokwesolulo ngokwesiZulu ngokwesiXhosa ngokwesiVietnamese ngokwesiVenda ngokwesiTsonga ngokwesiTibetan ngokwesiTamil ngokwesiSwazi ngokwesiSwahili ngokwesiPunjabi Ngokwesiphumezi ngokwesiOriya ngokwesiNdebele Ngokwesimbo ngokwesiLao ngokwesiJapani ngokwesiHindi ngokwesiGujarati ngokwesiGeorgian ngokwesiFrisian ngokwesiBhulu ngokwesiAsiya NgokwesiAsia NgokwesiArab ngokwesahluko ngokweqela ngokwenziwa ngokwenkqubo Ngokwengqiqo Ngokwemigangatho ngokwemfanelo Ngokwemathematika Ngokwekhompyutha ngokwejometri ngokweJava ngokwehlayo ngokweGeometory ngokweendlela Ngokweemeko ngokwee-KB Ngokwealfabhethi ngokwayo NgokwasenNtshona ngokwaphula Ngokwaphakathi ngokwanamhla ngokwamazwe ngokwamaqondo ngokwahlukileyo ngokwahlukana ngokuzingela ngokuzikhethela ngokuyila ngokuyalela Ngokuya ngokuxwesisa ngokuxinana Ngokuvelisa ngokuvala ngokutsiba ngokuthumela ngokuthoba Ngokuthe ngokuthatyathwe ngokusuka ngokusika ngokushicilela Ngokusemthethweni ngokusekwe ngokuseka ngokusebenzisana ngokusasaza ngokuqhelekileyo Ngokuphindaphindwe ngokuphandle ngokunyeNgako Ngokunyanisekileyo Ngokunwenwa Ngokungqindilili ngokungenela Ngokungavakaliyo Ngokungashiyeleli Ngokungangqalanga ngokuncomekayo ngokumiswa ngokulungiselela Ngokulungeleleneyo ngokulungelelana ngokulugcina ngokuludibanisa ngokulingana Ngokukrazula ngokukopa ngokukhululekileyo ngokukhethwayo ngokukhethekileyo Ngokukhawuleza ngokukekelisa ngokuhlela ngokuguquka Ngokugudileyo Ngokugqibelela ngokugqibekileyo ngokugcinwa ngokugcina ngokufakela Ngokucotha Ngokubuyisela Ngokubuyisa Ngokubuya ngokubophelela ngokuboniswa Ngokoyilo Ngokoxande ngokonyuso Ngokommiselo ngokomlinganiselo ngokombono Ngokombala ngokolungiselelo ngokoludwe Ngokokusuka ngokoguqulelo ngokofuzo Ngokocwangciso ngokobukhulu ngokobhalo ngokhuseleko ngohlomelo ngogxumeko ngogcino ngofikelelo ngobunzululwazi ngobugocigoci ngo-13 Ngezizathu ngezixhobo ngeziqulatho ngeziganeko ngezibini ngeWinWord ngewaka nge-URL ngethesaurus nge-Sun nge-Solaris ngeslayidi ngesizathu ngesiza ngesimbo ngesi ngesenyeliso Ngesatifikethi ngephanyazo nge-OpenOffice ngentlawulo ngenqaku ngenombolo ngenkqubo Ngenkqatho ngenkcazelo ngenjongo ngengezintlu Ngenela ngenani ngemva Ngemo ngemizuzwana ngemizuzu Ngemivo ngemityibelo ngemiqathango ngeminye nge-MIME Ngemimandla Ngemikhulu NgemifanekisoEzenzekelayo ngemifanekiso ngeMicrosoft ngemfezekiso Ngembalelwano ngelokugqibela ngelinya ngeli ngeleyibhile Ngelayisensi ngekhompyutha Imeyile ngekhamte ngegamalokugqithisa ngefonti ngefomu ngefayili ngeetheyibhile ngeenjongo ngeefayili Ngeedilesi ngedilesi Ngecuntsu nge-CR ngechaphaza-msila Ngebloko ngeakhawunti nge-3D ngaso ngasezantsi ngaseMntla-Ntshona ngamaxa ngamathuba ngamaqondo ngamaqhawe ngamanqaku Ngamandlakazi Ngamakhonco ngamagama Ngakuko ngaba Umhla ngabaququzeleli ngabaphathi ngabakhulu ngababaququzeli NFS nezobugcisa neZixhobo Ekukhethwa nezivela nezisele Neziqulatho neziphi nezinxulunyanisiweyo nezinxaxhi nezinto nezinongqinelwano nezinobudlelwana nezinemimiselo Nezimbaxa nezilunganiso nezikhoyo nezihlonyelwa nezifakelwa nezicwangciso nezichazi-magama nezibuyisa NeyesiCoptic NeXT NEWS nevela NETWORKDAYS netheyibile ne-StarOffice neskweruthi nesixelwe nesixeko Nesithatyathwe nesisona nesiqhagamsheli nesinikhuthaza nesihloko nesibophelelo neseva nesesiqhelo ne-SendMail neSazisi Nesasezantsi Nesalathisi nesahlukanisi nephepha Nepal nenzuzo NENYANISO nenxulunyanisiweyo nenxaxheba Nento nenqaku Nenombolo nenokuthelekiseka nenkqubo nenkcubeko nenkcazelo nenjongo nengeniso ne-Netscape nenecwecwe nendima nemvakaliso nemposiso nemizila nemithombo nemilinganiselo nemihla Nemibhoxo Nemibhalwana nemiba nembaxa ne-MAPI nelisebenzayo ne-Linux nelingengomnqakathi nelineziqalelo nelilingana nelilelona nelewotshi nekopi nekhonco neKana neJava negunya ne-GPF NEGBINOMDIST negalelo NEG nefomu ne-Flash Neenyanga neenkqubo neenkcazelo-miboniso neengxelo neengxaki Neempawu neembonakalo nee-logo neefayili needilesi Neebhanile nebumbeka nebicelwe ne-2 ne-12 Ndiyayivumela Ndikhumbuze ndifunde-kuphela ndibhalisele ncwadi Nazi nazakunikwa naye nawenkcazelo-miboniso nawengqikelelo nawaphi navipi naso nasiphi nasesithunzini naseMacao nasekuqaleni NASD Naphezulu Naphambili nanto nanjani Nangokwehla Nangezantsi nangenazimpawu nangeliphi nangaphezulu nangaphandle Namhlanje namaqela namanqaku namangeniso namalungiselelo namakhonkco namakhonco Namagophe namacwecwe Namachaphaza nama-30 nam nalikhamte nali naleyo nalapho nakwiskrini nakwiisampulu nakweyeSixhobo nakwesiphi nakwelilandelayo nakuphi nakumhlathi nakumakhasi nakuluntu nakoluxwesileyo nabonisa nabokugqibela nabo nabe-StarOffice nabemi nabaphuhlisi Nabani Mzantsi mxholo mvumelwano MVALUE MUNIT MULTIRANGE MULTIPLE MULTINOMIAL mtya Ummiselo Ulondolozo Ukukhethwa Tshintsha Lungiselela Khanda Iyafakwa Indawo Imvumelwano Iinkcukacha Iimfuneko Iifayili Hlenga-hlengisa Gqibezela Ayiyifaki Asisekho Amacebiso msilanguages MROUND mrhumo mpg mpendulo mpe Mozilla mov Morocco MONTH Monetary Monaco Modyuli MODE MOD mo Mnye Mnu mncinci MMULT mmeli Mka mjelo mizobo miyalezo miyalelo mithombo miscdlgs misc1 Misala MIRR minzi MINVERSE MINUTE MINA mikhulu mijelo mihla migration MIDI MID Meyila Meyi Mexico metriki menyu Menyezelisa Mema meko MEDIAN ME MDY MDURATION MDETERM MD5 mbhexeshi mazixelwe Mazisetyenziswe mazingangenani mazikhutshwe mazikhethwe mazibe mazahluke mayisetyenziswe mayiqaliswe mayiqale mayimiselwe mayifakwe mayidityaniswe mayibambe mawusetyenziswe mawungqinelane mawufane mawangangqali mawahlelahlelwe mava Matshi MATCH masiqulathe masinxulunyaniswe masiguqulelwe masigqithele masibe Maqela maninzi mangenelo mane manager malusetyenziselwe malukhethwe maluhlela-hlelwe malugcinwe maliqwalaselwe maliqale maliguqulelwe Malaysia makushenxiswe makuqinisekiswe makuqaliswe makungenzeki Makungeniswe makube makasoloko makaphinde Makangabandakanywa Makabe MAILTO Mahluli magenta magama Maddin2 Maddin1 macebiso Macau mabube Ma lwezixa Lwezishicileli lwe-ZIP lwezinye lwezihloko lwezemali lwezangaphandle lwezakhelo lwe-z lweXML Lwe-Word lweWinWord lwe-Windows lwe-Weierstrass lwe-UNO lwethu lwethemba lwe-SUNWzlib lweStarOffice lwe-StarDraw Lwesizwe Lwesivakalisi lwesiTshayina lwesitishi lwesiqu Lwesiphumlisi lwesimo lwesimbo lwesikhuseli lwesikhululo lwesiJamani lwesihluzi lwesihlohli lwesiganeko lwesidibanisi lwesibalo lwesi lweSGML lweseti lwesaziso Lwesatifikethi lwesantya lwesandla lwesalathiso Lwesakhiwo lwesahluko lwePoisson lwePoison lwePDF lwe-Oracle lwe-OpenDocument lwe-Office lwenzekileyo lwenzala lwenza Lwentsusa lwentlanganiso Lwentandabuzo Lwentandabuzi Lwenqaku Lwenkxaso Lwenkcazo lwenguquko-simo lwenguquko lwendlela lwendawo lwencwadi lwemvulophu lweMS-Word lwempuku Lwemo lwemirhintyelo lwe-MIME lwemilinganiselo lwemigqaliselo lwemidibaniso lwemfuduso lweMathML lwe-Lotus1-2-3 lwe-Linux lweli Lweleyibhile lweleta lwekhowudi lwekhonto lwekhonco lwekhesa lweJPEG lweJamo lwe-ID lwehyperlink lwehlayo lwe-glibc2 lwegeometry lwefunda-kuphela lweFTP lwe-FORMATNAME lweEuropean lweenxalenye lweenombolo lweenkukacha Lweengxelo Lweenguqulelo lweengongoma lwe-engile lweendlela lweemvavanyo lweemposiso lweemodyuli lweemetriki Lweemeko lwee-Macro Lweeleyibhile lweefonti lweeenkcukacha lweeDingbat lwe-DLL lwedilesi lweDataPilot lwe-AportisDoc lwealjibra lweActiveX lwe-7 lwazo lwawo lwashenxiselwa lwaseYurophu lwasekwa lwaphelelwa Lwangaphakathi lwandiso lwanamhla lwamaTshayina lwamanyathelo lwamanqaku lwamangenelo lwamakhonkco lwamakhonco lwamacwecwe lwama-8192 lwaliwa lwalatha lwalapho lwala lwakudala lwakhiwo lwafunyanwa lwafunyanelwa lwabo lwabelo lwabaququzelelli lwabaququzeleli Lwabanini lwabakhethekileyo luze Luzalisiwe luyimfuneko luye luyazikhulula luyavala luyasebenza luyaqaliswa luyakhatywa Luyahlengahlengiswa luyafumaneka luyabuyiswa luxwesileyo luxhasa luvuliwe luvuleka lutshintshiwe Lutshintshiselo luthabatha lususwe lusuku lusithi lusetyenziswe lusetyenziswa lusetyenzisiweyo lusenokusetyenziselwa lusenokubanga lusenokubandakanya lusekiweyo lusekelwe lusebenzayo lusayinwe lusahlaziywa luqwalasele luqwalasela luquletheIi-macro luqhube luqalise luqalisa luqale luphelelwe luphelela luphazanyisiwe lunqwenela lunqumamiso lunolungiselelo lunokususwa lunokusetyenziswa lunokufunyanwa lunokuboniswa lunokubandakanya lunobugocigoci lunjalo lunikwe lunikelwe lungufunda-kuphela lungqinelane lungeniswe Lungeniso lungelonyanzelo LungelelanisaMacala Lungela lungekho lungaqalanga Lungalungisela lungafakwanga lunezintlu lunemida lunamandla Lumkisa lumiselo lulwandiso-mali luluntu lulungiselelwe lulungiselelo lukuxhasa lukuvumela lukumlawuli Lukhona lukho lukafunda-kuphela luka luhlengahlengiso luhlenga-hlengisiwe Luhleleka luhlaziyo luhlaziyiwe luguqulelwe lugciniwe lufunyenwe lufuneka lufeziwe ludlula lude ludakwi lucinywe lucinyiwe luchaza lubuyiselwe lubonisa lubhekiselele lubekwa lube lubazi lubanga Lst LS LRU Loyilo Loxwebhu Isimo LoxwebhuOluvuliweyo lowimi LOWER Lotshintshwano Lotshintshiselwano Loqweqwe lophuhliso lophawu loopopayi LOOKUP lonyakande lonxulumano Lonxibelelwano lonqumamiso longeniso Loncwadi lomzuzu lomxhasi lomtya Lomthi lomsila-omnye lomsila Lomntwana Lomnini Lommiselo lomlungelelanisi-migca lomlilo lomjelo Lomiselo lomhlathi Lomggqabazo Lomgcini-zingxelo Lomdibaniso lombhxeshi lombhexshi lombhalo lomanyaniso lomandisi lolweqhosha lolwandiso lolwalathiso lolwahlulo Loluphi loluntu lolulolu Lokwanda lokwaluphala lokuzoba lokuzithandela lokuzisebenzisa Lokuzalwa lokuvavanya Lokuvakala lokutshixwa lokutshixa Lokuthumela lokuthelekiswa lokusindiswa lokusinda lokushicikelela Lokusetyenziswa lokuqhutywa lokuqengqela lokunqomfa lokunokwenzekaelibalelwa lokungena lokungaxhomekeki lokungahoyi lokungabonakaliyo lokuncamathelisa lokumiswa lokulondoloza lokulingana Lokulanda Lokukhutshwa lokukhumbuza lokukhethwayo lokukhangela Lokujikelezisa lokuhlaziyeka Lokufunda lokufaka lokudala lokuchwetheza lokubuyelela lokubuyela lokubonisa lokubiza lokubhalwayo lokubhalwa lokubekelela lokubalwa loguqulelo LOGNORMDIST LOGINV LOGEST logama LOG10 LOG locwangciso local lobumbeko Lobukhulu lobudlelane lobucukubhede lobomi lobizo LN llweenombolo lizwe liza LIYINYANSO LIYINYANISO liyafana lixingile livulekile litsholo lithwele lithemba lithe lithatyathwe lisoloko lishicilelwe lisetyenziswe lisentloko lisanda lirhoxisiwe Lira liqwalaselwa lipheleliswa lipheleliselwa lipheleleyo liphele liphantsi lipelwe linokuqulatha lininzi linikwa lingumnqakathi lingaqhelekanga Linganisela Linganisaubude lingakhuselekanga LINEST limiselwa Lilonke lilingana likufutshane Likawonkewonke Likanomathotholo likamatshini likafunda-kuphela likabini lihlengahlengiswe lihlengahlengisiwe ligqithisile ligqitha lifunyenweyo lifunyanwe lifunyanisiwe lifuneka lifihlwe Liechteinstein Licwecwe lichwetheze lichonga libonisa libonakale LibID Libhiya libhekiselele lezobalo Lezixa leziqulatho leziqingatha Leziqendu leziphumezi lezilungelelani Lezikhethwa Lezazobe leyure le-X le-Weibull le-VarP le-URL letyala letab le-StDevP le-StarOffice leStarOffice le-SPARC le-s-office leSMTP leslayidi Lesixwexwe lesixokelelwano lesixa lesithunzi lesithathu lesiqhagamshelisi lesiqendu lesiqalelo lesiphawuli lesingaphi lesilungelelani lesikhonkwane lesihluzi Lesiganeko lesicwangciso lesi-5 lesi-3 Lesazisi lesazinge lesantya lesalathisi lesahlukanisi leRhintyela Lerediyo le-QuickTime leqela Le-PostScript le-P le-Okuhlala lenzala lenyanga lentandabuzo lenqanaba lenombolo Lenkokelo lengxoxo-mpikiswano lengxam lenene lendlela lencwadi LEN lempumelelo lemo lemisila leminyaka lemimandla le-Microsoft lemibuzo leliboniswayo leli lele-Sun lele lekona lekhowudi lekhathalogu lekhamte le-Intel le-ID le-G3 LEFT Lefonti le-F Leetheyibhile leentsilelo leenkcazelo-miboniso Leengongoma le-engile Leencutshe leemaleko leedesimali le-DataPilot le-Booolean Leboa le-Bézier Lebanon leatom Learning leajenda le-180 LCM layo layisensi lawulo lase-U lasekunene lasekhohlo LARGE laphulwe laphelela Langasese Landelisa lamva lamaxesha lamaxabiso lamaxa lamaphetshana lamanani lamakhonco Lamagama lamagalelo lamacandelo lama-24 laloo lakudala lakamva lahlengahlengiswa Labs kwizixa kwiziseko kwiziqulatho kwiziqulathi kwiziqalelo kwiziphindaphindwa kwizinto kwizindwe Kwizimbo Kwiziko kwizikhululo Kwizikhokelo Kwiziganeko Kwizibini Kwizazobe kwizalathiso kwi-XX kwi-X kwi-WinWord kwiURL kwi-UId kwithesaurus kwiskript kwisiyelelane kwisixa kwisithuba Kwisisiseko kwisiqulatho kwisiqingatha kwisiqhelo Kwisiqendu-ukuya-kwisiqendu kwisiqalo Kwisiqalisiesikhawulezayo kwisiqalelo Kwisiphelo kwisiphathi kwisindululo kwisikhuseli Kwisikhokelo Kwisikhamiso kwisihluzi kwisiguquli kwisiganeko kwisibophelelo kwiseti kwisahlulo kwisahluli kwisahluko kwirhintyelo kwiqhosha kwi-PowerPoint kwi-polygon kwiPetshi kwi-PDF kwinyanga kwinxaxheba kwinqanaba1 kwinombolo kwingcxoxo kwindibano kwincwadi kwimveliso kwimposiso kwimizobo kwimithombo Kwimiqondiso kwimingcipheko kwimigca Kwimifuziselo Kwimiboniso kwimibhalo kwimeyile kwimboleko Kwi-MathType kwilizwe kwilayibrari kwikopi kwiKhowudi kwiKhalenda kwiizihloko Kwiitshati kwiiseshoni kwiintlobo kwiintetho kwiinkonzo kwiinkcazelo kwiinjongo kwiinguquko kwiincam kwiimenyu Kwiimbumbulu kwiileta kwiikhonto Kwiifomu kwi-HTML kwihlabathi kwi-Hid kwi-Gnome kwigeometry kwigalelo kwi-FTP kwifonti kwi-Excel kwiDesktop kwi-desktop kwiClipboard Kwibhanyabhanya kwibakala Kwezorhwebo kwezona kwezobugcisa kweZixhobo Ekukhethwa kwezithile kwezipheleleyo kwe-ZIP kwezininzi kwezinikiweyo Kwezilumkiso Kwezilayidi kwezikweri kwezikhululo kwezihloko kwezibiyeli Kwezentengiso Kweyokukhawulezisa Kweyendawo Kweyecala kweveko kwe-TGA kwe-SQL Kwesondlo kwesolulo kwesiza kwesivumelwano Kwesityalo kwesithunzi kwesithuba kwesishumi kwesishicileli kwesiseko kwesiqulatho kwesiqinisekiso kwesiqhelo kwesiqalelo kwesiphawuli kwesinyanzelo Kwesihluzi kwesihloko kwesibophelelo kweshishini kwesampulu Kwesalathi kwesakhiwo kweqokobhe kweqhosha kwe-PPM kwe-PNG kwe-PICT kwe-PGM kwe-PBM kwe-ODBC Kwenziwe Kwenzelwe Kwenzelwa kwenyathelo Kwentsingiselo kweNtshona kwentliziyo kwenkxaso kwengqokelela kwenene Kwendlela kwencwadi kwencochoyi kwencam kwenani kwemvumelwano kwemvume kweMpuma kwe-Mozilla Kwemo Kwemizobo kwemiyalelo kwemithombo kwemimandla kwe-MET kwemenyu kwe-Macromedia kwe-macro kwemacro kweloku Kwelivo kwelinge kweleyibhile kwelayisensi kwekhoyo kwekhonto kwekhonkco kwekhohlo kwe-JPEG Kweinshorensi kwe-HTML kweHangu kwe-Gosub kwegophe kwe-GIF Kwegalelo kwe-FTP Kwefomu kwefestile kweethayili kwe-EPS kweeplagi kweentloko kweentlobo kweenkqubo kweenguquko kwe-engile kweendleko kweemposiso kweempawu kweemacro kwe-Ekukhethwa kweekhowudi kweefonti kweefomu kwedesimali Kwecuntsu kwe-Creative kwe-brochure kwebloko kwebhodi kwe-BASIC kwebanga kwe-Apple kwe-Amiga kwe-12 Kwaziswa kwawo kwawaphi kwaso kwasekunene kwarhoxiswa kwaphenjwa kwaphela kwanto kwangokukuphela kwangoku kwandiseka kwamkelwa kwamaqela kwamanqanaba kwamalungelo kwamakhasi kwakuyo kwakutshanje kwakuqala kwakumxumi kwako Kwahlula kwadweliswe kwadwelisiweyo kwabona Kwabo Kwabiwa kwabemi Kwabelwe kwabaququzeleli kuzisebenzisa kuzingelwe kuzidibanisa kuzicima Kuzele kuze Kuzanyiwe Kuzalise Kuzala Kuza kuyinceda kuyilwe Kuyiliwe kuyila kuyibona Kuyekwe kuyayogqitha kuyavulwa kuyathotywa Kuyathelekiswa Kuyarhafelwa kuyaqhuba Kuyaphunywa Kuyaphumela kuyanyuswa Kuyanxulunyaniswa Kuyanqunyanyiswa Kuyalayishwa kuyakhanya Kuyahlaziywa Kuyagqitywa kuyafuneka Kuyadibaniselana KuxwebhuOluvulekileyo Kuwela Kuwait Kuvuselelwe Kuvusa kuvezwa Kuvele Kutyelelwe Kutshixwe Kutshixeleka kutshixekile Kutshintshwe Kutshintshelwe kuTshintsha Kutsha kuthuthelwa Kuthintele kuthintela Kuthenjiswe kutheni kuthe kuthandatyuzwa kuthabatheka kusuke Kusoloko Kusisixa Kushwankathelwe kushiywa kushicilelwayo Kushicilelo Kushenxiswe kushenxiseka kusezantsi kusetyenzwa kusetyenzelwa kusenzelwa kusenzeka kusenyuswa kusenokubanga kusebenziseke Kusayiniwe kusaxhonyiwe kusanqunyanyisiwe kusampulu kusalindwe KURT Kurhoxiswe ku-Rhoxisa kuqwalaselwe Kuququselelwa kuqinisekiswe kuqinisekisa kuqiniseka Kuqhutyekiswa kuqhube ku-Qhuba kuqhelaniswa kuqhelanisa kuqhaqhwa Kuqatshelwa Kuqalwe Kuqaliso kuqalisile kuqaleka kuphunywa kuphumelele Kuphindaphindwai Kupheliswe kupheliswa kuphazamisekile Kuphawu kuphanzile kuphantsi Kupetshwa kunyuswe Kunyuswa Kunxulunyaniswa kunxulumaniseka Kunqumamo kunqomfo ku-Nqomfa kunommandla kunokwenzelwa kunokwenzeka kunokwenza kunokwaphulwa Kunokuthunyelwa kunokugqitha kunokufuneka kunokona kunobude kunobona Kungxalwa Kungqukuva Kungqamana Kungeyiyo kungenzeka kungenwa kungeniswa ku-Ngenisa ku-Ngena kungekho kungayibhalisi kungasetyenziswa Kungaphakathi kungacwangciswanga Kungabi kungabhalwa kungabandakanywa kunezixhaswe kuneyesiqhelo kunexabiso kunethuba Kunesithunzi Kunengqiqo Kuncitshisiwe kuNcedo kuncanyatheliswa Kunamakhonco Kunamachaphaza kunako kumyalezo kumxumi kumxholo kumxhasi kumthamo kumsebenzisi kumphathi Kummiselo kumiswa Kumiselo kumiseleka Kumi Kumhlaba kumgqabazo kumgaqosiseko kumgangatho kumga kumfuziselo kumbaxa kumbala kumatshini kumanyaniseka kumandla Kumana kumalungiselelo Kumalunga kumagophe kumacwecwe kuma kulwimi kulwandiso-mali kulungiswa Kulungileyo Kulungelelene Kulungelelaniswe kuluhlela kulucina Kulondolozwe Kulondolozo kulinganiswa Kulinganiselwe Kulawulo kulaphu kulahlwa kukwenzela kukuvumela kukuvavanya kukuthumela kukusebenziseka kukusebenza kukunqomfa Kukuncinci kukuhlawula kukufutshane kukucela kukubonisa kukuba kukrweleka Kukrozo kuko Uthungelwano Kuko Okwesiqhelo kukhutshwe kukhuseleko kukhuselekile kukhupha kukhoyo kukhokela kukhetho Kukhethiwe Kukhatyiwe kukhanya kukhandeka kukavimba kukanobumba kuka-If kuka-2 kujongwe kujoliswe kujikeleziswa kujikajikiso kuhluziwe kuhlutywa Kuhlukaniswe kuhlonyelwe kuhlonyelwa kuhlomelo kuhlohlwe kuhlelwa kuhlelo kuhlela kuhlawulwa kuhlangatyezwene kuguqulelo kuguqulela Kuguqula Kuguquke kugqitywa kugqibile kugqibelele ku-Gqiba Kugqabaza kugocagocwa Kugobela kugcine ku-Gcina kugcina kufunwa Kufuneka-Wenze kufundeke Kufumaniseke kufikelelwe Kufihliwe kufaneleke kufakelo ku-Faka ku-Emva Kudanyaza Kudalwe kudaleke kucwangcisa kucofo kuchwethezwayo Kuchongwa kuchazelwe kucelwa kucaciswa kubuyiswe kuBuyisela kubuyelelwe kubume kubudlelwane kubonisiwe kubomi Kubizwa Kubiyelwe kubiyelwa kubini kubhalekeka kubhala Kubekelelwe kubasebenzisi kubange Kubandakanywe KubandakanywaNgokuzenzekela kubalo ku-BALEKA ku-3D ku-3 ku Kthatyathwe krwe Krwaqulela Krwaqula Krikrikri kovimba Kothungelwano kothotho Koqheliso kophuhliso kophawu Kopelo-magama kopapasho KopaIzazobe KopaIsinxulumanisi koovimba konyuso konxaxho Konobumba Koncedo koMzantsi-Ntshona koMzantsi-Mpuma koMzantsi Komxholo komthwalo komsebenzisi Komphezulu koMntla-Mpuma koMntla komnikelo komlinganiso komfuziselo komdibansio komda kombhexeshi Komaleko Kolwimi kolwandiso-mali kolungelelaniso koludwe kolondolozo Kokwangaphambili kokwaba kokuzisebenzisa kokuzama kokuzala kokuyisusa kokuyekiswa kokuwugcina kokuvelayo kokuthula kokuthelekisa Kokususiweyo kokusilondoloza kokusigcina kokushiya kokusetyenziswa kokusayinwa kokuqingqwa kokuqhubela kokuqala Kokuphindwayo kokuphela kokuphawula Kokuphambili kokunye Kokunqomfa kokunikwa kokunikelwayo Kokungenabugocigoci kokungaphambili kokuluhlomela kokuligcina kokulandelayo kokukhuselwa kokukhupha kokukhethwa kokukhetha Kokukhanyisa kokujonga Kokuguqula kokugqitywa kokugcinwa kokudaleka kokubuzwa kokubuzisa kokubuza kokubuya kokubandakanya kokubalelweyo KOI8-U KOI8-R kogxumeko kobumbeko Kobubini kobubanzi kobhalo Kobekelelo Kn km ki Khuthaza Khupha Khululekileyo Khukhutshwe Khasela khaphukhaphu khamte KEYWORDS Kernel Kenya Kekeleyo keixabiso Kbuyiswa Kashmir ka-readme Kanyekanye Kanye-Ixesha kanxatathu kanxaatathu kanji Kaninzi kangaka kancnci kahlela kaFisher kaa jwi Julayi JPG Jordan Jolisa Jn Jikelezisela Jikeleza Jika Jijela je javafilter Janyuwari Jan Jamo James Jamaica Ja I-Z-Soft izomelezo Izolulo Izixjpnp Izityalo izithunzi Izithako Izitephs izisombululo Izishunqulelo Iziqingatha Iziqhoboshelo iziphuhlisi iziphu iziphelo iziphathwa iziphathi I-ZIP izinyanzelo Izinxulumano Izinxaxhi Izinto-ze-3D Izinqumamo izinikele izingela izilungelelani izikolo Izikhwewu Izikhuseli Izikhokele izikhangeli Izikhamiso izihlengahlengiso Izigqibeleli izifinyezi Izifakelwa Izidwelisi izidibanise Izicatshulwa Izibumbelo Izibophelelo izibonisi izibalo I-Zhuyin Izele izehlo ize Izazinge Izalathisi-B Izalathisi-A Izalathisi IzakheloZeenkcukacha Izahluko Izahluki Iyonke iyithumele IYiphutha iyimfuneko iyila iyifayili I-Yiba iyeyakhona IyekeyekeKakhulu Iyekeyeke iyayibalula iyatyoboka iyashicileleka iyakhethwa Iyafumaneka iyabuyiswa i-XStorable i-XP ixingile ixela ixakekile Ixabisoekujoliswe I-WordPerfect I-Word I-WinWord iWindows-949 iWindows-1257 iWindows-1256 iWindows-1255 iWindows-1254 iWindows-1253 iWindows-1252 iWindows-1251 iWindows-1250 iWindows ivuselelwe ivulwa ivf I-VarP Ivaliwe i-USA IUmgca iukuba ityumkile ityibelwe itwip itshixiwe itshintshwa itolikwa Ithumela ithintela ItheyibhileYam ithesaurus Ithambekile Ithambekaimigca Iteyiphi items1 I-Telnet itanji ISwedish ISwahili I-SVG Isuswe isuswa isusiwe isungulwa ISTEXT I-StDevP I-StarMath I-StarCalc ISREF ISPMT Ispeki I-Spanish Isongezo isondeleyo ISODD ISO-8859-9 ISO-8859-8 ISO-8859-7 ISO-8859-6 ISO-8859-4 ISO-8859-3 ISO-8859-15 ISO-8859-14 ISO-8859-13 ISO-8859-10 ISO-8859-1 ISO-2022-KR ISO-2022-JP ISO-2022-CN ISNUMBER ISNONTEXT ISNA ISlovenian ISLOGICAL Iskript Isketshi IsizikithiY IsizikithiX Isizathu IsiYurophu IsiYi Isixokelelwano-sento Isixhumisi Isixhomekeki IsixaEsihlawulweyo IsiWelsh IsiUkrainian isiTswana IsiTibetan Isithethi Isithebesephepha Isithako IsiThaana IsiTelugu IsiTatar IsiTamil Isitalatho IsiTagbanwa IsiTagalog IsiSyriac isiSwedish isiSuthu isiSpanish Isisombululo isiSlovak IsiSinhala isisigxina Isishunqulelo IsiSardinian IsiRussia IsiRunic IsiRomanian IsiRhaeto-Romance isiqumamisi Isiqulathoesifanayo Isiqukuqeli isiqinisekiso Isiqingatha-Sokungqukuva Isiqhelo Isiqhagamshelanisi IsiqenduNgokuzenzekela isiqendu2 isiqendu1 Isiqalisiesikhawulezayo Isiqalisi Isiqali IsiPunjabi isiphumosomzobo Isiphicothi Isiphethi IsiOriya IsiOgham IsiOccitan Isinyithi isinyanzelo Isinyanzeliso isinqumamisi Isini Isine isindululo ISindhi IsiMyanmar isimosokufakwa IsiMongolia IsiMelika Isimbosomsebenzi Isimbosomgca isimbosolwazi Isimbosefayili isimbo-esahlukayo Isimbo2 IsiMarathi IsiMaori IsiManipuri IsiMalayalam IsiMacedonian Isilungelelanisi Isilinganiso Isilinganiselo isilayidi isilayi IsiLatvian IsiLatini-1 IsiLao IsiKonkani Isikolo IsiKinyarwanda IsikhokeloEsizenzekelayo isikhawulezisi Isikhanyisi IsiKazak IsiKannada IsiKanbun Isijungqe IsiIrish IsiInterlingua IsiIndonesian IsiIcelandic IsihluziEsizenzekelayo Isihlukanisi Isihlomelo Isihloko2 Isihloko1 Isihlelahleli IsiHindi Isihicileli isiHebrew IsiHanunoo Isigximfizi IsiGurmukhi IsiGujarati Isigu isigcinilwazi IsiGalician IsiGaelic IsiFinnish IsiFarsi IsiFaroese IsiEthiopic IsiEsperanto IsiDzongkha IsiDvenagari Isidlo IsiDhivehi Isicinezelo IsiCherokee Isichazimagama Isichasi Isicelo IsiCatalan IsiByelorussian Isibumbelo IsiBuhid IsiBosnian isiboniso Isibizo Isibini IsiBhulu Isibhakabhaka IsiBasque IsiBaltic IsiAssami IsiArmeria IsiAlbanian isi-8 isi-1 Ishishini ishenxisa ISFORMULA ISEVEN i-SESSIONMANAGER isesiphi ISERROR ISERR isenzo Isenzi isentloko isenokwahluka isenokuqulatha isenokulahleka isenokubhekiswa I-SEL isekubhaleni isefestileni isebenziseke isebenzisa ISBN ISBLANK Isaziso IsazisiSokubalwayo IsazisiSexeshaLentlawulo IsazisiSabaqeshwa isasetyenziswa Isarha isaqhuba Isaphumile Isaphulelo ISanskrit isandla isalathithisi Isalathiso-esinqamlezayo isakheloSeajendaYam isahluki Isahlukanisisamabala Isaci isabelo IS0-8859-5 IS0-8859-2 IS0-8859-11 I-RTF IRR iRiphablikhi i-Rhuqa Irhintyela Irhafu iRGB Iran Iqweqwe iquka iqokelele iqingqa Iqine iqalisa iqala I-Portuguese IPMT Iplanga I-pinyin i-pi iphunyezwe iphosiso I-Phong IPHONDOLOMBUSO Iphiramidi iphindwe iphinde Iphindaphinda Iphephandaba iphendule iphelisiwe iphelele iphela iphazanyiswe i-Perl I-PCX i-Palm I-OS i-OpenGL IOKWALATHWAYO Inzuzo i-nyenani inyaniseke Inxusene Intsukaphi intro INTRATE intoYomsebenzi Into-ye-OLE Into-Engqalileyo Intloko2 Intloko1 Intliziyo Intlanganiso International INTERCEPT INT i-nsampulu inqwenela Inqwanqwa inqumlayo inombulelo Inombolo Isimbo inolungiselelo inokusetyenziswa inokuqulatha inokhuseleko inofikeleleko inobugocigoci Innkcazelo Inni inkululekoyamaqondo2 inkululekoyamaqondo1 inkululekoyamaqondo inkulu Inkqutyana Inkohla inkcazelo-miboniso Inkazelo Injini inika ini Ingxubevange Ingxubevanege Ingxolo Ingxinanoengaphelelanga Ingxinanoegqithisileyo Ingxinanoeethekratya Ingxelo1 inguquko-simo Ingqukuva ingqukumba ingqinelana ingqindilili Ingeyo ingena ingekho ingayikhanda ingaphenduli ingaphantsi ingaphandle ingamanani ingaguqulwanga ingaboniswa ingabi Inga inethi inempazamo Indongomane Indiya INDIRECT Indeo IndawoY IndawoX Indaleko incede inaniy inanix inani2 inani1 inamatheliswa inamandla inamalungelo inale inaku I-nabla imvume imvakaliso IMSUM IMSUB IMSQRT IMSIN i-MSI IMREAL IMPRODUCT IMPOWER importwizard Impelaveki Imozulu I-Mozilla iMozilla Imonitha-Yokuthumela Imonitha I-modyuli i-modulus IMLOG2 IMLOG10 IMLN Imkcazo Imizekelo imityobozo imithetho imithamo Imitha imisela Imirhumo Imiqondiso-B Imiqondiso-A imiqobo imiqathangoyozingelo Imiphezulu Iminxile iminqakathi Iminikelo Imimselo Imimiselo-ye-3D Imijikelo Imihla imigangatho imidibaniso Imibulelo Imibhoxo Imibhalwana Imibekelelelo Imibalabala imfuno Imfundo IMEXP Imercury IMephuYomfuziselo iMemo ime IMDIV IMCOS IMCONJUGATE imbono Imboniselo Imbombontlanu imbaxa imayile Imatt I-MathType IMARGUMENT Imarble i-MAPI i-mapi IMAP IMAGINARY I-macros I-Mac-Pict I-Mac IMABS I-Luxembourg Ilungiselelwe iluguqulelo ilondoloze ilizwi IlizweOkanyeInqila IlizweInqila iLink i-link ilinganisiweyo ilinganise IlinganaNgokuzenzekela Ilinen Ilifu Ileyibhile9 I-lens ilawula iLatin I-laser Ilanga ilandelayo ilahlwe Ilahlekelwa ikwimo ikuvumela Ikunene ikumgca iku-funda-kuphela i-k-th Ikroba ikota ikopa Ikoma I-Kodak Ikhubazekile Ikhowuni IKHOWUDIYOKUPOSA ikhowudiEsisiseko ikhonkcokuyasebenza ikhethwe ikhethiweyo Ikhaya ikhawulezise Ikhatalogu ikhangeleke Ikhamera ikatakana iJometri IJapanese Iizlayidi IiyureZentlawuliso iiyantlukwanos ii-XSLTs Ii-Wildcards Iivithamin IIVEKI-ZONYAKA iitwip I-Italian i-IssueZilla Iiseti ii-scrpts i-ISBN Iirozi I-Irish Iiresiphi Iiplagi-phakathi Iipixel iipetshi Iiodolo iinzuzo iinyawo Iintsusa IINTSUKU-ZONYAKA IINTSUKU-ZENYANGA Iintetho iintandabuzo Iinkedama iinkcukachaY iinkcukachaXezintsha iinkcukachaE IinkcukachaB Iinkcukacacha Iinkcitho iinjongo iinjini iingxolo Iinguqulelozamaxwebhu iingqukumba Iingcaciso-miboniso iindela Iindaba Imeyile Iincam iimvume Iimvavanyo iimvamvanyo Iimvakalo iimpumelelo iimpendulo Iimpawuzoyelelwano Iimo Iimmiselo Iimilo Iimfezeko Iimephu Iimenyu Iimbotyi iimayile Iimali Iikota Iikona IikhontoEzizenzekelayo Iikhompyutha Ii-Hyperlink iiholide Iifowuni Iifoto Iifonetiki Iifomu-B Iifomu-A Iiflegi I-IDE Iibhaluni Iiakhawunti iiajenda I-HYP I-HTTP iHTML Ihonjisiwe Iholideyi ihluzelwe ihlohliwe ihlenga-hlengiswe ihlengahlengiswe ihlenga-hlengisiwe Ihlaziywe ihlaziya ihlawulwe ihlawulwayo ihlawule Ihlathi ihlangahlengisiwe ihiragana i-HId ihambelana Iguqulwe I-Greek Igrabile igqithiswe igqajuzwe i-GPF I-Gouraud Igolide I-German igcinwe Igcinwa igcinele igcina IgamaLomlingane IGAMALOKUQALA Igamalokugqithisa igama-elide ifunyenwe ifunyanisiweyo ifumene ifumanekayo Ifula i-FTP iFTP I-French Ifoto I-FM3-File I-Finnish ifincekile ifike Ifayili-yeCDE-Calendar ifayile Ifani Ifaneli ifakwe ifakwa Ifakela IF i-EOF I-engile idwelisiwe I-Dutch I-DTD i-Disc Idilwsi I-Dibanisa i-DESC I-dBase iDBase Idayimani idala ID ICyrillic iCMYK icinyiwe I-chrome icho-on Ichasene Ichaphazeleka Ichaphaza-msila Ichaphazamsila icele Iceba ICawa icandeke Ibuyiselwe ibuyiselwa ibuyise ibumbeke ibumba ibulela I-brush Ibrashi Iblorho ibizwe ibizinkcukacha ibilulo Ibhokidi ibhekiselele ibhalwe Ibhalbhu ibhala I-Belgian ibekelelwe ibanzi Ibangac ibanga ibambeke ibalulekile ibaliwe Ibali ibalaseleyo ibala Iayibrari I-AutoCAD I-Austrian i-arcsine I-aquawm i-Andale I-algorithm I-aleph ia I-5 I-4 i3D i-2000 i-19 i-18 i-12 i-11 i-10 i-0 hyu HYPGEOMDIST HYPERLINK HTTPS HTTP HOUR Honduras homepage Hluzela HLOOKUP Hlisa Hlelangoku Hlelaemva Hlawula hlafuna high hh HEX2OCT HEX2DEC HEX2BIN HARMEAN Guilder gui Guatemala GROWTH graphicfilter gqithisela Gqiba Gqabhuza Gobisa GOALSEEK globdoc GIF Gibisela GetLastError GESTEP GEOMEAN Gcinela GcinaUguqulelo Gcinaikhowudi GCD GBT-12345 GBK GB-2312-80 GB-2312 GB-18030 GAUSS GAMMALN GAMMAINV GAMMADIST gallery2 Gabula G fyu FVSCHEDULE FV Funda-Imposiso FUNCTION fumanisaisqendu FullName FTP FTEST ft frmdlg FREQUENCY French framework FOUND formwizard FORMULA formdlg FORMAT form FORECAST FontName fmtui fmcomp FLOOR fldui Fldr flash FIXED FISHERINV FISHER Finyeza FINV Finland FIND filters Febhuwari Feb FDIST FC FamilyName Fakela-Ngaphezulu Fakelaisishicileli Fakela-Imo FACTDOUBLE FACT fa ezotywayo Ezonxibelelwano ezongezelelweyo ezonakalisayo Ezoluliweyo ezolulelwe Ezohlobo ezizulayo ezizoluhlu Ezizodwa eziziphumlisi ezizilondolozi eziziisampulu ezizihambela ezizibini ezizezinye ezizalisiweyo eziza eziyintsusa eziyintlaninge eziyingxam eziyimijiko eziyi-3D eziyeleleneyo ezixwesa ezixubeneyo ezixhonyiweyo ezixhomekekileyo ezixhomekeke ezixhomekekayo ezixhasa ezivunyelweyo ezivumeleke ezivumelana Ezivalelweyo ezitybelweyo ezithenjiweyo ezithengwe Ezithathu Ezithandwa Ezithandathu ezithambileyo ezisisigxina ezisi-8 ezishicilelwe ezishenxisiweyo Ezishenxisekayo Ezisetyenziswayo ezisenokungachaneki ezisendaweni ezisemva ezisemngciphekweni ezisele Ezisekwe-Kwiifomu ezisebenzisa ezisayinwe eziqwalaselweyo Eziqokelelweyo eziqinisekisiweyo Eziqingqiweyo Eziphindwe eziphindwayo eziphi Eziphezulu eziphathwa eziphambili eziphambi Eziphakiweyo eziphakathi Ezioniswayo ezinxuseneyo ezinxusene ezinxulunyaniswa ezinwenwisayo ezintathu ezinonxulumano ezinolungiselelo ezinokusetyenziswa ezinokulondolozwa ezinokujija ezinokuguquka ezinokugcinwa ezinokucinywa ezinokubakho ezinokuba ezinokhuselo ezinikwe ezinike ezingxoxweni ezingumalathi-ndlela ezinguchatha ezingqonge ezingqinelanayo ezingenisa ezingenaziqendu ezingenakugcineka ezingekagqibeleleki ezingaziwayo ezingaxutywanga ezingatyibelwanga ezingathunyelwanga ezingathenjwayo ezingasetyenziswanga ezingaqhezukanga ezingaphukiyo ezingaphelu ezingaphaya ezingaphakathi Ezingangqalanga ezinganeno ezingama-3D ezingama-360 ezingama-24 ezingalungelelananga ezingahoywanga ezingagungqiyo ezingafanelanga ezingabekelelwanga ezineziphumezi ezinexabiso Ezine Ezincinci Ezincinanana ezinamacwecwe ezimo ezimiswe ezimiselweyo ezimiselwe ezimbaxa ezimbalwa ezimalunga Ezilondoloziweyo ezilingana-kubukhulu-obukhethiweyo ezilindelekileyo eziligophe ezili-12 ezili-10 ezilayishiweyo ezikwingxelo ezikwifomu Ezikwibanga ezikweli ezikwazileyo ezikulungiselelo ezikhuselweyo ezikhuselekileyo ezikhululo ezikhululekileyo ezikhatyiweyo ezijikwa ezijikeleza eziinxalenye ezihlengahlengisiweyo Ezihlelwayo ezihlanganisiweyo ezigqithisiweyo ezigqithisela Ezigobongqo Ezigcinwa ezigcinekileyo eziganeko ezifunyenweyo ezifundekileyo ezifumaneka ezifikelela ezifihliweyo ezifanelekileyo ezifana ezifakwa ezifakekayo ezidweliswe ezidwelisiweyo ezidityaniswa ezicwangciswa ezicinyiweyo ezichazelwe eziceliweyo ezibopheleleke ezibonisa ezibonakalisa ezibonakalayo ezibonakala ezibhalekayo ezibekwe ezibekelelweyo ezibandakanywayo ezibandakanyekayo ezibalulweyo Ezibakho ezi-8 ezi-3 ezezibalo ezenza ezayo ezantsiOkuzenzekelayo ezantsi-ekunene ezantsi-ekhohlo ezandulela ezamkelekileyo ezalathwe ezahlukahlukeneyo ezabelweyo ezabelana eyongezelelweyo eyongezelekileyo eyomeleziweyo Eyiyeyam eyiyenye eyisampulu eyintlaninge Eyimfanelo eyi-Macro eyiMacro eyiliweyo eyile eyila eyikona eyifom eyidaisy eyi-cotangent eyi-1 EyesiCyrillic Eyenzeka eyenza Eyelelanisiweyo eyehla Eyaziwayo eyayamileyo eyamkelayo eyalathisiweyo eyahluke Exwesayo Extended Express EXPONDIST EXP exesha exela exe EXACT e-Windows evumelana evuliweyo Evulelweyo EVEN Evaliweyo Evalelweyo EUC-TW EUC-KR EUC-JP EUC-CN Etshintshisana ethunyelweyo ethunyelwayo ethumelayo ethubeni ethelekisekayo ethe e-SQL92 Esongiweyo esongezelelweyo esomthonyama Esoluliweyo-B Esoluliweyo-A esokunqoloba esiziphindaphindayo esizifanele esizayo esiyi-tangent Esiyimfanelo esiya esixwesileyo esitshintshwa Esithatyathwe esisusa Esisuka Esisthatyathwa Esisona esisiwa Esisitsali-sinamathelisi Esisisolulo esisiso esisisixa Esisisihloko Esisisazinge esishenxiswe esisetyenziswa Esisetyenzisiweyo Esisesinye esisesayo Esisenzekelayo esisemazantsi esiseleyo Esisekwe-Kwifomu Esisekunene Esisekoneni esiseko Esisekhohlo Esisazinge esisayinwe esisalathi esiqulethe esiqinisekisiweyo esiqinisekiselwa esiqhubayo esiqendwini esiqendu esiqalisa esiphindwe Esiphi esipheleleyosamathuba esiphantse esinyanisekileyo esinqongopheleyo esinolungiselelo esinokunceda esinobube esinjengopopayi esinjenge-net esingu-y esingumlinganiselo Esingqindilili esingentla esingenakugcinwa esingenakugcineka esingathethi Esingasezantsi Esingasentla Esingasemva Esingasekunene Esingasekhohlo esingaphambili esingangqinelaniyo esingalunganga esingalindelekanga esingachazwanga Esinezalathisi Esinesiqendu esinesigingqi esineli esindlela Esimnyama esimiselwe esimhlophe Esilungiselwe esilunga esilondolozwe esilikhamte Esilandeliswayo Esikwibanga esikude esikoku Esikhewukileyo esikhawulezisayo esikhawulezayo esikhankanywe esikathathu esihlengahlengisiweyo esihlawulweyo esihlawula Esihlasisenyuka Esihla esihambelanayo esihamba Esigqunyathelweyo esigcinwe esifunyanisiweyo esifumaneka esifihlwe esifihlwayo esifaneleke esifaka esidibanisa esidala esicothisisayo esichaziweyo esichaza esiCanada esicacileyo Esicaca esibuyiselwa esibizwa esi-8 eshunqulelayo Eshiyanayo eshicilelwa eshenxisa esezivuliwe esezinazo esezibhaliswe eseyiphendulwe eseyikho eSeva esetyenziswayo Esesiqhubele esesiguqulelwe esesibhalisiwe esenzekileyo esenzeka Esentla esendaweni Esempahleni eseMbuzweni Esemazantsi eselikho esebenzisekayo esebenzisa Escudo esazinge esasebenzayo esalathiso Esahlukaniswe EsabuNobumba Esabungqukuva ERRORTYPE ERFC ERF equlethwe equkanisayo Equador eqongeni eqokobheni eqingqiweyo eqhutywayo eqhutywa eqhosha eqeleni Eqela eqala EPSI eps Epreli eppm e-PowerPoint ePowerPoint epict Ephindwe ephilayo ephawulayo ephantsi epgm epbm eos2met e-OpenOffice EOMONTH eOLE Eofisini Enyuselwa Enyanisweni enxulunyaniswayo enxambini Environment envelp entsusa Entshukumo enongqinelwano enomlinganiselo enolungiselelo Enoludwe enokwenzeka enokwabelwa enokuvela enokhuseleko enobona enkunkumeni enkqubo enkcazelo-miboniso enjengeyoonobumba engxelo enguqulelo engu-1 Engqukumba engqinelana Engqindilili engine3d engenisiweyo engengabo engenasizalisi engenamsebenzi engenakwenzeka engenako Engenabugocigoci engekho engayifaki engasekhohlo engaqhutywa engaqhelekanga engaphelelanga engaphaya engaphandle enganqumamiswayo enganqalanga engamaqhezu engamanani engalunganga engalindellekanga engafunyanwanga engafunekiyo engafanelekanga engafanelanga engachazwanga engabuyiselekiyo engababambeli enezakhelo enesithunzi Enesiqulathi enesiphumo enesiphene enesicwangciso enesi enesalathisi enenxaxheba ene-NFS enendawo Enencam Enemiqondiso enemigca enemibala eneligama Enegophe Eneempawu enecwecwe Endif Endalo Enciphisayo Encinane enani enako eMzantsi emtyaba emoyeni emntwini emizobo emivo emiswe Emiselweyo emiselwe Emine emilinganiso emibuzweni emiboniso emi-3 Emi Emgqomeni emenyu emeleneyo emehlweni Embhoxo embalwa emaziboniswe Emaphandleni emalunga E-mail email EM eluphawu eluntwini elunokusekwa Elungiselelweyo elubalelwa elonganyelweyo eliziqalela elizimeleyo eliyingqokelela eliyimpazamo Elixhonywe elixabiso elivavanyiweyo elivanayo Elithatyathiweyo elisuka elisisixhomekeki elisisiseko elishunqulelweyo elishunqulelayo elisetyenziswayo elisesandleni Elisemazantsi Elisekunene elisebenza elisabumbhoxo Elisabugoba eliqulethe Eliqhekeziweyo Eliphindaphindwe eliphi elipheleliswe eliphambana elinyuselwa elinyanisekileyo elinxulumanisayo elintsundu elinqwenelwayo elinonxulumano elinongqinelwano elinokukhethwa elinokujikajika elinokugcinwa elinokufunyanwa elinjengelewotshi elingu-Y elingu-X elingu-Pi elingumlawuli elingumcacisi elingumamkeli Elingqukuva elingqinelanayo elingqalileyo ELINGEYONYANISO Elingenziwa Elingentla elingenanto elingenamsebenzi elingenambane elingaziwayo elingavumelekanga elingathelekiswayo elingaphelele elingaphelelanga elingaphantsi elinganana-kubukhulu-obukhethiweyo elingalinganisyo elinexabiso elinesihloko Elinesazisi elinenkcazelo elinenani elinegophe elineefoto elincinanana Elincedisa elinamandla elinamachaphaza Elinamachaphachaphaza elinako elilungelelanisa elilona elilingana elilinani elilelinye elileli elilelayo elikwishumi elikwicala elikwambaxa elikuyo Elikhuselekileyo elikhethwe elikhethwa elikhamte elijongene Elijika elihlengahlengisiweyo elihlawula eliguqulwayo eliguquka eligqithisiweyo elifunyenweyo elifunyanwa elifunyaniselwa elifunekayo elifumanekileyo elifufatshane elifanelwe elifanelekileyo elifane elifakwa elifakiweyo elifakelweyo elifakelwayo elidala elicuthwayo elichazwe Elichatshazelweyo Eliceba elibuyelelayo Elibunayo eliboniswayo eliboniswa elibonakaliswa elibekwe elenziwe elehlayo elandiswayo elandela elahlukaniswa El ekwizakhelo ekwisiqulathi Ekwiodolo ekwingxelo ekwileta ekwifomu Ekwi-3D ekwaqaliswa ekwandiswa ekwahlulwa ekwafana ekwabelwana ekuxoxwa ekuvimba ekuthotyweni ekuthi ekuthengeni ekusekwa ekusebenzeni Ekurekhodeni ekuqalisweni ekuqaliseni ekuphindaphindwa ekuphela ekupapasheni ekunyuselwa ekunokunxityelelwana ekunokubhekiselelwa ekungeniswe ekungene ekungahambelanini ekungabhalwanga ekuneneOkuzenzekelayo Ekulo ekukhethweni Ekujongweni Ekujoliswekuko ekuhlonipheni ekuhlaziyo ekugcineni Ekufutshane ekufikelelwa ekufakeni ekudityanwa ekuchongeni ekubuyiselweni ekubizweni ekubhekiselwe ekubaleni e-k-th ekrwelwa ekhuselweyo Ekhokeliswayo Ekhohlo-ukuya ekhethwayo ekhethekileyo ekhethekayo ekhasi ejikeleziswayo Eire eHTML ehlohlwe Ehlenga-hlengisiweyo ehambelana eguqulweyo eguqulelwa Egqojoziweyo egqithisileyo egqibeleleyo egobongqo egif efunekayo efundiweyo efuna efikelelekayo EFFECTIVE EFFECT Efestileni efayili efanelekileyo efakwayo efakwa Efakelweyo efaka eethayili Eentloko eentlanganiso eenombolo eenkqubo edwelisiweyo Edongeni Edluliswayo editeng EDATE edaliwe edalekileyo ecwecweni econgcisiweyo ecima Echazwe echazwa-kumsebenzisi echazwa echazelwe eceliweyo ebuzwa ebuyayo ebumba ebulalayo eBrazil eBotswana e-Boolean ebonakaliswa ebonakala ebikuyo ebifuna Ebhokisini ebhalisa e-Bézier ebezenziwe ebesikhona ebesikho ebange ebandakanyekayo ebalwa ebalulekileyo EASTERSUNDAY eajenda e-Adabas e-1 DVARP DVAR DURATION du DTD DSUM DSTDEVP DSTDEV drawfunc Drachma DPRODUCT Dot DOMAIN Dom DOLLARFR DOLLARDE DOLLAR docvw docshell dochdl DMY DMIN DMAX dlged Distiller Disemba DISC directory DIR di dhi DGET DEVSQ DEGREES DEFINEDPRODUCT DECIMAL DEC2OCT DEC2HEX DEC2BIN DDE DDB DCOUNTA DCOUNT dbui dbpilots dbhhelp dbgui dbf dBASE DB DAYS360 DAYS DAY DAVERAGE DATEVALUE DATADEVSPACE Darusalam Danyazisa Da cwaka Cuthanisa Cuthaiinkcazo Cuthaamathambeka currentdate CURRENT CUMPRINC CUMIPMT Cukana Croatian CRITBINOM COVAR COUPPCD COUPNUM COUPNCD COUPDAYSNC COUPDAYS COUPDAYBS COUNTIF COUNTBLANK COUNTA COTH COT Costa COSH COS CORREL Corporation CONVERT CONTROLNAME contnr configuration CONFIDENCE CONCATENATE COMPLEX Company Communications COMBINA COMBIN COLUMNS COLUMN Colombia Cofa CODE CLOB CLEAN Clark CI chrdlg CHOOSE Chonga CHITEST Chile CHIINV CHIDIST CHAR Cha Center CELL Cela CEILING CDE Cc Caribbean Caphula Can CALCULATEDFUNCTION C65 C6 C5 C4 byu BYTE by Buzisa buyi-3x3 Buyelela Buyaumva butyheli busondeleyo buntsundu bunobume bungaphantsi buncinane Bumbhoxo bumbeko Bumbeka Bumba Bulungileyo bukhuselekile bukhoyo Bukeka buhlenga-hlengisiwe budlelwana bubude Bubomvu-maruni Brunei browser Brorho boxwebhu Boshicilelo bosasazo Boonobumba Boolean bonxibelelwano BonisaHID bomtya bomqondiso Bommandla bomfanekiso bolungiselelo boludwe Bolivia bold Bokukhuphela Bokukhupha bokubhalwa Bokubekelelweyo Bokmål Bohlengahlengiso bodwa Bobuphi bobonelelo BLOB BINOMDIST BIN2OCT BIN2HEX BIN2DEC BIG5-HKSCS Big5 Biff8 Biff5 bibliography bhokisi Bheyiji Bhalisa Bhabhisa bezithuba bezithatyathwe beziseko beziqendu be-Windows BETAINV BETADIST BESSELY BESSELK BESSELJ BESSELI besizukulwana besixwexwe besiseko besiqingatha besiphelo besinye-ukuya besilondolozi besiJapani besiJapan besi beseli Besangqa bePDF be-OpenOffice benyathelo bentsukaphi bentloko benkxao benkaso bengqokelela benewonga bemilo bemifanekiso bemida bemibala Bembalelwano beluvulwe Belize bekuyilwa Bekungeyonto Bekungekho bekulayishwa bekukotshelwa bekuhlolwa bekugqithisiwe bekufikelelwa bekudityaniswa bekudalwa bekubuyiselwa bekubhalwa befestile befayili beetheyibhile beeseli beenkcukacha beengxelo beendlela beendawo beelwimi Be-disk Bedayimani Becuntsu bebloko bebala be-ALPS bealfabethi be Bcc bazo bazive bayisayinile bayafundwa baxele bavunyelwe bastyp basisayinile basicide BASIC BAS baphucule banga bamkelekileyo bamkelekile Bambezela Bamba bamaqondo bamanani bamaJapani balusayinile Balula Bala2 Bala1 bakhethwe BAHTTEXT Baht Bahrain Bahlobo baguqulwa bafanele bafakiweyo BACKUPNAME bachaphazeleka babucala babhexeshi azothatyathwanga azo Azizenzekeli aziyilwanga aziwuthumeli azivunyelwanga azivunyelwa azivuleki azithutheki azisuswa Azisetyenziswa Azisekho azisayi aziphelelanga azinikwanga azinasithuba azinalukhuseleko azinakwahlula-hlulwa azinakusetyenzelwa azinakungenana azinakuhlengahlengiswa azinakuguquleleka azinakuchithwa azinakubonisa azinakubhekeliselwa azimele azikwazi azihoywanga azihambelani azifunyenwanga azifunyanwanga azifikeleleki azifakwa ayizi ayiyixhasi ayiyibuyisi ayixhaswanga ayixhasi ayisakwazi ayiqulathanga Ayiphunyezwanga Ayiphunyezwa ayiphenduli ayiphelelanga ayintsusa ayintloko ayinaluphawu ayinakuvalwa ayinakususwa ayinakuphinda ayinakugcinwa ayinakuboniswa ayinakubandakanywa ayinakuba ayiminqakathi ayiluxhasi ayilixhasi ayikhuselekanga ayikasebenzi ayikahlonyelwa ayikafakwa Ayikabikho ayihlonyelwanga ayifunwa ayifuni ayifundeki ayifumani Ayifikelelekanga Ayifani ayifakwanga ayifakelwanga ayidibaniselani ayichanekanga ayibophelelekanga ayalingana ayagcinwa axhaswa awuxhaswanga awuxelwanga awusekwanga awusayi awuqulethanga awuphunyezwanga awunikelwanga awungqinelani awunaphanyazo awunanto awunankxaso awunakusetyenziswa awunakugqitywa awunakugcinwa awunakufakwa awukwazanda awukuxhasi awukathunyelwa awugqitywanga awufunyenwanga awufunyanwanga awufanelanga awudaleki awubhalwanga awt Awona awodwa awaziwa Awanelanga awanakusetyenziswa awahambelani awafakwanga avulwayo avuliweyo avi AVERAGEA AVERAGE AVEDEV Austria Australia Audio AU Athunyelwa athumele athi Athatyathwa ATANH ATAN2 ATAN ASP asoloko asiyonto asiyongxelo asiyiqulathanga asiyamkeli Asisosisele-yinyaniso Asisosiqulathi asisosikhangeli Asisolathiso asisitshixo asisebenzanga asisayi asiqulethanga asiqinisekiswanga ASINH asingomhla Asingomagama asinalubumbeko asinakwenzekanot asinakusetyenziswa asinakumiselwa asinakuhlenga-hlengiswa asinakuhlanganiselwa asinakuguqulwa asinakuboniswa ASIN asiluxhasi asilolwimi asilolwesimbo asiloludwe Asilolandelelaniso asilohlobo Asilobhalo asilo asikwazana asikuniki asikokuzikhethela asikakulungeli asikafunyanwa asikafakwa asikabikho asijikisi asihlengahlengiswanga asigcinwanga asifunyenwanga asifunyanwa Asidaleki asibuxhasi asibandakanywanga ashunqulelweyo ashicilelweyo ashenxisiweyo Ashenxisekayo ase-U asetyenziswa asenokubandakanya asemngciphekweni asekwe asebenzisekayo Asebenzayo ASCII asanelanga asandula asabumbhoxo arhabaxa Argentina AREAS ARABIC Arabia aqwalaselwa aqutyudiweyo aqulethe aqulathwe aqukwa aqhube aqhaqhe aqalise Aqala appl AportisDoc API aphindaphindwe apha Sinikelwe aphathwa aphambili apapashwe anyukayo anxulumene ano-p anoonobumba anokwenziwa anokuguqulwa anokuchithwa anokubanjwayo anokhuselo animations anikiwe angqinelanayo angoomalathi-ndlela angezantsi angengomnqakathi angenanto Angenamaqhezu Angaziwayo Angawo angathatyathwa angathabatha angasebenziyo angaphantsi angaphandle anganyanisekanga angamathambeka angala angakuwe angakhuselekanga angabanjwayo anemisebenzi aneempawu Andifuni analysis anale an AMORLINC AMORDEGRC amazwi ama-XX amaxesha Amaxabisoosasazo amava amathemba Amathambeka Amaqhezu Amaqabazana amaphepha Amanzi Amanqakwana amananani Amahlalutyana Amagqamza Amagqabi Amagamangamanye amagalelo Amafutshane amade amachibi Amacebo amacandelwana ama-24 ama am alwenza Alwanelanga aluzingeleki ALUYONYANISO aluyonxalenye aluyixhasi aluyilwanga aluyi aluxhaseki aluvunyelwa aluqulathanga aluqokelelwanga aluqokelelwa aluqhube Alupapashwa alunaso alunamsebenzi alunakuvulwa alunakuhlengahlengiswa alunakuhlelwa alunakuhlaziywa alunakugcineka alunakufakwa alunakubakho alumiselwanga alukhethwanga alukaphunyezwa aluhleleki aluhlelahlelwanga alugcineki alufunyanwanga alufunyaniswa alufundeki Alubhaliswa ALPS alondoloziweyo all Alizaliswanga alixhaswanga alixhaswa alisosiqendu alisonjululwanga alisayi Aliqhawulwa aliqela alingqinelani alingomnqakathi alinakwenziwa alinakususelwa alinakuqhutywa alimiselwanga alimfumenanga Alilungisekanga alifumani alifani alichazwanga alichanekanga Algerian alanelanga alandelelanayo alandela akwisakhelo akwi-Microsoft Akwenzeki akwaziwa akwazi akwaMicrosoft akwaLinux Akwahluli akwa-FAR akuzi Akuzaliswanga akuyonto Akuyixelanga Akuxelwanga akuvunyelwanga akuvunyelwa Akutshintsheki Akutshanje Akuphumeli Akupheli Akupapashwanga akunikwanga akungomphuhlisi Akunayo Akunawo Akunamalungelo Akunalunxulumano Akunalufikelelo akunalo akunakuqhuba akunakuqhaqhwa Akunakuguqula Akunakufakwa akunakubalwa Akunagama akulungiselelo Akulixelanga Akukrwelwa akukrweleki Akukhethwanga akukhange Akukaphunyezwa Akukabuyiselwa Akuhoywa akufunyenwanga Akufunyanwanga akufuni Akufumanekanga Akufihlwanga Akuchazwanga Akubonisi Akubekeki akhuselweyo akhuselekileyo akhona akhokelayo akawuxhasi akavumelekanga Akavuleki akasayi akasaphenduli akanakususwa akanakusetyenziswa akanakuqhuba akanakukhethwa akalogama akakuxhasi akakachazwa akafakwanga akadalekanga akabhaliselwanga AIFF aibalwa ahluleka ahlukeneyo ahlukahlukeneyo Ahlelahlelwe ahlawuleka ahlala ahamba Ah aguqulelweyo aguqukayo agqithisayo agqibile agcinwe Agasti afunyenweyo afunwa afunekayo afihleke afake ADO ADDRESS Adabas activex ACOTH ACOT ACOSH ACOS ACCRINTM ACCRINT accel Acacileyo abusebenzi abunakuguqulwa abukhuselekanga abukho abukafakwa ABS abpilot abonwe aboniswayo abonakale Abonakalayo abomvu abhalise abelwe abekiweyo abekho abc abaziwa Abayekwa Abaxumi Abaxhobisi abatsha abathunywa Abathandekayo abasebenza abasebehambele abaququzeleli Abaqhagamshelani Abaphumeleleyo abaphulaphuli abaphembeleleki Abaphathi Abantwana Abanombala abanokuba abandakanyiweyo abamiseli abalwayo abalungelelanisi abaluleke abaliqela Abalawuli Abakwa-Sun abakho abakhethiweyo Abahlolokazi abaguquleli abade abacebisi-zingxoxweni Ababukeleyo ABabini Ababhali A5 A4 A3 A2 A0 3D 2D dict-xh-20070206.orig/xh/wordlists/wordlist.scannell.in0000644000175000017500000017461610562150025021406 0ustar dokodoko# wordlist.scannell.in - Xhosa (xh) wordlist for use in dictionary lists # required by spellcheckers, translation programs, etc # # Copyright (C) 2004 Kevin Patrick Scannell # # Produced using a web corpora scanner # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # aba ababini ababoneleli abacinga abadala abade abadinga abafaka abafana abafanele abafazi abafileyo abafumana abafuna abafundi abafundisa abahlala abahlali Abahlaselwe abahlawuli abahleli abahlobo abahloli abahlupheke abakakulungeli abakha abakhangeleki abakhathalelwa abakhe abakhetha abakhi abakho abakholwayo Abakhonzi abakhoyo abakhubazekileyo abakhulelweyo abakhuli abakhulileyo abakhulise abakhulu abakwazi abakweli abala abalandeli abalapha abalawuli abalekiselwe abali abalingane abalinganiswa abalishumi abalulekileyo abalungileyo abalungiseleli abalwa abamama abambalwa abameli abamelwa abamhlophe abamnyama abanakho abanalo abanamandla abanamashishini abanaso abanaye abanayo abane abaneengxaki abaneminyaka abanengxaki Abanenxaxheba abanezizalwane abangakumbi abangakwaziyo abangamahlwempu abangaphantsi abangaphezu abangaphezulu abangekho abangomama abangqonge abanikezela abaniki abanikwe abanini abaninzi abanjalo abanokufumana abanokuthi abanolwazi abantu abantwana abanyanga abanyanzelekanga abanye abaphakathi abaphantsi abaphathi abaphathwa abaphethwe abaphila abasaphilayo abasayi abasebenza abasebenzela abasebenzi abasebenzisi abaselula abasemthethweni abasinde abasoloko abathandathu abathatha abathathu abathatyathwa abathe abathembekileyo abathetha abathi abathile abatsha abatyelele Abatyeleli abatyiswa abaya abayi abayifunayo abayisebenzisayo abaza abazali abazalwayo abazange abazi abazimba abazimisele abazinika abazinikeleyo abazithethelela abaziwayo abe abeke abekho abekwe abelana abelungu abemi abenakho abenawo abenza abenzele abizwa abo Abona abonakalayo abonakalise abone abonelele abonelelwe abonisa abonise aboniswe abonwabisa afake afakwe afana afanayo afanele afanelekileyo afika afikisayo afile Afrika afumane afumaneke afumaniseke afumene afuna afunde afundise afundisise afune akafanelanga akafanelekanga akafuni akakhange akakho akakwazi akanako akanakuba akanakuze akanamandla akanayo akanelisekanga akanyanzelekanga akatsho akazange akhange akhankanywe akhathale akhathalele akhawuleze akhe akhethe akhethekileyo akho akholelwa akholelwe akhona akhoyo akhula akhule akhulelweyo akhulise akhuliswe akhululwe akhumbule akhusele akhuselekile akhuselekileyo akhuselwe akhuthaze akuba akubalulekanga akubize akubona akubonakali akubuze akudala akufumaneki akufunekanga akufuneki akugcine akuhlawule Akuhlawuli akukhange akukho akukhumbula akukhuthazwa akukwazanga akukwazi akulandele akuloo akumelanga akumfumani akumgama akunakho Akunako akuncede Akungekhe akunike akunjalo akunyanzelekanga akuphelise akuqali akuqalise akuqinisekanga akuqinisekisi akusayi akusenjalo akuthethi akuthumele akuwo akuyalele akuyi Akuyiqondi akuyo Akuzange akuzifumani akwazi akwazise akwenze ama amabali amabango amabele amabi amabini amadala amade amadlelo amadoda amadolo amagama amagosa amagqabi amalinge amalungelo amalungiselelo amalungu amanani amandla amane amangqina amaninzi amanyathelo amanye amanzi amaphepha amaphepha-mvume amaphetshana amaphondo amaphulo amapolisa Amasango amasebe amashishini amashumi amasi amasiko amathandathu amathathu amathile amathuba amatsha amatswele amatyala amatye amaxesha amaxhoba amayeza amaziko amazwe amazwi ambalwa ambamba amele amileyo amisele amiswe anakho ananye anayo anazo andazi andiswe anelanga aneleyo anempilo anendlela anento angaba angabelani angabi angabiza angadliwa angakhula angakwazi angakwenzela angaluthatha angamangalelwa angamelwa anganikwa anganyanzelwa angaphakathi angaphandle angaphantsi angaphaya angaphezu angaphezulu angaphinda angasifaka angathi angawaphanda angaya angayalela angayi angayifumana angayifumani angazenzi angazifakela angazigqibela angene angenele angenelele angengawo angeniswe angqinela anihlali anika anike anikezele anikezelwe anikho anikwa anikwe anokuba anokufumaneka anokusetyenziswa anokuthi anokuyenza anokuzenza anomhlaza anyange apha aphakamileyo aphakathi aphande aphantsi aphela apheleleyo aphelelwe aphethe aphethwe aphila aphile aphilileyo aphinde apho apholileyo aphuma aphume aphumelele asazi asebenza asebenze asebenzele asebenzisane asebenzise asekwe asele asenziwa asetyenziswa asetyenziswe ashishina ashushu asibazi asiboni asifuni asikho asikwazi asinako asisiseko asivumelekanga asizisebenzisi aso asoloko asondelelane athabathe athambe athathe athathele athathelwe athatyathwe athe athembekileyo athenge athetha athethe athi athile athumele athunyelwe atshutshiswe atye atyebe awanako awaphumelela awayi awazi awenzi awo awona awukho awukufundelanga awukwazi awulifumani awumazi Awuphangelanga awuphangeli awuphili aya ayenzayo ayenze ayenzi ayenzileyo ayifuni ayilwayo ayinabanga ayinakho ayinako ayinanto ayingozi ayinikwa ayisayi ayisebenzanga ayisebenzi ayo aza azale azalise azaliswe azama azame aze azenzakalise azenze azenzele azibathetheleli azibone azifumananga azifumane azifumani azigqibele azihlawulelwa azikhabe azikho azikwazi azilithandi azilungise azimelanga azinakho azinako azingqinelani azinikeleyo aziphathe aziphethe aziphumeleli aziqonde azisayi azise aziswe aziwa azizange azo ba baba babahlali babaluleke babantu babantwana babase babazali babeke babekhe babekho babelane babini babo baboleka babona babone babonelela babonelele babonisa bacinga bacinge bacingisise badibana badinga badinge badla badlulisele badluliselwe badlwengulwa bafaka bafake bafanele bafike bafikelele bafumana bafumane bafumaneke bafumene bafuna bafunda bafunde bafundi bafundise bafundisise bafundiswa bafune bahlala bahlale bahlangabezana bahlangana bahlaselwe bahlawule bahleli bahluphekile bahluphekileyo bakarhulumente bakhathalele bakhawuleze bakhe bakhethe bakho bakholelwa bakholwa bakholwayo bakhululeke bakudlulisele bakufanele bakufumana bakufumane bakulungele bakunike bakunikezelwa bakuthengisela bakwazi bakwazise bakwenza bakwenze balalana balandelayo balapha balindele balindeleke balo baloo bam bamanye bamanzi bamaphondo bamaziko bamazwe bamba bambalwa bamisele banakho banako banamalungelo banamatyala banayo baneleyo banelungelo banentsholongwane baneziphazamiso banga bangaba bangakufumana bangakwazi bangaphambili bangaphi bangathi bangayifumani bangaze bangazisebenzisa bangene bangenza bangenzi bangoku banika banike banikezela banikezele banikezelelwe banikezelwe banikwa banikwe baninzi banokufumana banokutsho banokuyifumana banokwenza banomsebenzi bantu bantwana banyamekele banyangwa banzi baphathe baphatheka baphatheke baphathwa baphila baphile baphinde baphonononge baphula baphume basaphila basebenza basebenze basebenzi basebenzisane basebenzise basekhaya basekuhlaleni basele baselula basesikolweni basetyenziswe basinde basoloko bathabatha bathanda bathande bathatha bathathe bathenga bathenge bathetha bathethe bathi bathunyelwa batshaya batyelela batyiswe bawaphathe bawenza bawenze bawo bawonakalise baya bayakhuthazwa bayakwazi bayakwenza bayalingana baye bayifumana bayinikwe bayisebenzisa bayisebenzise bayo baza bazali bazalise bazalwana bazama bazame baze bazenze bazimanye bazimele baziqonde bazise baziswe bazo bekhaya bekho bekhululwa bekhululwe bekukho bekunokuthini bekwenza belandele beli belindele belizwe belwimi bemali bemboleko bemihla bempahla bempilo bemveliso bemvelo bendalo bendawo bengakhange bengamaxhoba bengqondo benikwa benkcubeko benkonzo benkululeko bentliziyo bento benyanga benza benze benziwa bethe bethenga bethu beza beze bezempilo bezifo bezigonyelwe bezikolo bezinye bezonyango bhalela bhalisa bhanya-bhanya bhazalala bobabini bolawulo boluntu bomama bombutho bomhlaba bomi bomntu bomntwana bomsebenzi bomthwalo bomtshato bonisa bonke bucala budala bude buhlungu bukela bukho bulela bulingane bulinganiswe bume bungabi bungako bungange bungaphezulu bungqina bunye busika buthathaka buthelekiswa buya buyela buza buzinikele de ebabona ebala ebaleni ebaluleke ebalulekileyo ebandakanya ebandleni ebanga ebangela ebantwaneni ebanzi ebe ebekhe ebekho ebekufanele ebekufuneka ebekwa ebekwe ebeleni ebhaliweyo ebhalwe ebhumeni ebiza ebizwa ebomini ebonakalisa ebonelela ebonisa ebonwa echanekileyo echaza efakwa efana efanayo efanele efanelekileyo efumana efumaneka efumene efuna efundiswa efuneka egameni egazini ehlabathi ehlabathini ehlala ehlawulwa ehle ehleli ejongana ejonge ejongene ekhankanywe ekhathalele ekhatywayo ekhawulezileyo ekhaya ekhayeni ekhe ekhethekileyo ekho ekhona ekhoyo ekhula ekhulelwe ekhululekile ekhulwini eklinikhi ekliniki ekubeni ekubhekiselelwe ekubonelelwa ekucelelwa ekuceleni ekudala ekudalekeni ekudalweni ekude ekudingeka ekudlalwa ekudluliselweni ekufaka ekufanele ekufikeleleni ekufumaneni ekufumaniseke ekufumaniseni ekufuneka ekufutshane ekugqibeleni ekugqibeni ekugqibezeleni ekugqitywe ekuguleni ekuhamba ekuhambeni ekuhlaleni ekuhlalwa ekuhlawuleni ekuhleni ekuhlolweni ekukhuleni ekukhuliseni ekukhuseleni ekukuphela ekulindeleke ekulo ekulungeleyo ekulungiseleleni ekulungiseni ekumelaneni ekumele ekumgangatho ekummandla ekunikeni ekunikezeleni ekunikezelwa ekunikweni ekunokwenzeka ekunyangeni ekupheleni ekuphileni ekuqaleni ekuqinisekiseni Ekusebenziseni ekusekeni ekusekweni ekuseni ekusetyenzelwa ekusetyenzisweni ekuthathwa ekuthathweni ekuthethwa ekuthi ekuthiwa ekuthumela ekuthumele ekutyeni ekutyile ekuya ekuye ekuyeni ekuyileni ekuza ekuzaleni ekuzalweni ekwaleni ekwandiseni ekwathi ekwazi ekweli ekwenza ekwenzeni ekwesi ekwindawo ekwindla elalini elandela elandelayo elapha elawula elawulayo elenza elenziwa elesibini eli elibalulekileyo elibi elibizwa elibonelela elibonisa elibukhulu elifa elifana elifanayo elifanelekileyo elifumaneka elifuna elifutshane elikhulu elilalana elilandelayo elilawula elilawulayo elililo elilinganayo elilungileyo elilwa elinako elinamashumi elinani elincinane elindele elindelekileyo elinemvume elinento elingakanani elingana elinganayo elingaphaya elingcono elinikwa elininzi elinye eliphambili Eliphanda eliphantsi eliphezulu eliphi elisebenza eliselayo elishishina elishumi elisweni elithandazwe elithatyathiweyo elithe elithembekileyo elithi elithile elitsha Eliwaka eliya eliza elizayo elizimeleyo elizinzileyo elizweni elo elolo elolu elongezelelweyo elukhuni elula elungele elungileyo elungisa elungiselela elungiselelwe emadlelweni emagqabini emali emalunga emandleni emanyeneyo emanzi emanzini emaphandleni emapoliseni emasimini ematyaleni emazantsi embalini embalwa embi emfazwe emfundo emfutshane emhlabeni emi emibeleni emibini emihle emile emilenzeni emimandla emimiselwe emincinane emine emini emininzi eminyaka eminye emisebenzi emiselwe emiselweyo emithathu emithe empahleni empilo empilweni emsebenzi emsebenzini emthethweni emtshatweni emva emzantsi emzimbeni emzini enabantwana enabe enabileyo enakho enako enamanani enamandla enamatyala enawo enayo enazo encinane encwadini endala endalo endaweni ende endisebenza endlala endlaleni endle endlela endleleni endlwini ene eneenkcukacha eneenyanga eneminyaka eneneni enetyala engadlulanga engakanani engakhange engalunganga engalweni engamashumi enganyangeki engaphambili engaphantsi engapheliyo engaphezu engaphezulu engasentla engathi engazange engazi engcono engcwabeni engekho engekhoyo engeminye engena engenalo engenayo engenise engenye engozini engqina engqonge engummangaliso enihlala enikezela enikezelwa enikezelwe enikwa enikwe eninayo eninzi enjalo enkcubeko enkosikazi enkqubo enkulu enkundla enkundleni entla entlalo entlalweni entlawulo entlawulweni entle entloko entsha enxebeni enxulumene enyakeni enyameni enyanisekileyo enyanisweni enye enza enze enzele enzelwa enzima enziwayo enziwe ephakama ephakamileyo ephakathi ephambili ephantsi ephathelele ephathelelene ephaya ephelele epheleleyo ephelelwa ephethwe ephezulu ephilileyo ephinda epholileyo ephulaphulwayo ephuma ephumayo ephumelela esa esakubona esanda esandleni esaneleyo esazi esaziyo esebenza esebenzayo esebenzisa esebenzisana esekelwe esekhoyo esekwe esele eseleyo esemhlabeni esemsebenzini esenza esenzelwe esenziwa esenziwe esesibini esesikolweni esesikweni esetyenziselwa esetyenziswa esetyenziswayo esetyenziswe eshumayela eshushu esi esibalulekileyo esibhaliweyo esibhedlele esibindini esibonisa esicelo esifana esifanele esifanelekileyo esifuna esifutshane esigqibeni esikalini esikhulu esikolo esikolweni esikweni esimele esimelwe esinawo esincinane esine esinezinto esingakanani esingaphandle esingaphezu esingentla esingisa esingqina esinika esinikezela esinikezelwe esinjalo esinobungozi esinokuba esinomntu esinye esiphambi esiphango esiphantsi esiphathwa esiphelweni esiphezulu esiphila esiphilayo esiqinisekiswe esisebenza esisebenzayo esisebenzisa esisemthethweni esisesinye esisetyenziswa esisifo esisiseko esisiso esisongezelelo esithatyathwe esithe esithi esithile esithwala esitsha esitya esityalweni esiya esiza esizalweni esizele esizimeleyo esizwe esizweni eso esoloko esona esuka ethabatha ethanda ethatha ethathe ethe ethengisa ethetha ethethile ethethwa ethi ethile ethu ethubeni ethunyelwe etshintshisa etsho etywaleni eya eyaba eyakhiwe eyakhiweyo eyakho eyam eyaneleyo eyathi eyenye eyenza eyenzeka eyenzeke eyenzelwe eyenziwa eyenziwe eyenziweyo eyodwa eyokuba eyomileyo eyona eyongezelelweyo eza ezabo ezahlukeneyo ezakhe ezala ezamathambo ezandleni ezangezeleke ezantsi ezayo eze ezekhaya ezelwe ezemfundo ezempilo ezentlalo ezenza ezenzeka ezenzekileyo ezenzelwe ezenziwa ezenziwe ezezihlunu ezi ezibalaseleyo ezibaluleke ezibalulekileyo ezibanda ezibandakanya ezibangela ezibangwa ezibanzi ezibekwe ezibengezelayo ezibhaliweyo ezibhalwe ezibhedlele ezibi ezibini ezibizwa ezibona ezibonakala ezibonakalayo ezibonisa ezicelo ezifakwayo ezifakwe ezifana ezifanayo ezifanele ezifanelekileyo ezifumaneka ezifumanekileyo ezifuna ezigqithileyo ezihambelanayo ezihlala ezihlasela ezihlelelekileyo ezikhankanywe ezikhethekileyo ezikhoyo ezikhulu ezikhuthazwa ezikliniki ezikolo ezikolweni ezilalini ezilandelayo ezilapha ezilele ezilishumi ezilithoba ezilula eziluncedo ezilungele ezilungileyo ezilwanyaneni ezimalunga ezimanzi ezimbalini ezimbalwa ezimbi ezimbini ezime ezimeleneyo ezimfutshane ezimisa ezimisele ezimiselwe ezimiswe ezinabafundi ezinamandla ezincinane ezindala ezinde ezindlela ezindleleni ezindlu ezindlwini ezine ezineendleko ezinento ezingamadoda ezingamashumi ezingamathanga ezingaphambili ezingaphantsi ezingaphaya ezingapheliyo ezingaphezu ezingaphezulu ezingasetyenziswa ezingawe ezingekho ezingena ezingenayo ezingezizo ezingqina ezingqonge ezingunobangela ezinikezelwa ezinikwa ezininzi ezinjalo ezinje ezinjengezo ezinjeni ezinkulu ezinobungozi ezinobunzima ezinokusetyenziswa ezinokuthi ezinombolo ezintandathu ezintathu ezintle ezintsha ezinxulumene ezinye ezinzima eziphakamileyo eziphakathi eziphambi eziphambili eziphantsi eziphathelele ezipheleleyo eziphezulu eziphila eziphilayo eziphilileyo eziphinda eziphuma ezisasazayo ezise ezisebenza ezisekelezelwe ezisemthethweni ezisesikweni ezisetyenziswa ezisetyenziswayo ezishishina ezishushu ezisimahla ezisingqongileyo ezisondele ezithathu ezithe ezithengisa ezithengwa ezithi ezithile Ezithili ezitsha ezitya ezityalweni ezityebileyo eziya eziyalela eziye eziza ezizele ezizeleyo ezizezenu ezizezi ezizezinye ezizimeleyo ezizisa ezizizifundo ezizizo ezo ezolileyo ezoluleko ezomileyo ezona ezonakeleyo ezonyango ezulwini fumana futhi ga gadalala gqitha hamba hayi hlaba hlabathi hlobo hlola iba ibala ibaluleke ibalulekile ibalulekileyo ibambe ibandakanya ibandakanye Ibandla ibanga ibangela ibango ibanike ibe ibeke ibekelwe ibekho ibekwe ibele ibenye ibenze ibethelelwe ibhaliwe ibhalwe ibhanki ibhayisekile ibhekiswe ibhinqa ibhula ibhunga ibingekho ibisele ibizwa ibolekisa ibonakala ibonakale ibonakalisa ibonelela ibonelele ibonisa ibonise ibonwa ibulala ibuyele icala icandelo icebise icebiso icebo ifake ifakwe ifana ifanayo ifanele ifanelekile ifomu ifumana ifumane ifumaneka ifumaneke ifumanekile ifumanise ifumene ifuna ifuneka ifunisa ifuthe igadi igalelo igalelwe igama igazi igosa igqibe igqithileyo igqitywe igula igumbi igunya igusha ihamba ihambe ihambelane ihambisa ihambo ihlabathi ihlale ihlawula ihlawulela ihlawulelwe ihlawuliwe ihlawulwe ihle ihleli ihlolwe iigusha iilayisenisi iilwimi iimali iimazi iimbasa iimbono iimeko iimfanelo iimfundiso iimfuneko iimfuno iimpahla iimpawu iimpepha iimvavanyo iimveliso iimvume iincwadana iincwadi iindaba iindawo iindibano iindlebe iindleko iindlela iingcebiso iingcinga iingcingo iingozi iingqondo iingxaki iingxelo iinjongo iinkalo iinkcazo iinkcubeko iinkcukacha iinkokheli iinkolelo iinkolo iinkonkxa iinkonzo Iinkosi iinkqubo iinkumbulo iinkundla iinkunzi iinombolo iinqununu iintanda iintlanga iintlanganiso iintlanti iintlawulo iintliziyo iintlobo iintloko iintsholongwane iintswelo Iintwala iinyanga iinyani iinyawo iinzame iinzima ikakhulu ikhangele ikhangeleka ikhankanya ikhawuleza ikhaya ikhe ikho ikholelwa ikholisa ikholwa ikhoyo ikhuba ikhula ikhule ikhulise ikhusela ikhuselekile ikhuselekileyo ikhuthaza ikhuthaze ikomityi ikopi Ikothusa ikwandisele ikwazi ikwaziyo ikwenza ikwindawo ilalane ilandelayo ilandelwe ilanga ilapha ilaphu ilawule ilawulwa ilawulwe ilele ileli ilifa ilindele ilindle ilinganiselwe ilingu ilinywe iliso ilityala ilizwe ilizwi ilula iluncedo ilungele ilungelo ilungile ilungileyo ilungiselele ilungu imali imane imasisi imazi imbalelwano imbali imbambano imbeko imbewu imbi imbiza imbonakalo imbumba imeko imela imele imelwe imfazwe imfundiso imfundo imfuneko imfuno imiba imibandela imibele imiboniso imibono imibutho imibuzo imigama imigangatho imigaqo imigaqonkqubo imigqaliselo imigubasi imihla imihlaba imile imilile imilinganiselo imimandla imimangaliso imimiselo imini iminikelo iminxeba iminyaka imiqathango imiqondiso imise imisebenzi imiselwa imiselwe imithandazo imithetho imithi imithwalo Imitshato impahla impawu imphathe impiliso impilo imveliso imvume imvumelwano inakho inako inani inceba incede incwadana incwadi Indaba indalo indawana indawo inde indibano indima indlala indlebe indleko indlela indlu indoda ineendawo inenekazi inetyala inezizathu inga ingaba ingabangela ingabi ingakanani ingakumbi ingakwazi ingangena inganyangeka inganyangwa ingaphandwa ingaphantsi ingaphaya ingaphezulu ingasayi ingasebenza ingasebenzi ingasetyenziswa ingathanda ingathatyathwa ingathengwa ingathi ingcebiso ingcinga ingekho ingekhoyo ingelulo ingena ingendlela ingene ingeniso ingeniswe ingenza ingezizo Ingonyama ingozi ingqalelo ingqibelelo ingqina ingqiniseko ingqondo ingubani ingumsebenzi ingumzali inguwe inguye ingxaki ingxelo inika inike inikezelwa inikezelwe inikwa inikwe ininzi injalo injani injongo inkam-nkam inkantsi inkanyamba inkathalelo inkathazo Inkcaza inkcazelo Inkcazo inkcubeko inkcukacha Inkoliso inkolo Inkomfa inkonzo inkosikazi inkqubela inkqubo inkulu inkululeko inkundla inkunzi inkxaso inkxaso-mali inokuba inokufane inokuthi inokwenza inombolo Inqaku inqununu intando intetho intlangano intlawulo intliziyo intloko intonga intsha intsikelelo intsimbi intsimi intsingiselo intswelo intwana intywenka inxalenye inxaxheba inyama inyanga inyani inyaniso inyanzele inyanzelisa Inyathelo inye inyele inzala inzima iphakamise iphakathi iphambili iphande iphantsi iphela iphele iphelele iphelelwe iphepha iphepha-mvume iphethwe iphetshana iphezulu iphi iphila iphinde iphondo iphonononge iphulo iphume iqabane iqale iqalise iqela iqinisekise iqondo isakhiwo isambuku isamente isandi isandla isantya isazela isaziso isaziwa isebe isebenza isebenze isebenzise isekelwe isekwe isempilweni isemthethweni isenzeka isenziwa isenzo isetyana isetyenziselwa isetyenziselwe isetyenziswa isetyenziswe ishishini ishumi isiba isibabalo isibambiso isibhedlele Isibhengezo isibini isibizo isicelo isidima isifo isifundo isifungo isigaba Isigama isigqibo isigulane isigulo isikhalazo isikhululo Isikhundla isikhuseli isiko isikolo isimangalo Isinye isipho isiphumo isiqingatha isiqinisekiso Isiqiniseko isiqiniselo Isiseko isiselo isisizathu isithathu isithembiso isithi isithole isithuba isithuthi isitya isityalo isivumelwano isiza isizalwane isizathu isizwe isohlwayo isoka isondo isono ithabatha ithambeka ithande ithatha ithathe ithathwe ithe ithelekise ithemba ithengiswa ithetha ithethe ithethwa ithi ithile ithintele ithintelwe ithole ithuba ithunyelwa ithunyelwe itshintsha itshintshiwe itya ityala itye ixele ixelwe ixesha ixeshana iya iyakwazi iyalele iyayiqonda iye iyenziwa iyeyona iyeza iyodwa iyonke iza izakha izakhiwo izakhono izale Izalelo izaliswe izama izame izandla ize izehlo izele izenzo izibalo izibhalo izibhedlele izibini izibonelelo izicelo izifo izifundo iziganeko izigqibo izigulana izigulane izigulo izihlunu izikhalazo izikhululo izikhuselo iziko izikolo izilonda izilwanyana izimisele izimvo izinambuzane izindlu izinga izinto iziphakamiso Iziphathamandla iziphazamiso izipho iziphumo iziqalelo iziqinisekiso Iziseko izishuba izithintelo izithixo izithole izithuba izitya izityalo iziza izizalwane izizathu izizwe izono jikelele kade kakade kakhulu kakubi kakuhle kaloku kaloliwe kamantyi kambe kananjalo kanga kangaka kangakanani kangako kangangoko kangangokuba kaninzi kanjalo kanjani kanobom kanti kanye karhulumente kathandathu kathathu katitshala ke khange khangela khaya khe khona khumbula kodwa koko koku kokuba kokubhalisa kokubonisana kokudlana kokufa kokufakwa kokufumana kokukhona kokulala kokulalana kokuphathwa kokuphazamiseka kokusebenza kokusebenzisa kokuthabatha kokutshona kokutya kokuya kokuzalwa kokwenu kokwenza kokwexeshana kolawulo kolo Koloni kolu koluntu kolunye kolwazi kolwimi komba kombane komhla komhlaba komntu komntwana komnye komsebenzi komthetho komtshato komyalelo komzali komzimba kona konakale konakalisa koncedo kongezeka konke konyaka kopi kosana kosuku kuba kubabeka kubafazi kubafundi kubahlobo kubakhi kubakho kubalelwa kubaluleke kubalulekile kubameli kubandakanya kubandakanywa kubangela kubangele kubangelwe kubani kubantu kubantwana kubanye kubaphazamisa kubasebenzi kubazali kube kubekelwa kubekelwe kubekho kubekwe kubeleka kubelula kubemi kubetha kubhala kubhalisa kubhaliso kubhalwa kubhalwe kubhekiswa kubize kubizelwa kubizwa kubizwe kubo kubomi kubona kubonakala kubonakale kubonakalisa kubonakele kubonelelwa kubonisa kuboniswa kuboniswe kubudala kubude kubuhlungu kubukho kubunikazi kubunzima kubuyela kucela kucelwa kucelwe kucingelwa kucingo kucingwa kudala kudale kudaleke kude kudibana kudibene kudingeka kudla kudlala kudluliselwa kudluliselwe kufa kufaka kufakelwa kufakelwe kufakwa kufakwe kufanele kufaneleke kufanelekile kufanelekileyo kufika kufike kufikelela kufikelele kufikelelwe kufumana kufumaneka kufumaneke kufumaniseke kufuna kufunda kufundiswa kufundiswe kufuneka kufuneke kufutshane kugcino kugqibeka kugqirha kugqitywa kugqitywe kuhamba kuhambisana kuhlala kuhlalutya kuhlawula kuhlawuleke kuhlawulelwa kuhlawuliswa kuhlawuliwe kuhlawulwa kuhle kuhlobo kuhlola kuhlolo kuhlolwa kuhlwayelwe kukanjani kukhala kukhangeleka kukhangelwa kukhangelwe kukhankanywa kukhe kukhethwa kukho kukholelwa kukholisa kukhona kukhula kukhule kukhulelwa kukhuliswe kukhuselekile kukhuseleko kukhuselwe kuko kukuba kukubekwa kukubona kukubonelela kukubuza kukucela kukudala kukufa kukufumana kukugula kukuhlaselwa kukuhlawula kukukhuthaza kukulindela kukunika kukunike kukunikezela kukunikezelwa kukuqinisekisa kukusa kukusebenzisa kukusetyenziswa kukuthabatha kukuthi kukuthumela kukuzaliseka Kukwabalulekile Kukwakho kukwazi kukwenza kukwenzakala kukwenzela kukwesiphi kula kulandela kulandelayo kulandelelwa kulandelwa kulapho kulawula kulawulo kule kuleyo kulilanda kulindeleka kulindeleke kulingana kulinywa kulinywe kulo kuloo kulowo kuluhlu kulula kuluncedo kulungelelanisa kulungile kulungiselelwa kulungiswa kulungiswe kuluntu kulwakhiwo kulwazi kulwimi kum kuma kumadlelo kumagama kumagosa kumalinge kumalunga kumamela kumane kumangalela kumanye kumanzi kumaphepha kumaphephandaba kumaphondo kumapolisa kumasango kumasebe kumashumi kumasiko kumathala kumathuba kumatyala kumatyeli kumaxesha kumayeza kumaziko kumazwe kumbutho kumbuyisela kumelana kumele kumelwe kumenywa kumenza kumfazi kumgangatho kumgaqo kumhla kumhlaba kumi kumisela kumiselwa kumiselwe kumiswa kumiswe kumlingane kumlinganiselo kummandla kummangalelwa kummango kumntu kumntwana kumnxeba kumnyoka kumonakalo kumoya kumphambili kumphantsi kumqeshi kumsebenzi kumthengisi kumthetho kumtshato kumvuzo kumxumi kumyalelo kumzali kumzi kumzimba kuna kunabantu kunabanye kunaleyo kunalo kunamathuba kunangaphambili kunaye kunazo kuncede kunene kunenza kunezinye kungabandakanya kungabandakanywa kungabanga kungakhange kungakho Kungalandela kungangqinelani kunganzima kungaphantsi kungaphaya kungaphumi kungathatha kungcono kungekho kungekhona kungekudala kungena kungene kungenjalo kungentla kungenxa kungenza kungenzeka kungenziwa Kungesi kungeso kungoko kungoku kungokuba kuni kunika kunikela kunikezela kunikezelwa kunikezelwe kunikwa kunikwe kunina Kunini kuninzi kunjalo Kunoko kunoku kunokuba kunokubakho kunokufumaneka kunokufuneka kunokuquka kunokuthatha kunokuthi kunokwenzeka kunomnye kunqulo kunyaka kunyana kunyaniseka kunyanzeleke kunyanzelekile kunyanzeliswa kunye kunzima kuphakamisa kuphanda kuphando kuphandwa kuphantsi kuphathwa kuphela kuphelisa kuphi kuphila kuphile kuphinda kuphinde kuphulaphula kuphuma kuphume kuphumelela kuqala kuqale kuqalisa kuqaliswa kuqaliswe kuqalwe kuqinisekisa kuqinisekiswa kuqinisekiswe kuquka kuqukanisa kuqukwa kusakhiwa kusapho kusaphulwa kusasazwa kusaziwa kuse kusebenza kusebenzisa kusebenzisana kusekelwe kusekwe kuselithuba kusemthethweni kusenzeka kusenziwa kusetyenziselwa kusetyenziswa kusetyenziswe kushishino kushushu kusikwa kusimahla kusini kusisi kusithiwani kusuke kususa kuthabatha kuthanda kuthatha kuthathela kuthathelwa kuthathwa kuthathwe kuthatyathelwa kuthatyathwa kuthatyathwe kuthe kuthelekiswa kuthenga kutheni kuthetha kuthethe kuthethwa kuthi kuthintelwe kuthiwa kuthiwe kuthumela kuthunyelwa kutsha kutshabalalisa kutshintshisa kutsho kutya kutyaliwe kutyalwa kutyalwe kutyandwa kutyelelo kuwe kuwenza kuwo kuya kuyalelwe kuyanyanzeleka kuye kuyenye kuyenza kuyenzeka kuyenzelwa kuyilanda kuyo kuza kuzalwa kuzama kuzanywe kuze kuzenzela kuzibona kuzifumana kuzikhathalela kuzilanda kuzimasa kuzinikezela kuzisa kuziswa kuzitshintsha kuzo kwaba kwabadala kwabafileyo kwabafundi kwabakho kwabantu kwabantwana kwabanye kwabasebenzi kwabasebenzisi kwabazali kwabemi kwabo kwakanye kwakhe kwakhiwa kwakhiwe kwakho kwakhona kwakufuneka Kwakugqitywa Kwakukho kwakuloo kwakunyanzeleke kwakunyanzelekile kwakunye kwakuphandwa kwakusenzeka Kwakutheni kwakuya kwala kwalapha kwale kwaleyo kwaliwe kwalo kwaloo kwalowo kwam kwama kwamagosa kwamagqabi kwamalungelo kwamalungu kwamandla kwamanye kwamanzi kwamashumi kwamathuba kwamaxesha kwamaziko kwanabani kwanabo kwanalowo kwandisa kwandiselwa kwandiswa kwanemali kwanendlela kwanezakhono kwangaphambili kwangathi kwangena kwangethuba kwangexesha kwangezo kwangoko kwanobuhlanga kwanokuba kwanokufa kwanokumelana kwanoncedo kwanyanzeleka kwanzima kwaphambi kwaphela kwaphinda kwaso kwathi kwawo kwaye kwayo Kwaze kwazi kwaziphi kwaziswa kwaziwa kwazo kwebandla kwebango kwebhanki kwelakhe kwelanga kweli kwelinge kwelinye kweliphi kweliso kweliya kwelizwe kwelizwi kwelo kwelona kwelungelo kwelungu kwemali kwemazi kwemfundo kwemfuneko kwemfuno kwemigaqo kwemihlaba kwemini kweminyaka kweminye kwemisebenzi kwempahla kwempilo kwemveliso kwemvume kwenani kwencwadi kwendalo kwendawo kwendima kwendleko kwendlela kwendlu kwengalo kwengeniso kwengozi kwengqondo kwenje kwenkqubo kwenkundla kwentlanzi kwentlawulelo kwentlawulo kwentloko kwento kwentsholongwane kwenu kwenxaxheba kwenyanga kwenye kwenza kwenzakala kwenzala kwenze kwenzeka kwenzeke kwenzekile kwenzelwa kwenziwa kwenziwe kwephondo kwesakhiwo kwesantya kweshishini kweshumi kwesi kwesibeleko kwesibini kwesicelo kwesidima kwesifo kwesifungo kwesigqibo kwesinye kwesithathu kwesithoba kwesithole kwesithuba Kwesithuthi kwesityalo kwesizathu kweso kwethu kwethuba kwetyala kwexesha kwexeshana kweyona kwezakhiwo kwezemfundo kwezemisebenzi kwezempilo kwezi kwezicelo kwezigqibo kweziko kwezikolo kwezilwanyana kwezindlu kwezintandathu kwezintathu kwezinto kwezinye kweziseko kwezisongelo Kwezithuthi kwezityalo kweziya kwezizathu kwezo kwezomthetho kwezona kwiilwimi kwiimeko kwiimfanelo kwiimfundiso kwiimfuneko kwiincwadi kwiindawo kwiindlela kwiingozi kwiingxaki kwiinjongo kwiinkcukacha kwiinkonzo kwiinkosi kwiinkqubo kwiinkundla kwiintlanganiso kwiinyanga kwikhadi kwikhaya kwimali kwimbewu kwimeko kwimfazwe kwimfundiso kwimfundo kwimfuno kwimibandela kwimibuzo kwimihlaba kwimimandla kwimimiselo kwiminyaka kwimiqathango kwimisebenzi kwimithetho Kwimitshato kwimpahla kwimpilo kwimveliso kwinani kwincindi kwincwadi kwindalo kwindawo kwindlela kwindlu kwingalo kwingeniso kwingozi kwingxaki kwingxelo kwinkolo kwinkonzo kwinkosi kwinkosikazi kwinkqubo kwinkulungwane kwinkundla kwinombolo kwinqununu kwintetho kwintlalo kwintlawulo kwintloko kwinto kwinyanga kwi-ofisi kwisakhiwo kwisenzo kwisibini kwisicelo kwisifo kwisigaba kwisigqibo kwisikolo kwisimilo kwisine kwisinye kwisiqingatha kwisithathu kwisithuba kwisivumelwano kwisizwe kwixesha kwizakhiwo kwizenzo kwizibonelelo kwizifo kwizigqibo kwiziko kwizikolo kwizimvo kwizinto kwiziphakamiso kwizithili kwizithuthi laba labafundi labahlali labantu labantwana labasebenzi labazali labo lakhe lakho lala lale lalo lalowo lanamhlanje langaphandle langoku lanto lapha lapho lasekuhlaleni lasekunene lawo laya layo le lebhunga lelanga leli lelizwe lelona lemali lembewu lemfundo lemibuzo leminyaka lemisebenzi lempilo lemveliso lencwadi lendalo lendlela lengxelo lenkolo lenkqubo lenkundla lentlalo lentlawulelo lentlawulo lenu lenza lenze lenziwe leseshoni leshumi lesi lesibini lesicelo lesikolo lesithathu lesizwe lethu letyala leyesithandathu leyo lezibhedlele lezifundo lezinye lezityalo libakhuthaza libaluleke libambe libe libekwe libhalise libhengeze libonelela libonelele libonise libuyiselwe licandelo licele lide lifanele lifanelekile lifumane lifundise lifuneka likarhulumente likhangele likhaya likhona likhula likhulu likwazi likwazise lilanga lilawule lilawulwa lilifa lilinye liliso lilo lilonke lilungele lilungelo lilungise lilungu linakho linako lincede lincinane lingakanani lingalifumana lingenise lingeniswe lingeza lingqina linike linikezela linikezelwa linikezelwe linikwe linobungozi linoluhlu linombono linomhlaza linyathelo linye liphela liphelelwe liphelile liphepha liphezulu liphile liphuma lisebe lisebenza lisebenze lisetyenziselwa lisetyenziswa lisiko lisiya liso lisoloko lisweleke lithabathe lithatyathwe lithetha lithi lithile lithuba lithumele lityala liya liyakubandakanya liyalele liye liza lizaliswe lizama lize liziko lizwe lobomi lobu lobudala lobuhlwempu lobulungisa lobulwelwe lobunini lobushushu lobusi lobutyebi lokhuseleko loko lokokuba lokonga loku lokuba lokubeleka lokubhalisa lokubola lokubulala lokubuya lokucela lokudela lokudibana lokufaka lokufumana lokufunda lokufundisa lokugcina lokugqibela lokuhamba lokuhlala lokuhlaziya lokuhlola lokukhetha lokukhubazeka lokukhula lokukhusela lokumitha lokungena lokunika lokuphathwa lokuphila lokuphuma lokuqala lokuqinisekisa lokusebenza lokusebenzisa lokusela lokuthabatha lokuthenga lokuthengisa lokuthetha lokuthutha lokuthwala lokutshaya lokuya lokuzala lokuzalwa lokuziphatha lokwakha lokwaphula lokwenza lokwenzeka lolawulo lolo lolona lolu loluntu lolwazi lolwimi lombane lombutho lomhlaba lomhlaza lomntu lomntwana lomnye lomsebenzi lomthandazo lomthetho lomthi lomtshato lomzali lomzantsi lomzimba lona loncedo lonke lonyaka lonyango loo lophando lowa lowo luhamba luhlaselwe luhlobo luhlu lukarhulumente lukho lukholisa lukhona lukhula lukhule lukhulu lukwazi lula lulandelayo lulawulo lulo lulonke lulungiselelwe luluntu lulwazi lunakho luncedo lunenkonzo lungabi lungasetyenziswa lungelo lungelweni lungenziwa luni lunikezelwa lunikezelwe lunikwe luphela luthe luthi lutho luya luye luyenziwa lwabahlali lwabantu lwabantwana lwabasebenzi lwabazali lwabo lwakhe lwakho lwalo lwaloo lwam lwamalungu lwamanani lwamandla lwamanzi lwamasebe lwamaxesha lwamayeza lwandiswe lwaphulo lwasekhaya lwasemthethweni lwawo lwayo lwazi lwazo lwebele lwebhunga lwedolophu lwelindle lwelizwe lwemali lwembewu lwemfundo lwemiba lwemihlaba lwemiqathango lwemisebenzi lwemithi lwemitshato lwempahla lwempilo lwencindi lwendalo lwendawo lwendibano lwendlela lwendlu lwengcebiso lwengozi lwengqondo lwenkcazelo lwentlalo lwenzeka lweshishini lwesi lwesibini lwesidima lwesikolo lwesithathu lwesizwe lwethu lwexeshana lwezabelo lwezakhiwo lwezi lwezifo lweziko lwezimvo lwezinto lwezomthetho lwezonyango lwimi mababe mabakala mabakhuthazwe mabathi madoda magama magosa mahle mahluko mali malini malunga malungelo mandiyenze mandla maninzi manyathelo manzi maphepha mashishini masibe masiko masisi mathathu matyala matye maxesha mayela mayenziwe mayeza mazibe maziko mazingabi mazwi mba mbandela mbane mbewu mbini mboleko mbongo mbono mbutho mbuzo meko mhla mhlaba mhlawumbi mhlekazi mhlophe mibandela mibini mibuzo migaqo mihla mimandla mimiselo minyaka misebenzi mitha mithetho mitshato mntu mntwana mnyama mnye msebenzi mthetho mthethweni mthi mthunywa mtsha mtshato myalelo myalezo na naba nabafazi nabafileyo nabafuna nabafundi nabahlobo nabameli nabamelwane nabani Nabanina nabantu nabantwana nabanye nabaphathi nabaphi nabaphina nabasebenzi nabazali Nabelana nabelungu nabo nakanjani nakhe nakho nako naku nakuba nakubamelwane nakubani nakubeni nakudelelwa nakuloo nakumaziko nakumazwe nakuphi nakuwo nakuyiphi nakuzo nakweliphi nakwindlela nala nalapha nalapho nale naleyo nalinye naliphi nalo naloo nalowo naluphi naluphina nam nama namabali namabango namadoda namagalelo namagosa namalungelo namalungiselelo namalungu namanani namandla namangqina namanye namanzi namaphepha namasebe namashishini namashumi namasiko namathuba namatyala namaxesha namayeza namaziko namazwe namhlanje namnye Nanga nangakumbi nangaliphi nangaluphi nangamaphepha nangaphandle nangaphezu nangaphezulu nangayiphi nangayo nangendlela nangenxa nangoko nangoku nangokuba nangokunyanisekileyo nangokusebenzisa nangolwimi nangona nani nanini nanjani Nanje nanjengoko nanko nanku nantoni Nantsi Nantso naphantsi naphaya naphi nasekubeni nasekudaleni nasekusetyenzisweni nasekuzinikeleni nasekwenzeni nasemhlabeni nasemva nasinye nasiphi nasiphina naso nathi natyala nawabantu nawaphi nawe nawo nawuphi naxa naye nayiphi nayiphina nayo nazi naziphi nazo ncedo ncwadana ncwadi ndaba ndakuba ndandisithi ndathi ndawo ndawonye Ndaze ndiba ndibaleka ndibano ndibe ndibona ndima ndimele ndimi ndinga Ndingaba ndingakhululeka Ndingamenzela ndinganako ndingayenza ndingene Ndingenza ndinikwe Ndinyanzelekile ndisazi Ndisifaka ndisithi ndisiya ndiya ndiyakholwa ndiyakwenza ndiyathemba ndiye ndiyenzile ndleko ndlela ndlu ndoda neemali neemazi neembono neemfanelo neemfundiso neemfuneko neemfuno neempahla neempawu neemvavanyo neendawo neendlela neengcebiso neengozi neengxaki neengxelo neenjongo neenkcukacha neenkonzo neenkqubo neenkundla neenkunzi neenkxalabo neentlawulo neentlobo neentloni neentswelo neenyanga nekhadi nekhaya nekopi nekufuneka neli neliya nelizwi nelungelo nemali nembali nembewu nemfundo nemfuneko nemfuno nemiba nemibandela nemiboniso nemibutho nemibuzo nemigangatho nemigaqo nemigubasi nemihla nemihlaba nemilinganiselo nemimandla nemimiselo neminyaka neminye nemiqathango nemiqondiso nemisebenzi nemithetho nemithi nempahla nempilo nemveliso nemvume nencwadana nencwadi nendalo nendawo nendima nendlela nendlu nendoda nenempilo nengalunganga nengcebiso nengekho nengeniso nengqondo nengxaki nengxelo nenkathalo nenkcazelo nenkcubeko nenkolo nenkonzo nenkosikazi nenkqubela nenkqubo nenkululeko nenkundla nenkunzi nenkuthazo nenkxaso nentlalo nentlawulo nento nentsingiselo nenxaxheba nenyaniso nenye nenzala nenze nenzondo nethuba netyala neyomsebenzi neyona nezabelo nezabo nezakhiwo nezamaphondo nezempilo nezi nezibhedlele nezibonelelo nezifanele nezifo nezifundo nezihlobo neziko nezikolo nezilwanyana nezimvo nezinambuzane nezindlu nezinga nezinkulu nezinto nezinye nezipho neziphumo nezithembiso nezithethe nezithili nezithintelo nezithuthi nezityalo nezizathu nezizwe nezo nezokhuseleko nezona ngaba ngababelekisi ngababini ngabahlobo ngabalingane ngabantu ngabantwana ngabanye ngabaphi ngabasebenzi ngabayeni ngabazali ngabelungu ngabemi ngabo ngabom ngabona ngakanani ngako ngakulo ngakumbi ngakuyo ngala ngale ngalinye ngaliphi ngalo ngaloo ngalunye ngaluphi ngam ngamadoda ngamagama ngamali ngamalungelo ngamalungu ngamandla ngamanene ngamanye ngamanzi ngamapolisa ngamasebe ngamashumi ngamasiko ngamathuba ngamatyala ngamaxa ngamaxesha ngamayeza ngamaziko ngamazwe ngamazwi ngamnye ngandlela ngani nganto ngantoni nganye ngapha ngaphakathi ngaphambi ngaphambili ngaphandle ngaphantsi ngaphaya ngaphezu ngaphezulu ngasentla ngasese ngasinye ngasiphi ngaso ngathi Ngathuba ngawaphi ngawe ngawo ngawona ngaye ngayiphi ngayo ngazinye ngazo ngazwinye ngcinga ngcono ngeemali ngeemveliso ngeendawo ngeendleko ngeendlela ngeenjongo ngeenkonzo ngeentlobo ngeenxaxheba ngeenyanga ngeenyawo ngelaphu ngeli ngelifa ngelithuba ngelizwi ngelo ngelona ngemali ngembalelwano ngembeko ngemfundiso ngemfundo ngemiba ngemibandela ngemibuzo ngemigaqo ngemihla ngemihlaba ngemini ngeminyaka ngemiqathango ngemisebenzi ngemithetho ngempahla ngempilo ngemva ngemvelaphi ngemveliso ngemvume ngencwadi ngendalo ngendleko ngendlela ngendoda ngenene ngengozi ngengqondo ngengxelo ngenjongo ngenkani ngenkathalo ngenkcubeko ngenkonzo ngenkqubo ngentando ngentla ngentlawulo ngentliziyo ngento ngentsholongwane ngentsimbi ngenxa ngenyama ngenyanga Ngenyaniso ngenyathelo ngenye ngenzala ngesamente ngesandla ngesaziso ngesenzo ngesi ngesicelo ngesidima ngesifo ngesigqibo ngesimilo ngesiphumo ngesisa ngesizwe ngesohlwayo ngesondo ngethuba ngetyala ngexesha ngezakhono ngezandla ngezantsi ngezemali ngezenzo ngezi ngezifo ngeziganeko ngezikhondo ngezimvo ngezinto ngezinye ngeziphumo ngezisongelo ngezithuthi ngezizathu ngezizwe ngoba ngobani ngobomi ngobudala ngobuhlanga ngobulungisa ngobume ngobungqina ngobuninzi ngobusela ngokholo ngoko ngokokubona ngokokuhlonyelwa ngokokuthanda ngokomthetho ngokomzimba ngoku ngokuba ngokubaluleka ngokubambisana ngokubanzi ngokubhala ngokubhekiselele ngokubona ngokude ngokudela ngokudibanisa ngokudlala ngokufa ngokufanayo ngokufanelekileyo ngokufumaneka ngokufuna ngokufundisa ngokufutshane ngokuhamba ngokuhambelana ngokuhambisana ngokuhlala ngokuhlangana ngokuhlangeneyo ngokuhlwa ngokuhlwanje ngokukhawuleza ngokukhawulezileyo ngokukholwa ngokukhulelwa ngokukhulu ngokukhululeka ngokukhululekileyo ngokukodwa ngokulandelelana ngokulingana ngokulinganayo ngokulula ngokumalunga ngokumayela ngokumelana ngokumhlawulisa ngokunga ngokungakhathali ngokungakwazi ngokungathi ngokungcono ngokungekho ngokungena ngokungqinelana ngokunika ngokunikwa ngokunjalo ngokunyaniseka ngokunyanisekileyo ngokuphandle ngokuphathelele ngokuphathelene ngokuphathwa ngokupheleleyo ngokuqinisekileyo ngokuqinisekisa ngokusebenza ngokusebenzisa ngokusesikweni ngokusetyenziswa ngokusithumela ngokusuka ngokuthanda ngokuthe ngokuthembeka ngokuthembekileyo ngokuthi ngokuthunyelwa Ngokuthutha ngokutsha ngokutshiswa ngokutya ngokutyanda ngokuza ngokuzinikela ngokuzithandela ngokuzithemba ngokuzolileyo ngokwabelana ngokwabo ngokwakha ngokwakhe ngokwakho ngokwale ngokwalo ngokwam ngokwamalungu ngokwamandla ngokwamasiko ngokwaneleyo ngokwanelisayo ngokwangoku ngokwasemthethweni ngokwasemzimbeni ngokwasenyameni ngokwawo ngokwayo ngokwazo ngokwe ngokwelo Ngokwembali ngokwemigaqo ngokwemimiselo ngokwemithetho ngokwendalo ngokwendlela ngokwenene ngokwengqondo ngokwenkolo ngokwentando ngokwenza ngokwenzakala ngokwenzeka ngokwesicelo ngokwesithembiso ngokwesivumelwano ngokwesondo ngokwezi ngokwezimali ngolo ngolu ngolunya ngoluphi ngolwazi ngolwimi ngomatshini ngomba ngombane ngombona ngomhla ngomhlaba ngomntu ngomntwana ngomnxeba ngomnye ngompu ngomsebenzi ngomthandazo ngomthetho ngonaphakade ngoncedo ngonyaka ngonyama ngorhulumente ngosuku ngowakho ngowona ngozi ngqa ngqalelo ngqo ngubani ngulo nguloo ngulowo ngumama ngumantyi ngumba ngumbandela ngumbane ngumbona ngumbutho ngumfana ngumhlaba ngumhlali ngumhlobo ngumlingane ngummandla ngummangali ngumntu ngumntwana ngumona ngumoya ngumqeshi ngumsebenzi ngumthetho ngumthunywa ngumyalelo ngumzali ngumzekelo ngunina ngunobangela ngunyaka nguwe nguwo nguye nguyise ngxaki ngxelo ni nihlala nikhumbule nina ninawo ningabemi nini ninikezele ninzi njalo njani nje njengabanikazi njengabantu njengabazali njengabemi njengamashishini njengaye njengelifa njengelizwe njengemigaqo njengemihlaba njengento Njengenxalenye njengenye njengesenzo njengesiqinisekiso njengeso njengesohlwayo njengobungqina njengoko njengokuba njengomfundi njengomntu njengomntwana Njengomphathi njengomsebenzi njengomzali Njengowabo njongo nkalo nkam-nkam nkathazo nkcazelo nkcazo nkcukacha nkolelo nkolo nkonzo Nkosi nkqubo nkulu noba nobabini nobomi nobudala nobukho nobulawuli nobume nobungakanani nobungozi nobungqina nobuni nobunini nobunzima nobutyala nokholo nokhuseleko noko nokokuba noku nokuba nokubala nokubamba nokubeka nokubhala nokubhalisa nokubona nokubonelela nokubonisana nokubuyela nokucebisa nokucela nokucinezela nokufa nokufaka nokufakela nokufikelela nokufikeleleka nokufuma nokufumana nokufunda nokufundiswa nokugcina nokuhambelana nokuhambisa nokuhla nokuhlawulwa nokuhlola nokukhetha nokukhula nokukhulisa nokukwazi nokulawula nokulifumana nokulungisa nokulungiswa nokuma nokumisela nokungabi nokungakwazi nokunika nokunikwa nokunyanga nokunye nokuphakamisa nokuphangalala nokuphathwa nokuphawula nokuphelisa Nokupheliswa nokuphila nokuqinisekisa nokusasazwa nokusebenza nokusebenzisa nokusetyenziswa nokuthandana nokuthe nokuthenga nokuthetha nokuthi nokuthile nokuthintela nokuthunyelwa nokutshintsha nokutshutshiswa nokuya nokuyongeza nokuzala nokuzimela nokuzimisela nokuzinikela nokuziphatha nokwakha nokwanda nokwazi nokwenza nokwenziwa nolawulo nolonwabo nolu noluhlu nolungiselelo noluntu nolunye nolutsha nolwazi nolwimi nomama nomba nombane nombolo nombona nomfazi nomfundo nomhla nomhlaba nomhlobo nomntu nomntwana nomnye nomphathi nompu nomsebenzi nomthetho nomyalelo nomzimba noncedo nonina nonke nonokwazi nonwabile nonyango nonyoko noqeqesho nowesithathu nowesizwe ntandathu ntathu ntlawulo nto ntoni ntsholongwane ntwala nyaka nyama nyana nyanga nyango nyani nyaniso nye nzima obalulekileyo obaneleyo obangele obo obomi obonelela obu obudala obukhoyo obukhulu obungange obungunaphakade obuninzi obunye obusela obuselwe obusemzimbeni obushushu obuthathaka obuthe obuthile obuya obuza ofileyo ofumana ofuna ofunayo ohamba ohambelana ohlala ohlawulayo ohlawulelwa okanye okhe okholo okhona okhoyo okhulelweyo okhulisa oko okoko okokuba okokugqibela okokuqala oku okuba Okubaluleke okubambela okubelekisa okubhale Okubhalisa okubhalwe okubi okubonakala okubonelela okubulala okubulawa okudinga okudlala okufaka okufanelekileyo okufaneleyo okufikelela okufumana okufunda okufutshane okugcina okugcinayo okugqibela okugula okuhlala okuhlawula okuhlela okuhlola okukhawulezayo okukhulu okukhuthaza okulawula okulungileyo okulwa okumisela okunempilo okungakumbi okungcono okungena okungenani okuninzi okunokwenzeka okunyanga okunye okuphatha okuphela okuphethe okuqala okuqatha okuqinisekisa okuqulethwe okusasaza okusebenza okusemthethweni okuthe Okuthengisa okuthetha okuthethwa okuthile okuthintela okutsha okuya okuyo okuza okuzala okuzalisa okwabizwa okwakha okwaneleyo okwangoku okwazi okwe okweli okwenyaniso okwenza okwenzeka okwenzeke okwesibini okwesithathu okwethutyana okwexesha okwexeshana olandelayo olapha olawula olawulo olo olongezelelweyo olu oluhle Oluhlobo olukhawulezileyo olukho olukhulu olukhululekileyo olulandelayo olulinde olululo olulungileyo oluneenkcukacha olungathabathi olungekho olungileyo olungiselelwe olunikwa oluninzi Olunobulungisa olunokuthi oluntu olunye oluphangaleleyo olupheleleyo oluphezulu oluthe oluthetha oluthile olutsha oluya olwazi olwaziwa olwenzeka olwenziwa olwenziwayo olwenziwe omabini omalunga omama omaziyo ombane ombi omhlaba omhle omileyo ominyaka omiselwe omntu omntwana omnyama omnye omsebenzi omthetho omthi omtsha omtshato omzimba onakho onale onawo onayo onazo oneminyaka onenceba onencwadana ongakanani ongakwazi ongakwaziyo ongamele ongaphantsi ongaphezu ongasebenzi ongasekhoyo ongayi ongayiqondiyo ongazenzisiyo ongenako ongenguye ongentla ongomnye onika onikwe onke onobungozi onokuba onokufumana onokuthi onokuyenza onokuyifumana onolwazi onwabe onzima oomama osapho osasazo osebenza osebenzayo osebenzela osekelwe osele osemthethweni osemva osikwe osuka othando othe othengisa othi othile othunyelwa owabelana owadingayo owakhe owalukele owanikwa owasebenzisayo owayesakuba owazi owaziyo owenza owenzayo owenze owenziwa owenziwe oweza owona owongamele oya oyifunayo oyilandelayo oyindoda oyingozi oyintloko oyinyaniso oza ozame ozibuleleyo ozifumanayo ozifunayo ozikhethileyo ozinikeleyo oziphawuleyo ozise ozisebenzisayo phakathi phambi phambili phandle phantsi phawu phaya phepha phepha-mvume phetshana phezu phezulu philisa phondo phulo Qinisekisa rhoqo rhulumente sakhe sakhiwa sakho sakubhalisa sakubona sam samabanga samapolisa samaziko samazwe sandla sangaphakathi sangena sasasazwa sasemini sasimi saya saye sayo sazi saziswe sazo sebe sebenzisa sekukho sekupheleni sekusebenza sele seli selinye selobola semali seminyaka semitha sempahla semthethweni semva semveliso semvume sencwadi sendleleni sengeniso sengqondo senkxaso sentlekele sentliziyo sento sentsimbi senu senyathelo senza senze senzeka senzeke senziwa senziwe senzo seshoni sesi sesicelo sesigqibo sesikolo sesikolweni sesinye sesiphi sesiseko sesithuba seso sesona sesondo sethu sethuba setyala si siba sibafundise sibaleka sibaluleke sibambisana sibanga sibe sibeka sibhaliswe sibini sibona sibonakalise sibone sibonelela sibonisa sibonisane sibonise sicela sicele sicelo sidinga sifake sifakwa sifakwe sifanele sifo sifumana sifumane sifumaneka sifumaneke sifumanisa sifuna sifundiswe sifungo sigaba siganeko sigqibo sikhaba sikhalazo sikhatywe sikhe sikhetha sikho sikholise sikholwa sikhona sikhoyo sikhule sikhulu sikhululo sikhundla siko sikolo sikwazi sikweni simahla simbona simele simelwe simi simiso sinakho sinako sinalo sinazo sincinane sineenjongo sinengxaki singabanye singabi singakanani singangeni singathi singaze singena singenako singene singentla singqina sini sinike sinikezelwa sinobungozi sinokusetyenziswa sinokuthi sinqule siphela siphelile siphila siphinde siphumelele siphunyeziwe siqalise siqinisekise siqinisekiso sisazi sisebenza sisebenze sisebenzisa sisebenzisane sisebenzise siseko sisetyenziswa sisibini sisibonelelo sisifo sisigqibo sisigulo sisikhulu sisikolo sisisekelo sisiseko sisithethe sisithi sisitsho sisivumelwano sisiya sisizathu sisizwe siso sisoloko sisondela sisonke sisono sithandaza sithandaze sithandazela sithathe sithathela sithatyathwe sithe sithembiso sithengiswe sithetha sithethe sithi sithini sithintela sithuba sithululele sithunyelwe sitsha sitshatile sitshintsha sitsho sivumela sivumele sivumelwano siya siyakholwa siye siyenze siza sizame sizathu sizelwe sizenze sizibeka sizifumana sizimisele sizinikela sizithathela sizwe sohlwayo sokholo soko soku sokuba sokubambela sokubambisa sokubhalisa sokubonisa sokufa sokufaka sokufikelela sokufumana sokufuna sokugcina sokugqibela sokuhlala sokuhlola sokulwa sokumitha sokunikezela sokunikwa sokuqala sokusebenza sokusekwa sokuthabatha sokuthenga sokuthengisa sokutya sokuzalwa sokwenza sokwenziwa solawulo soluntu solwaphulo solwazi sona sonke thabatha thango thatha themba thetha thina Thixo thuba thumela tyala tyando tyelelo uba ubabalo ubaleke ubalulekile ubalwa ubandakanye ubanga ubani ubanike ube ubeka ubeke ubekelwa ubekelwe ubekho ubhala ubhale ubhalele ubhalisa ubhalise ubhaliswe ubisi ubize ubomi ubona ubonane ubone ubonisa ubonise ubudala ubude ubudlelane ubudlelwane ubuhlanga ubuhlobo ubuhlungu ubukhe ubukho ubukhulu ubulungisa ubumanzi ubume Ubumi ubuncinane ubungakanani ubungekho ubungozi ubungqina ubuni ubunini ubuninzi ubunyani ubunye ubunzima Ubusazi ubusela ubusele ubushushu ubusuku ubuthumbu ubutyebi ubuya ubuye ubuyele ubuze ucango uceba ucela ucele ucinga ucinge ucingo udala ude udibane udibanise udinga udinge udla udlale udliwano-ndlebe udluliselwe udlwenguliwe udlwengulo udlwengulwe ufaka ufake ufakwa ufakwe ufana ufane ufanele ufika ufike ufikeleleko ufikelelo ufumana ufumane ufumaneke ufumanise ufumene ufumile ufuna ufunda ufunde ufune ufunyaniswe ugcina ugcinela ugcino ugqiba ugqibe ugqibelise ugqibile ugqirha ugqithisa ugqithise ugula ugulayo ugule uguliswa uhamba uhambe uhlala uhlale uhlaliswe uhlanga uhlaselo uhlaselwe uhlawula uhlawule uhlawulele uhlawulwa uhlawulwe uhle uhleli uhlobo uhlole uhlolo uhlupheke ukhangele ukhankanye ukhathalele ukhathazekile ukhathazwa ukhe ukhetha ukhethe ukho ukholelwa ukholisekile ukholiwe ukholo ukholwe ukhona ukhubazekile ukhula ukhule ukhulelwa ukhulelwe ukhulile ukhululeke ukhumbule ukhuselekile ukhuseleko Ukhuselo ukhuthaza ukonakala ukonakalisa ukonga ukongeza ukonwabisa ukubaleka ukubaluleka ukubalwa ukubanga ukubanyanga ukubekwa ukubeleka ukubetha ukubhala ukubhalisa ukubhaliswa ukubhalwa ukubhekisa ukubila ukubizwa Ukubola ukubona ukubonakalisa ukubonelela ukubonelelwa ukubonisa ukubonisana ukubulala ukubulawa ukubuyela ukubuyisela ukubuza ukucela ukucele ukucelwa ukucinga ukudala ukudiba ukudibana ukudibanisa ukudlala ukudlulisela ukudluliselwa ukudlwengulwa ukufa ukufaka ukufakwa ukufanele ukufika ukufikelela ukufikeleleka ukufumana ukufumaneka ukufumanela ukufumanisa ukufuna ukufunana ukufunda ukufundisa ukufundwa ukugcina ukugqiba ukugula ukuhamba ukuhla ukuhlala ukuhlanganisa ukuhlaselwa ukuhlawula ukuhlawulele ukuhlawulwa ukuhlola ukuhlolwa ukukhangela ukukhathazeka ukukhetha ukukhethwa ukukholelwa ukukholwa ukukhonza ukukhula ukukhulelwa ukukhulisa ukukhuliswa ukukhumbula ukukhusela ukukhuselwa ukukhuthaza ukukubona ukukuphelisa ukukwenza ukulala ukulalana ukulandela ukulawula ukulawulwa ukulibaziseka ukulifumana ukulingana ukulungele ukulungelelanisa ukulungisa ukulungiselela ukulungiswa ukuma ukumamela ukumangalela ukumazi ukumbamba ukumelana ukumfuna Ukumisela ukumiselwa ukumitha Ukunatyiswa ukungabi ukungakwazi ukungangqinelani ukungaphumeleli ukungasebenzi ukungena ukungenelela ukungenisa ukungenziwa ukunika ukunikela ukunikezela ukunikezelwa ukunikwa ukunyangeka ukunyangwa ukunyaniseka ukupha ukuphakama ukuphakamisa ukuphanda ukuphanga ukuphatha ukuphathwa ukuphawulwa ukuphela ukuphelekwa ukuphelisa ukupheliswa ukuphembelela ukuphethe ukuphila ukuphinda ukuphola ukuphuma ukuqala ukuqalela ukuqalisa ukuqaliswa ukuqhambuka ukuqhawulwa ukuqina ukuqinisa ukuqinisekisa ukuquka ukusa ukusebenza ukusebenzisa ukusebenzisana ukuseka ukusela ukusetyenziswa ukusifaka ukusika ukusuka ukusukela ukususa ukususela ukuthabatha ukuthanda ukuthatha ukuthatyathwa ukuthemba ukuthenga ukuthenge ukuthengisa ukuthetha ukuthi ukuthintela Ukuthintelwa ukuthumela ukuthunyelwa ukuthutha ukuthwala ukutshabalalisa ukutshintsha ukutshixela ukutsho ukutya Ukutyabeka ukutyala ukutyandwa ukuwenza ukuya ukuyenza ukuyifumana ukuyifumanela ukuyila ukuyilungisa ukuyinyanga ukuyiqonda ukuyisebenzisa ukuza ukuzalisa ukuzaliseka ukuzalwa ukuzama ukuze ukuzenza ukuzenzela ukuzibona ukuzifaka ukuzifumana ukuzihambela ukuzikhetha ukuzimela ukuzimisela ukuzinikela ukuzinyanga ukuzinza ukuzinziseka ukuziphatha ukuziphilela ukuzisa ukuzisebenzela ukwakha Ukwaliwa ukwanda ukwandisa ukwandiswa ukwaphula ukwazi ukwazisa ukwazise ukwaziswa ukwenza ukwenzakala ukwenze ukwenzeka ukwenzela ukwenziwa ulalana ulalane ulande ulandela ulandele ulapha ulawula ulawulo ulazise ulenze ulibhalisa ulifake ulilungu ulinde ulindele ulingenise ulonwabiso ulonwabo uluhlu uluntu uluphumelele Ulutsha ulwakhiwo ulwalwa ulwaphulo ulwaphulo-mthetho ulwazi ulwimi umahluko umama umana umangalela umangalele umantyi umanyano umanzi umatshini umba umbandela umbane umboleki umbona umbono umbulelo umbungu umbutho umbuzo umdla umelane umele umelwe umenzi umfanekiso umfazi umfundi umfundisi umgama umgangatho umgaqo umhla umhlaba umhlakulo umhlaza umhle umhlobo umhloli umhlolo umhlolokazi umisela umiselwe umlilo umlingane umlinganiselo ummandla ummangalelwa umntu umntwana umnxeba umonakalo umongameli umoya umphambili umphantsi umphathe umphathi umpu umqeshi umsebenzi Umsebenzisi umthandazo umthetho umthi umthubi umthunywa umthunzi umthwalo umtshato umtshutshisi umva umvelisi umvuzo umyalelo umzali umzekele umzekelo umzi umzimba unabantu unabo unakho unako unale unalo unamalungelo unamandla unamaxesha unaso unawo unayo unazo uncedo uncwadi une uneenyanga unelungelo unemibuzo uneminyaka unemvume unendlela unengqondo unengxaki unento unentsholongwane unenxaxheba unethuba unetyala unezihlalo unga ungabekelwa ungabi Ungadibana ungakhange Ungakhangela ungakwazi ungakwenza ungalicelela Ungalifaka Ungalithatha ungamelana unganakho ungangeni unganikezelwa ungaphantsi ungaphaya ungaphezu ungaphezulu ungaphinda ungaphindi ungasebenzi Ungasebenzisa ungasentla ungasenza ungasifaka Ungasifumana ungathanda ungathatyathelwa ungathethi ungathi ungaya ungayifaka ungayifumana ungayilinda ungayilindela ungayinikezela ungayinikwa ungaze ungazifumana ungazilanda Ungazinikela ungena ungenakho ungene ungenise ungenza ungenzi ungenziwa ungomnye ungubani Ungumenzi Ungumfazi ungumfundi ungumhlobo ungumntu ungumntwana ungumsebenzi ungumzali unguye unguyise unika unike unikezela unikezele unikezelwa unikezelweyo unikwa unikwe unina uninzi unisa unobangela unobudlelane unobungozi unokuba unokubona unokufumana unokuhlala unokuyifumana unokwalelwa unokwenza unokwenziwa unomyalelo unomzila unqulo unyaka unyana unyangekile unyango unyanzela unyanzelekile unyanzelwa unyawo uphakathi uphando uphangele uphantsi uphatheke uphawu uphelelwe uphelile uphelileyo upheliswe uphethe uphethulwe uphethwe uphezulu uphi uphila uphile uphilile uphinde uphume uphumele uphumelele urhanela urhola urhulumente usakha usakugqiba usana usapho usayine usazi usebenza usebenze usebenzela usebenzisa usebenzise usele useleyo usenakho Usengumntwana usenza usenzela usenziwa usetyenziswa ushishino usibhalise usibona usifaka usifakile usifumana usifuna usinike usisebenzise usiya usuke usuku uthabatha uthabathe uthanda uthandaze uthando uthatha uthathe uthathwa uthathwe uthatyathwe uthe uthembe uthenga uthenge uthetha uthethathethwano uthethe uthi uthintelo uthumele uthunyelwa uthunyelwe uthuthe uthutho utshaba utshatile utshatyalaliswe utshintsho utsho utyale utyando utyani utye utyelela utyelele utyiswe utywala uvavanyo uvavanywe uxwebhu uya uyabona uyakholelwa uyakhula uyakuba uyakufumana uyakuhlawulwa uyakuthanda uyakwazi uyala uyamazi uyamelana uyawazi uyaya uye uyenze uyifumana uyifumane uyifuna uyile uyindoda uyingenise uyinikezele uyinkosikazi uyintoni uyinxalenye uyiqinise uyise uyisebenzise uza uzahlulele uzalise uzama uzame uze uzelwe uzenzakalise uzenze uzenzele uzenzile uzibandakanya uzibandakanye uzifakile uzifumene uzigqibile uzihlawule uzihlawulele uzimele uzimisele uzinike uzinziso uzinzo uziqonde uzisebenzisa uzisebenzise waba wabalingane wabantu wabantwana wabasebenzi wabazali wabe wabelana wabelane wabo wadalwa wadlwengulwa wakha wakhe wakhetha wakho wakudala wakuqhawulwa wakutsha wakwenza wala walo waloo walukele walwa wam wamadlelo wamagosa wamalungelo wamandla wamanzi wamapolisa wambi wambuza wande wangena wangumntwana wanikezela wanikezelwa wanikwa wanyanzelwa waphatha waphatheka waphathwa waphelelwa waphila waphinda waphula waphuma waphumayo wasebenza wasebenzisa wasekhaya wasekuhlaleni wasifumana waso wathabatha wathembisa wathenga wathetha wathi watsho watya watyelela wawo wawukhe waya waye wayelapho wayenza wayesemhlabeni wayethatha wayethetha wayeya wayeza wayo waza wazalwa waze wazi wazise waziswa waziswe waziwa waziyo wazo wedolophu wedwa weli welinye wemali wemazi wemboleko wemfundo wempahla wemveliso wena wendalo wendawo wendlela wendlu wendoda wenkonzo wenkundla wentliziyo wento wenu wenyanga wenye wenza wenzakele wenze wenzela wenziwa wenziwe wephondo wesandla wesi wesibindi wesibini wesicelo wesikolo wesithathu wesithili wesithuthi wesizalo wesizwe wesono wethu wethutyana wexeshana weza wezakhiwo wezemisebenzi wezempilo wezifo wezifungo weziko wezilwanyana wezokhuseleko wokhuseleko wokhuselo wokuba wokufundisa wokugqibela wokuhla wokuhlala wokuhlola wokukhulisa wokuphathwa wokuphila wokuqala wokusebenza wokuthengisa wokutya wokuzalwa wokuziphatha wokuziqonda wokwakha wokwenene wokwenza woma wombane wombona womfazi womhlaba womhlaza womntu womntwana womnye womsebenzi womzantsi wona woncedo wonga wonke wonyaka wonzakala wonzakele xa xesha Yaba yababoneleli yabadala yabafundi yabahlali yabantu yabantwana yabanye yabasebenzi yabazali yabe yabo yabona yakha yakhe yakho yako yakoma yakuba yakudala yakuhlawula yakwenza yalapha yale yalo yaloo yalowo yamadlelo yamagqala yamalungelo yamandla yamanzi yamapolisa yamasiko yamatswele yamatyala yamaziko yamazwe yande yandele yangaphakathi yangaphambi yangaphantsi yangasese yanyanga yasebenza yasekhaya yasekuhlaleni yasekunene yasekwa yasimahla yaso yasoloko yathi yawo yaye yayisele yayisithi yayo yebango yebhanki yeli yelizwe yemali yembalelwano yemfundo yemibutho yemimiselo yemitshato yempahla yempilo yemveliso yena yencwadi yendalo yendawo yendlela yendlu yendoda yengcebiso yengeniso yengozi yengqondo yenkolo yenkqubo yenkululeko yenkxaso yentlawulo yentlekele yenu yenyanga yenye yenza yenzala yenze yenzeka yenzeke yenzelwa yenzelwe yenziwa yenziwayo yenziwe yesakhiwo yesamente yesazisi yeshishini yesi Yesibini yesicelo yesifo yesigqibo yesikolo yesingqiniso yesininzi yesithandathu yesithathu yesithili yesithuthi yesivumelwano yesiza yesizwe yeso yesono Yesu yethu yetyala yeyabantu yeyabo yeyakho yeyam yeyokuba yeyona yeza yezakhiwo yezemali yezi yezifundo yeziganeko yezigulana yezihlunu yeziko yezilwanyana yezimvo yezinto yezizalwane yezizathu yezo yezona yezonyango yezulu yile yilo yiloo yincindi yindawo yindlala yindlela yindlu yindoda yingozi yingxaki yinkonzo yinkosikazi yinkqubo yinkundla yinqununu yintetho yintlawulo yintliziyo yinto yintoni yintwala yinxalenye yinyaniso yiya yiyo yobomi yobudala yobuhlanga yobulungisa yobunye yodlwengulo yodwa Yohane yoko yokokuba yoku yokuba yokubala yokubalisa yokubethwa yokubhala yokubhalisa yokubona yokubonana yokubulala yokufaka yokufikelela yokufumana yokufumaneka yokufunda yokufundisa yokugcina yokugqibela yokugula yokuhlala yokuhlangabezana yokuhlawula yokuhlawulwa yokuhlola yokukhonza yokukhubazeka yokukhusela yokukhuthaza yokulawula yokulinda yokulwa yokumangala yokumisa yokumiselwa yokungalandelwa yokungaphili yokungaziphathi yokungena yokungenela yokunika yokunikwa yokuphakamisa yokuphathwa yokuphelisa yokuphila yokuphunza yokuqala yokuqhawulwa yokuqinisekisa yokusebenza yokusebenzela yokusebenzisa yokusetyenziswa Yokuthatha yokuthatyathwa yokuthenga yokuthengisa yokuthengiswa yokuthetha yokuthintela yokuthumela yokuthunywa yokutya yokutyala yokuya yokuzikhusela yokuziphatha yokwabelana yokwakha yokwaphulwa yokwenza yokwenzakala yokwenziwa yolawulo yolingo yolo yolu yoluntu yolwaphulo yolwazi yolwimi yombala yombane yombona yombulo yombutho yomfazi yomhlaba yomibini yomntu yomntwana yomnxeba yomnye yomsebenzi yomthetho yomthi yomtshato yomyalelo yomzali yomzimba yona yonakalise yoncedo yongeza yoninzi yonke yonyaka yonyango zababoneleli zabafundi zabantu zabantwana zabasebenzi zabe zabemi zabo zahlula zahlulwe zakhe zakhiwa zakhiwe zakhiwo zakho zakuhlala zakutshanje zalapha zale zalo zaloo zam zama zamabanga zamabango zamadlelo zamagosa zamalungu zamandla zamanzi zamaphondo zamapolisa zamashishini zamathambo zamatyala zamatye zamaziko zangaphandle zangasese zange zatya zawo zayo ze zehlabathi zelizwe zemali zemfundo zemiboniso zemithi zempahla zempilo zemveliso zemvelo zendalo zendawo zendlela zengeniso zengqondo zenkcubeko zenkqubela zenkxaso zentlalo zentlawulo zentsimbi zenu zenyanga zenza zenze zenzeka zenzeke zenzelwe zenziwa zenziwe zenzo zesicelo zesidima zesikolo zesiseko zesisele zesithuthi zesityalo zesizwe zeza zezehlo zezempilo zezendalo zezi zezicelo zezifo zezifundo zeziko zezikolo zezilwanyana zezimali zezindlu zezinto zezinye zeziphi zeziphumo zezithili zezithuthi zezityalo zezo zezokuba zezona zibaleka zibaluleke zibalulekileyo zibandakanya zibandakanywe zibangela zibangelwa zibe zibekho zibekwe zibenze zibethwe zibhaliswe zibhalwe zibiza zibonakala zibonelelo zibonisa zibonise zibonwa zifakwe zifana zifanele zifo zifumana zifumane zifumaneka zifumaneke zifuna zigonye zigonywe zigqiba zigqibo zigusha zihamba zihambelane zihlala zihlale zihlanganisa zihlasele zihlawulwa zihlawulwe zihlelwe zihlupheka zika zikamantyi zikarhulumente zikhalazo zikhankanywe zikhetha zikho zikhona zikhoyo zikhula zikhule zikhusela zikhusele zikhuselekile zikhuselwe zikhutshiwe ziko zikolo zikwazi zikwaziwa zikwenza zikwenze zilandelayo zilandelelana zilingana zilula zilungileyo zilungiselele zilungiswe zilwanyana zimbalwa zimbi zimbini zimele zimile zimiselwe zimpawu zinakho zinambuzane zinayo zincede zindlu zine zinendima zinga zingabi zingakwazi zingaphezulu zingaphi zingathengwa zingathi zingayenza zingazifumaneka zingene zingenise zingeniswe zingentla zingenza zingenziwa zingqina zini zinika zinike zinikezelwa zinikezelwe zinikwe zininzi zinjalo zinkulu zinokuba zinokuthi zintandathu zintathu zintle zinto zintoni zintshule zinyange ziphakamisa ziphambi ziphambili ziphela ziphezulu ziphi ziphinde zipho ziphume ziphumo ziqala ziqale ziqalisa ziqinisekise zisasazwe zisebenza zisebenze zisebenzisa zisebenziseke zisekwe zisele ziselwe zisenza zisenzeka zisetyenziselwa zisetyenziswa zisetyenziswe zisiya zisoloko zisondele zithatha zithathwe zithe zithelekelelwa zithengisela zithethwe zithi zithile zithili zithunyelwe zitsho zityalwe zitye zityebe zityiswe ziwe ziwenza ziya ziyakwazi ziyathengiswa ziye ziyenzayo ziza zizala zizale zizaliseka zizandla zizathu zize zizele zizenzo zizifo zizigulo zizikolo zizilwanyana zizinto ziziphi ziziphumo zizise zizityalo zizo zizonke zokholo zokhuseleko zokuba zokubambisa zokubiza zokucinga zokudibana zokufaka zokufaneleka zokufumana zokufunda zokufundisa zokugqibela zokugula zokuhamba zokuhlala zokuhlawula zokuhlola zokukhubazeka zokukhulelwa zokukhulisa zokukhuthaza zokukwenza zokulala zokulawula zokumitha zokunika zokunyanga zokuphanda zokuphila zokuqala zokuqinisekisa zokusasaza zokusebenza zokusebenzela zokusebenzisa zokuseka zokusela zokusingqongileyo zokuthenga zokuthintela zokuthutha zokutya zokutyela zokuzala zokuzalwa zokuziphatha zokwakha zokwenza zolawulo zolo zolu zoluntu zolwakhiwo zolwazi zolwimi zombane zombini zombona zombutho zombuzo zomhlaba zomhlaza zomntu zomntwana zomsebenzi zomthetho zomthi zomtshato zomzimba zona zoncedo zonke zonyaka zosana zosapho zosasazo dict-xh-20070206.orig/xh/VERSION0000644000175000017500000000001110562150025014400 0ustar dokodoko20060123 dict-xh-20070206.orig/xh/INSTALL0000644000175000017500000000077110562150025014376 0ustar dokodokoThe following are instructions to build the respective resources from the wordlist. Please follow the installation instructions in the INSTALL or README files under each resource. MySpell ------- To build a myspell dictionary, run make myspell This requires the myspell munch program, which is available in this package under dict/utils or in the original myspell source code. Ispell ------ make ispell Requires the the ispell utilities Aspell ----- make aspell Requires the aspell program dict-xh-20070206.orig/xh/ChangeLog0000644000175000017500000000067710562150025015124 0ustar dokodoko2006-01-23: Dwayne Bailey * Release 20060123 * wordlists/wordlist.openoffice.in: remove items that prevent aspell building 2006-01-23: Dwayne Bailey * wordlists/wordlist.scannell.in: sort * aspell/info.in: Change author to Zuza Software Foundation 2004-05-28: Dwayne Bailey * Wordlists: - Initial wordlist creation fron Kevin Scannel's web corpora builder dict-xh-20070206.orig/xh/COPYING0000644000175000017500000006347610562150025014413 0ustar dokodoko GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 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. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, 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 and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, 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 library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete 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 distribute a copy of this License along with the Library. 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 Library or any portion of it, thus forming a work based on the Library, 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) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, 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 Library, 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 Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you 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. If distribution of 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 satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be 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. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library 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. 9. 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 Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library 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 with this License. 11. 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 Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library 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 Library. 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. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library 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. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser 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 Library 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 Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, 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 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "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 LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. 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 LIBRARY 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 LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), 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 Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. 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) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! dict-xh-20070206.orig/xh/CREDITS0000644000175000017500000000036410562150025014363 0ustar dokodokoDwayne Bailey Creation of Xhosa package infrastrucure and general wordlist massaging Kevin Patrick Scannell wordlist.scanell.in a Xhosa wordlist from a Xhosa copora created by a web crawler dict-xh-20070206.orig/xh/Makefile0000644000175000017500000000117410562150025015003 0ustar dokodoko# this makefile is used to automate building of dictionaries # based on affix files etc... # if you need to adapt this Makefile for another language, # all you should have to do is change these variables. # if you need to change anything else then change it in Makefile.languages LANG=xh LANGNAME=Xhosa LANGNAMELOW=xhosa REGION=ZA REGIONNAME=South Africa # The input wordlists WORDLIST.IN=$(shell ls wordlists/wordlist.*.in) # Change these if your language is not defined in OpenOffice otherwise defaults # to the values you set in $LANG and $REGION #LANG_FAKE=it #REGION_FAKE=IT CHARSET=iso-8859-1 include ../utils/Makefile.language dict-xh-20070206.orig/xh/README0000644000175000017500000000205510562150025014222 0ustar dokodokoXhosa Wordlist -------------- Copyright (C) 2004 Zuza Software Foundation Copyright (C) 2004 Kevin Patrick Scannell The aim of this wordlist is to form the basis of dictionary lists required by spellcheckers, translation programs, etc. Please contribute your changes back to this wordlist to ensure that this resource grows for the benefit of all Zulu speakers. ----- This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA dict-xh-20070206.orig/utils/0000755000175000017500000000000010562173203014064 5ustar dokodokodict-xh-20070206.orig/utils/configure0000755000175000017500000000476110562150175016006 0ustar dokodoko#!/bin/sh # Note: future version will have a syntax something like # ./configure [OPTIONS] # Where OPTIONS is any of: # --help # --codes CODE1 ... # --sizes SIZE1 ... # --jargons JARGON1 ... # --extras EXTRA1 ... # --vars VAR1=VAL1 ... # which is why I warn when --vars is not used before VAR1=VAL1 # Avoid depending upon Character Ranges. # Taken from autoconf 2.50 cr_az='abcdefghijklmnopqrstuvwxyz' cr_AZ='ABCDEFGHIJKLMNOPQRSTUVWXYZ' cr_09='0123456789' cr_alnum=$cr_az$cr_AZ$cr_09 # also taken form autoconf case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac mode=none for option do case $option in --vars) mode=vars ;; *=*) if test $mode != vars; then echo "Warning: future versions will require --vars before variables are set" mode=vars fi # Taken from autoconf 2.50 envvar=`expr "x$option" : 'x\([^=]*\)='` optarg=`expr "x$option" : 'x[^=]*=\(.*\)'` # Reject names that are not valid shell variable names. expr "x$envvar" : ".*[^_$cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $envvar" >&2 { (exit 1); exit 1; }; } #echo $envvar $optarg optarg=`echo "$optarg" | sed "s/'/'\\\\\\\\''/g"` eval "$envvar='$optarg'" export $envvar ;; --help) echo "Usage: ./configure [--help | --vars VAR1=VAL1 ...]" echo " Note: Variables may also be set in the environment brefore running config" echo " Useful vars: ASPELL ASPELL_PARMS WORD_LIST_COMPRESS DESTDIR" exit 0 ;; *) echo "Error: unrecognized option $option"; exit 1 ;; esac done #echo $ASPELL if test x = "x$ASPELL" then ASPELL=aspell; fi if test x = "x$WORD_LIST_COMPRESS" then WORD_LIST_COMPRESS=word-list-compress; fi #echo $ASPELL echo $ECHO_N "Finding Dictionary file location ... $ECHO_C" dictdir=`$ASPELL dump config dict-dir` echo $dictdir echo $ECHO_N "Finding Data file location ... $ECHO_C" datadir=`$ASPELL dump config data-dir` echo $datadir echo "ASPELL = `which $ASPELL`" > Makefile echo "ASPELL_FLAGS = $ASPELL_FLAGS" >> Makefile echo "WORD_LIST_COMPRESS = `which $WORD_LIST_COMPRESS`" >> Makefile echo "DESTDIR = $DESTDIR" >> Makefile echo "dictdir = $dictdir" >> Makefile echo "datadir = $datadir" >> Makefile echo >> Makefile cat Makefile.pre >> Makefile dict-xh-20070206.orig/utils/README.myspell-mozilla-xpi0000644000175000017500000000044110562150175020675 0ustar dokodokoTo build a MySpell spellchacker packed as an XPI for Mozilla we need an install.js file. install.js.in - is a generic template file used by the spellchecker framework. This file was obtained from the British English spellchecker: http://downloads.mozdev.org/dictionaries/spell-en-GB.xpi dict-xh-20070206.orig/utils/install.js.in0000644000175000017500000000172510562150175016505 0ustar dokodoko// Spell checking dictionary for Mozilla Thunderbird // Script written by rockstiff. Dictionary from openoffice.org const APP_DISPLAY_NAME = "{LANGNAME} ({REGIONNAME}) dictionary"; const APP_NAME = "spell-{LANG}-{REGION}"; const APP_PACKAGE = "dictionaries.mozdev.org/spell-{LANG}-{REGION}"; const APP_VERSION = "{VERSION}"; var err = initInstall(APP_NAME, APP_PACKAGE, APP_VERSION); if (err==SUCCESS) { // Copy files to Components/myspell var myspell_folder = getFolder("Components", "myspell"); addFile(APP_NAME, "{LANG}-{REGION}.dic", myspell_folder, ""); addFile(APP_NAME, "{LANG}-{REGION}.aff", myspell_folder, ""); addFile(APP_NAME, "README-{LANG}-{REGION}.txt", myspell_folder, ""); err = performInstall(); if(err == SUCCESS || err == 999) { alert(APP_DISPLAY_NAME+" (v "+APP_VERSION+") has been succesfully installed.\n"); } else { alert("Installation failed. Error:" + err); cancelInstall(err); } } else { cancelInstall(err); } dict-xh-20070206.orig/utils/munch.c0000644000175000017500000005112010562150175015344 0ustar dokodoko/* Munch a word list and generate a smaller root word list with affixes*/ #include #include #include #include #include #include #include #include #ifdef __linux__ #include #include #endif #include #include "munch.h" int main(int argc, char** argv) { int i, j, k, n; int rl, p , nwl; int al; FILE * wrdlst; FILE * afflst; char *nword, *wf, *af; char as[(MAX_PREFIXES + MAX_SUFFIXES)]; char * ap; struct hentry * ep; struct hentry * ep1; struct affent * pfxp; struct affent * sfxp; /* first parse the command line options */ /* arg1 - wordlist, arg2 - affix file */ if (argv[1]) { wf = mystrdup(argv[1]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"munch word_list_file affix_file\n"); exit(1); } if (argv[2]) { af = mystrdup(argv[2]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"munch word_list_file affix_file\n"); exit(1); } /* open the affix file */ afflst = fopen(af,"r"); if (!afflst) { fprintf(stderr,"Error - could not open affix description file\n"); exit(1); } /* step one is to parse the affix file building up the internal affix data structures */ numpfx = 0; numsfx = 0; parse_aff_file(afflst); fclose(afflst); fprintf(stderr,"parsed in %d prefixes and %d suffixes\n",numpfx,numsfx); /* affix file is now parsed so create hash table of wordlist on the fly */ /* open the wordlist */ wrdlst = fopen(wf,"r"); if (!wrdlst) { fprintf(stderr,"Error - could not open word list file\n"); exit(1); } if (load_tables(wrdlst)) { fprintf(stderr,"Error building hash tables\n"); exit(1); } fclose(wrdlst); for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { numroots = 0; aff_chk(ep->word,strlen(ep->word)); if (numroots) { /* now there might be a number of combinations */ /* of prefixes and suffixes that might match this */ /* word. So how to choose? As a first shot look */ /* for the shortest remaining root word to */ /* to maximize the combinatorial power */ /* but be careful, do not REQUIRE a specific combination */ /* of a prefix and a suffix to generate the word since */ /* that violates the rule that the root word with just */ /* the prefix or just the suffix must also exist in the */ /* wordlist as well */ /* in fact because of the cross product issue, this not a */ /* simple choice since some combinations of previous */ /* prefixes and new suffixes may not be valid. */ /* The only way to know is to simply try them all */ rl = 1000; p = -1; for (j = 0; j < numroots; j++){ /* first collect the root word info and build up */ /* the potential new affix string */ nword = (roots[j].hashent)->word; nwl = strlen(nword); *as = '\0'; al = 0; ap = as; if (roots[j].prefix) *ap++ = (roots[j].prefix)->achar; if (roots[j].suffix) *ap++ = (roots[j].suffix)->achar; if ((roots[j].hashent)->affstr) { strcpy(ap,(roots[j].hashent)->affstr); } else { *ap = '\0'; } al =strlen(as); /* now expand the potential affix string to generate */ /* all legal words and make sure they all exist in the */ /* word list */ numwords = 0; wlist[numwords].word = mystrdup(nword); wlist[numwords].pallow = 0; numwords++; n = 0; if (al) expand_rootword(nword,nwl,as,al); for (k=0; kkeep = 1; if (pfxp != NULL) add_affix_char(ep1,pfxp->achar); if (sfxp != NULL) add_affix_char(ep1,sfxp->achar); } else { ep->keep = 1; } } else { ep->keep = 1; } } } /* now output only the words to keep along with affixes info */ /* first count how many words that is */ k = 0; for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { if (ep->keep > 0) k++; } } fprintf(stdout,"%d\n",k); for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { if (ep->keep > 0) { if (ep->affstr != NULL) { fprintf(stdout,"%s/%s\n",ep->word,ep->affstr); } else { fprintf(stdout,"%s\n",ep->word); } } } } return 0; } void parse_aff_file(FILE * afflst) { int i, j; int numents = 0; char achar = '\0'; short ff=0; char ft; struct affent * ptr= NULL; struct affent * nptr= NULL; char * line = malloc(MAX_LN_LEN); while (fgets(line,MAX_LN_LEN,afflst)) { mychomp(line); ft = ' '; fprintf(stderr,"parsing line: %s\n",line); if (strncmp(line,"PFX",3) == 0) ft = 'P'; if (strncmp(line,"SFX",3) == 0) ft = 'S'; if (ft != ' ') { char * tp = line; char * piece; i = 0; ff = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: break; case 1: { achar = *piece; break; } case 2: { if (*piece == 'Y') ff = XPRODUCT; break; } case 3: { numents = atoi(piece); ptr = malloc(numents * sizeof(struct affent)); ptr->achar = achar; ptr->xpflg = ff; fprintf(stderr,"parsing %c entries %d\n",achar,numents); break; } default: break; } i++; } free(piece); } /* now parse all of the sub entries*/ nptr = ptr; for (j=0; j < numents; j++) { fgets(line,MAX_LN_LEN,afflst); mychomp(line); tp = line; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: { if (nptr != ptr) { nptr->achar = ptr->achar; nptr->xpflg = ptr->xpflg; } break; } case 1: break; case 2: { nptr->strip = mystrdup(piece); nptr->stripl = strlen(nptr->strip); if (strcmp(nptr->strip,"0") == 0) { free(nptr->strip); nptr->strip=mystrdup(""); nptr->stripl = 0; } break; } case 3: { nptr->appnd = mystrdup(piece); nptr->appndl = strlen(nptr->appnd); if (strcmp(nptr->appnd,"0") == 0) { free(nptr->appnd); nptr->appnd=mystrdup(""); nptr->appndl = 0; } break; } case 4: { encodeit(nptr,piece);} fprintf(stderr, " affix: %s %d, strip: %s %d\n",nptr->appnd, nptr->appndl,nptr->strip,nptr->stripl); default: break; } i++; } free(piece); } nptr++; } if (ft == 'P') { ptable[numpfx].aep = ptr; ptable[numpfx].num = numents; fprintf(stderr,"ptable %d num is %d\n",numpfx,ptable[numpfx].num); numpfx++; } else { stable[numsfx].aep = ptr; stable[numsfx].num = numents; fprintf(stderr,"stable %d num is %d\n",numsfx,stable[numsfx].num); numsfx++; } ptr = NULL; nptr = NULL; numents = 0; achar='\0'; } } free(line); } void encodeit(struct affent * ptr, char * cs) { int nc; int neg; int grp; unsigned char c; int n; int ec; int nm; int i, j, k; unsigned char mbr[MAX_WD_LEN]; /* now clear the conditions array */ for (i=0;iconds[i] = (unsigned char) 0; /* now parse the string to create the conds array */ nc = strlen(cs); neg = 0; /* complement indicator */ grp = 0; /* group indicator */ n = 0; /* number of conditions */ ec = 0; /* end condition indicator */ nm = 0; /* number of member in group */ i = 0; if (strcmp(cs,".")==0) { ptr->numconds = 0; return; } while (i < nc) { c = *((unsigned char *)(cs + i)); if (c == '[') { grp = 1; c = 0; } if ((grp == 1) && (c == '^')) { neg = 1; c = 0; } if (c == ']') { ec = 1; c = 0; } if ((grp == 1) && (c != 0)) { *(mbr + nm) = c; nm++; c = 0; } if (c != 0) { ec = 1; } if (ec) { if (grp == 1) { if (neg == 0) { for (j=0;jconds[k] = ptr->conds[k] | (1 << n); } } else { for (j=0;jconds[j] = ptr->conds[j] | (1 << n); for (j=0;jconds[k] = ptr->conds[k] & ~(1 << n); } } neg = 0; grp = 0; nm = 0; } else { /* not a group so just set the proper bit for this char */ /* but first handle special case of . inside condition */ if (c == '.') { /* wild card character so set them all */ for (j=0;jconds[j] = ptr->conds[j] | (1 << n); } else { ptr->conds[(unsigned int) c] = ptr->conds[(unsigned int)c] | (1 << n); } } n++; ec = 0; } i++; } ptr->numconds = n; return; } /* search for a prefix */ void pfx_chk (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; struct hentry * hent; unsigned char * cp; int i; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { tlen = len - aent->appndl; if (tlen > 0 && (aent->appndl == 0 || strncmp(aent->appnd, word, aent->appndl) == 0) && tlen + aent->stripl >= aent->numconds) { if (aent->stripl) strcpy (tword, aent->strip); strcpy((tword + aent->stripl), (word + aent->appndl)); /* now go through the conds and make sure they all match */ cp = (unsigned char *) tword; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { tlen += aent->stripl; if ((hent = lookup(tword)) != NULL) { if (numroots < MAX_ROOTS) { roots[numroots].hashent = hent; roots[numroots].prefix = aent; roots[numroots].suffix = NULL; numroots++; } } } } } } void suf_chk (const char * word, int len, struct affent * ep, int num, struct affent * pfxent, int cpflag) { struct affent * aent; int tlen; int cond; struct hentry * hent; unsigned char * cp; int i; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { if ((cpflag & XPRODUCT) != 0 && (aent->xpflg & XPRODUCT) == 0) continue; tlen = len - aent->appndl; if (tlen > 0 && (aent->appndl == 0 || strcmp(aent->appnd, (word + tlen)) == 0) && tlen + aent->stripl >= aent->numconds) { strcpy (tword, word); cp = (unsigned char *) (tword + tlen); if (aent->stripl) { strcpy ((char *)cp, aent->strip); tlen += aent->stripl; cp = (unsigned char *)(tword + tlen); } else *cp = '\0'; for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { if ((hent = lookup(tword)) != NULL) { if (numroots < MAX_ROOTS) { roots[numroots].hashent = hent; roots[numroots].prefix = pfxent; roots[numroots].suffix = aent; numroots++; } } } } } } void aff_chk (const char * word, int len) { int i; int j; int nh=0; char * nword; int nwl; if (len < 4) return; for (i=0; i < numpfx; i++) { pfx_chk(word, len, ptable[i].aep, ptable[i].num); } nh = numroots; if (nh > 0) { for (j=0;jxpflg & XPRODUCT) { nword = mystrdup((roots[j].hashent)->word); nwl = strlen(nword); for (i=0; i < numsfx; i++) { suf_chk(nword,nwl,stable[i].aep, stable[i].num, roots[j].prefix, XPRODUCT); } free(nword); } } } for (i=0; i < numsfx; i++) { suf_chk(word, len, stable[i].aep, stable[i].num, NULL, 0); } } /* lookup a root word in the hashtable */ struct hentry * lookup(const char *word) { struct hentry * dp; dp = &tableptr[hash(word)]; if (dp->word == NULL) return NULL; for ( ; dp != NULL; dp = dp->next) { if (strcmp(word,dp->word) == 0) return dp; } return NULL; } /* add a word to the hash table */ int add_word(char * word) { int i; struct hentry * dp; struct hentry * hp = (struct hentry *) malloc (sizeof(struct hentry)); hp->word = word; hp->affstr = NULL; hp->keep = 0; hp->next = NULL; i = hash(word); dp = &tableptr[i]; if (dp->word == NULL) { *dp = *hp; free(hp); } else { while (dp->next != NULL) dp=dp->next; dp->next = hp; } return 0; } /* load a word list and build a hash table on the fly */ int load_tables(FILE * wdlst) { char * ap; char ts[MAX_LN_LEN]; /* first read the first line of file to get hash table size */ if (! fgets(ts, MAX_LN_LEN-1,wdlst)) return 2; mychomp(ts); tablesize = atoi(ts); tablesize = tablesize + 5; if ((tablesize %2) == 0) tablesize++; /* allocate the hash table */ tableptr = (struct hentry *) calloc(tablesize, sizeof(struct hentry)); if (! tableptr) return 3; /* loop thorugh all words on much list and add to hash * table and store away word and affix strings in tmpfile */ while (fgets(ts,MAX_LN_LEN-1,wdlst)) { mychomp(ts); ap = mystrdup(ts); add_word(ap); } return 0; } /* the hash function is a simple load and rotate * algorithm borrowed */ int hash(const char * word) { int i; long hv = 0; for (i=0; i < 4 && *word != 0; i++) hv = (hv << 8) | (*word++); while (*word != 0) { ROTATE(hv,ROTATE_LEN); hv ^= (*word++); } return (unsigned long) hv % tablesize; } void add_affix_char(struct hentry * ep, char ac) { int al; int i; char * tmp; if (ep->affstr == NULL) { ep->affstr = (char *) malloc(2*sizeof(char)); *(ep->affstr) = ac; *((ep->affstr)+1) = '\0'; return; } al = strlen(ep->affstr); for (i=0; i< al; i++) if (ac == (ep->affstr)[i]) return; tmp = calloc((al+2),sizeof(char)); memcpy(tmp,ep->affstr,(al+1)); *(tmp+al) = ac; *(tmp+al+1)='\0'; free(ep->affstr); ep->affstr = tmp; return; } /* add a prefix to word */ void pfx_add (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; unsigned char * cp; int i; char * pp; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { /* now make sure all conditions match */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) word; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { /* we have a match so add prefix */ tlen = 0; if (aent->appndl) { strcpy(tword,aent->appnd); tlen += aent->appndl; } pp = tword + tlen; strcpy(pp, (word + aent->stripl)); tlen = tlen + len - aent->stripl; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = 0; numwords++; } } } } } /* add a suffix to a word */ void suf_add (const char * word, int len, struct affent * ep, int num) { struct affent * aent; int tlen; int cond; unsigned char * cp; int i; char tword[MAX_WD_LEN]; char * pp; for (aent = ep, i = num; i > 0; aent++, i--) { /* if conditions hold on root word * then strip off strip string and add suffix */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) (word + len); for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { /* we have a matching condition */ strcpy(tword,word); tlen = len; if (aent->stripl) { tlen -= aent->stripl; } pp = (tword + tlen); if (aent->appndl) { strcpy (pp, aent->appnd); tlen += aent->stripl; } else *pp = '\0'; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = (aent->xpflg & XPRODUCT); numwords++; } } } } } int expand_rootword(const char * ts, int wl, const char * ap, int al) { int i; int j; int nh=0; int nwl; for (i=0; i < numsfx; i++) { if (strchr(ap,(stable[i].aep)->achar)) { suf_add(ts, wl, stable[i].aep, stable[i].num); } } nh = numwords; if (nh > 1) { for (j=1;jachar)) { if ((ptable[i].aep)->xpflg & XPRODUCT) { nwl = strlen(wlist[j].word); pfx_add(wlist[j].word, nwl, ptable[i].aep, ptable[i].num); } } } } } } for (i=0; i < numpfx; i++) { if (strchr(ap,(ptable[i].aep)->achar)) { pfx_add(ts, wl, ptable[i].aep, ptable[i].num); } } return 0; } /* strip strings into token based on single char delimiter * acts like strsep() but only uses a delim char and not * a delim string */ char * mystrsep(char ** stringp, const char delim) { char * rv = NULL; char * mp = *stringp; int n = strlen(mp); if (n > 0) { char * dp = (char *)memchr(mp,(int)((unsigned char)delim),n); if (dp) { int nc; *stringp = dp+1; nc = (int)((unsigned long)dp - (unsigned long)mp); rv = (char *) malloc(nc+1); memcpy(rv,mp,nc); *(rv+nc) = '\0'; return rv; } else { rv = (char *) malloc(n+1); memcpy(rv, mp, n); *(rv+n) = '\0'; *stringp = mp + n; return rv; } } return NULL; } char * mystrdup(const char * s) { char * d = NULL; if (s) { int sl = strlen(s); d = (char *) malloc(((sl+1) * sizeof(char))); if (d) memcpy(d,s,((sl+1)*sizeof(char))); } return d; } void mychomp(char * s) { int k = strlen(s); if (k > 0) *(s+k-1) = '\0'; if ((k > 1) && (*(s+k-2) == '\r')) *(s+k-2) = '\0'; } dict-xh-20070206.orig/utils/README0000644000175000017500000001036710562150175014756 0ustar dokodokoThis directory contains code from myspell relevant to processing dictionaries (currently just the munch and unmunch utilities). The code was taken directly from http://lingucomponent.openoffice.org/MySpell-3.zip We have copied it here to make building dictionaries easier The README from myspell follows ; for more information see Makefile You can run munch or unmunch to get command line help -------------------------------------------------- MySpell is a simple spell checker that uses affix compression and is modelled after the spell checker ispell. MySpell was written to explore how affix compression can be implemented. The Main features of MySpell are: 1. written in C++ to make it easier to interface with Pspell, OpenOffice, AbiWord, etc 2. it is stateless, uses no static variables and should be completely reentrant with almost no ifdefs 3. it tries to be as compatible with ispell to the extent it can. It can read slightly modified versions of munched ispell dictionaries (and it comes with a munched english wordlist borrowed from Kevin Atkinson's excellent Aspell. 4. it uses a heavily modified aff file format that can be derived from ispell aff files but uses the iso-8859-X character sets only 5. it is simple with *lots* of comments that describes how the affixes are stored and tested for (based on the approach used by ispell). 6. it supports improved suggestions with replacement tables and ngram-scoring based mechanisms in addition to the main suggestion mechanisms 7. like ispell it has a BSD license (and no advertising clause) But ... it has *no* support for adding words to a personal dictionary, *no* support for converting between various text encodings, and *no* command line interface (it is purely meant to be a library). It can not (in any way) replace all of the functionality of ispell or aspell/pspell. It is meant as a learning tool for understanding affix compression and for being used by front ends like OpenOffice, Abiword, etc. MySpell has been tested under Linux and Solaris and has the world's simplest Makefile and no configure support. It does come with a simple example program that spell checks some words and returns suggestions. To build a static library and an example program under Linux simply type: tar -zxvf myspell.tar.gz cd myspell2 make To run the example program: ./example ./en_US.aff ./en_US.dic checkme.lst Please play around with it and let me know what you think. Developer Credits: Special credit and thanks go to ispell's creator Geoff Kuenning. Ispell affix compression code was used as the basis for the affix code used in MySpell. Specifically Geoff's use of a conds[] array that makes it easy to check if the conditions required for a particular affix are present was very ingenious! Kudos to Geoff. Very nicely done. BTW: ispell is available under a BSD style license from Geoff Kuennings ispell website: http://www.cs.ucla.edu/ficus-members/geoff/ispell.html The Original MySpell code was written by Kevin Hendricks and released under a BSD license. An almost complete rewrite of MySpell for use by the Mozilla project has been developed by David Einstein (Deinst@world.std.com). David and I are now working on parallel development tracks to help our respective projects (Mozilla and OpenOffice.org and we will maintain full affix file and dictionary file compatibility and work on merging our versions of MySpell back into a single tree. David has been a significant help in improving MySpell. La'szlo' Ne'meth who is the author of the Hungarian dictionary and who developed and contributed the code to support compound words in MySpell and fixed numerous problems with the encoding case conversion tables. He also introduced the idea and is the author of the code to support replacement tables which greatly improved suggestions. Davide Prina , Giuseppe Modugno , Gianluca Turconi all from the it_IT OpenOffice.org team for a detailed code review of MySpell and fixes for bugs, leaks, and speedup improvements. Special Thanks to all others who have either contributed ideas or testing for MySpell Thanks, Kevin Hendricks kevin.hendricks@sympatico.ca dict-xh-20070206.orig/utils/unmunch.c0000644000175000017500000003021110562150175015705 0ustar dokodoko/* Un-munch a root word list with affix tags * to recreate the original word list */ #include #include #include #include #include #include #include #include #ifdef __linux__ #include #include #endif #include #include "unmunch.h" int main(int argc, char** argv) { int i; int al, wl; FILE * wrdlst; FILE * afflst; char *wf, *af; char * ap; char ts[MAX_LN_LEN]; /* first parse the command line options */ /* arg1 - munched wordlist, arg2 - affix file */ if (argv[1]) { wf = mystrdup(argv[1]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"unmunch dic_file affix_file\n"); exit(1); } if (argv[2]) { af = mystrdup(argv[2]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"unmunch dic_file affix_file\n"); exit(1); } /* open the affix file */ afflst = fopen(af,"r"); if (!afflst) { fprintf(stderr,"Error - could not open affix description file\n"); exit(1); } /* step one is to parse the affix file building up the internal affix data structures */ numpfx = 0; numsfx = 0; parse_aff_file(afflst); fclose(afflst); fprintf(stderr,"parsed in %d prefixes and %d suffixes\n",numpfx,numsfx); /* affix file is now parsed so create hash table of wordlist on the fly */ /* open the wordlist */ wrdlst = fopen(wf,"r"); if (!wrdlst) { fprintf(stderr,"Error - could not open word list file\n"); exit(1); } /* skip over the hash table size */ if (! fgets(ts, MAX_LN_LEN-1,wrdlst)) return 2; mychomp(ts); while (fgets(ts,MAX_LN_LEN-1,wrdlst)) { mychomp(ts); /* split each line into word and affix char strings */ ap = strchr(ts,'/'); if (ap) { *ap = '\0'; ap++; al = strlen(ap); } else { al = 0; ap = NULL; } wl = strlen(ts); numwords = 0; wlist[numwords].word = mystrdup(ts); wlist[numwords].pallow = 0; numwords++; if (al) expand_rootword(ts,wl,ap,al); for (i=0; i < numwords; i++) { fprintf(stdout,"%s\n",wlist[i].word); free(wlist[i].word); wlist[i].word = NULL; wlist[i].pallow = 0; } } fclose(wrdlst); return 0; } void parse_aff_file(FILE * afflst) { int i, j; int numents=0; char achar='\0'; short ff=0; char ft; struct affent * ptr= NULL; struct affent * nptr= NULL; char * line = malloc(MAX_LN_LEN); while (fgets(line,MAX_LN_LEN,afflst)) { mychomp(line); ft = ' '; fprintf(stderr,"parsing line: %s\n",line); if (strncmp(line,"PFX",3) == 0) ft = 'P'; if (strncmp(line,"SFX",3) == 0) ft = 'S'; if (ft != ' ') { char * tp = line; char * piece; ff = 0; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: break; case 1: { achar = *piece; break; } case 2: { if (*piece == 'Y') ff = XPRODUCT; break; } case 3: { numents = atoi(piece); ptr = malloc(numents * sizeof(struct affent)); ptr->achar = achar; ptr->xpflg = ff; fprintf(stderr,"parsing %c entries %d\n",achar,numents); break; } default: break; } i++; } free(piece); } /* now parse all of the sub entries*/ nptr = ptr; for (j=0; j < numents; j++) { fgets(line,MAX_LN_LEN,afflst); mychomp(line); tp = line; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: { if (nptr != ptr) { nptr->achar = ptr->achar; nptr->xpflg = ptr->xpflg; } break; } case 1: break; case 2: { nptr->strip = mystrdup(piece); nptr->stripl = strlen(nptr->strip); if (strcmp(nptr->strip,"0") == 0) { free(nptr->strip); nptr->strip=mystrdup(""); nptr->stripl = 0; } break; } case 3: { nptr->appnd = mystrdup(piece); nptr->appndl = strlen(nptr->appnd); if (strcmp(nptr->appnd,"0") == 0) { free(nptr->appnd); nptr->appnd=mystrdup(""); nptr->appndl = 0; } break; } case 4: { encodeit(nptr,piece);} fprintf(stderr, " affix: %s %d, strip: %s %d\n",nptr->appnd, nptr->appndl,nptr->strip,nptr->stripl); default: break; } i++; } free(piece); } nptr++; } if (ft == 'P') { ptable[numpfx].aep = ptr; ptable[numpfx].num = numents; fprintf(stderr,"ptable %d num is %d flag %c\n",numpfx,ptable[numpfx].num,ptr->achar); numpfx++; } else { stable[numsfx].aep = ptr; stable[numsfx].num = numents; fprintf(stderr,"stable %d num is %d flag %c\n",numsfx,stable[numsfx].num,ptr->achar); numsfx++; } ptr = NULL; nptr = NULL; numents = 0; achar='\0'; } } free(line); } void encodeit(struct affent * ptr, char * cs) { int nc; int neg; int grp; unsigned char c; int n; int ec; int nm; int i, j, k; unsigned char mbr[MAX_WD_LEN]; /* now clear the conditions array */ for (i=0;iconds[i] = (unsigned char) 0; /* now parse the string to create the conds array */ nc = strlen(cs); neg = 0; /* complement indicator */ grp = 0; /* group indicator */ n = 0; /* number of conditions */ ec = 0; /* end condition indicator */ nm = 0; /* number of member in group */ i = 0; if (strcmp(cs,".")==0) { ptr->numconds = 0; return; } while (i < nc) { c = *((unsigned char *)(cs + i)); if (c == '[') { grp = 1; c = 0; } if ((grp == 1) && (c == '^')) { neg = 1; c = 0; } if (c == ']') { ec = 1; c = 0; } if ((grp == 1) && (c != 0)) { *(mbr + nm) = c; nm++; c = 0; } if (c != 0) { ec = 1; } if (ec) { if (grp == 1) { if (neg == 0) { for (j=0;jconds[k] = ptr->conds[k] | (1 << n); } } else { for (j=0;jconds[j] = ptr->conds[j] | (1 << n); for (j=0;jconds[k] = ptr->conds[k] & ~(1 << n); } } neg = 0; grp = 0; nm = 0; } else { /* not a group so just set the proper bit for this char */ /* but first handle special case of . inside condition */ if (c == '.') { /* wild card character so set them all */ for (j=0;jconds[j] = ptr->conds[j] | (1 << n); } else { ptr->conds[(unsigned int) c] = ptr->conds[(unsigned int)c] | (1 << n); } } n++; ec = 0; } i++; } ptr->numconds = n; return; } /* add a prefix to word */ void pfx_add (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; unsigned char * cp; int i; char * pp; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { /* now make sure all conditions match */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) word; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { /* we have a match so add prefix */ tlen = 0; if (aent->appndl) { strcpy(tword,aent->appnd); tlen += aent->appndl; } pp = tword + tlen; strcpy(pp, (word + aent->stripl)); tlen = tlen + len - aent->stripl; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = 0; numwords++; } } } } } /* add a suffix to a word */ void suf_add (const char * word, int len, struct affent * ep, int num) { struct affent * aent; int tlen; int cond; unsigned char * cp; int i; char tword[MAX_WD_LEN]; char * pp; for (aent = ep, i = num; i > 0; aent++, i--) { /* if conditions hold on root word * then strip off strip string and add suffix */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) (word + len); for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { /* we have a matching condition */ strcpy(tword,word); tlen = len; if (aent->stripl) { tlen -= aent->stripl; } pp = (tword + tlen); if (aent->appndl) { strcpy (pp, aent->appnd); tlen += aent->stripl; } else *pp = '\0'; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = (aent->xpflg & XPRODUCT); numwords++; } } } } } int expand_rootword(const char * ts, int wl, const char * ap, int al) { int i; int j; int nh=0; int nwl; for (i=0; i < numsfx; i++) { if (strchr(ap,(stable[i].aep)->achar)) { suf_add(ts, wl, stable[i].aep, stable[i].num); } } nh = numwords; if (nh > 1) { for (j=1;jachar)) { if ((ptable[i].aep)->xpflg & XPRODUCT) { nwl = strlen(wlist[j].word); pfx_add(wlist[j].word, nwl, ptable[i].aep, ptable[i].num); } } } } } } for (i=0; i < numpfx; i++) { if (strchr(ap,(ptable[i].aep)->achar)) { pfx_add(ts, wl, ptable[i].aep, ptable[i].num); } } return 0; } /* strip strings into token based on single char delimiter * acts like strsep() but only uses a delim char and not * a delim string */ char * mystrsep(char ** stringp, const char delim) { char * rv = NULL; char * mp = *stringp; int n = strlen(mp); if (n > 0) { char * dp = (char *)memchr(mp,(int)((unsigned char)delim),n); if (dp) { int nc; *stringp = dp+1; nc = (int)((unsigned long)dp - (unsigned long)mp); rv = (char *) malloc(nc+1); memcpy(rv,mp,nc); *(rv+nc) = '\0'; return rv; } else { rv = (char *) malloc(n+1); memcpy(rv, mp, n); *(rv+n) = '\0'; *stringp = mp + n; return rv; } } return NULL; } char * mystrdup(const char * s) { char * d = NULL; if (s) { int sl = strlen(s); d = (char *) malloc(((sl+1) * sizeof(char))); if (d) memcpy(d,s,((sl+1)*sizeof(char))); } return d; } void mychomp(char * s) { int k = strlen(s); if (k > 0) *(s+k-1) = '\0'; if ((k > 1) && (*(s+k-2) == '\r')) *(s+k-2) = '\0'; } dict-xh-20070206.orig/utils/Makefile.language0000644000175000017500000001543510562150175017321 0ustar dokodoko# this makefile is used to automate building of dictionaries # based on affix files etc... # if you need to adapt this Makefile for another language, # all you should have to do is change these variables. # if you need to change anything else, please submit it back # to the project so other people can benefit # The version will automatically be read in from the VERSION file VERSION=$(shell cat VERSION) VERSION_ASPELL=$(shell cat ../VERSION.aspell) # Only set these if the user has not overridden them in the language Makefile LANG_FAKE?=$(LANG) REGION_FAKE?=$(REGION) .PHONY: all clean clean-myspell clean-ispell clean-aspell clean-autocorr ispell myspell aspell count check wordlist autocorr TARGETS_MYSPELL=myspell/wordlist.$(CHARSET) myspell/pack-$(LANG)-$(REGION)-$(VERSION).zip myspell/$(LANG)_$(REGION).zip myspell/$(LANG)_$(REGION).dic myspell/spell.txt myspell/VERSION_$(LANG)_$(REGION).txt myspell/install.js myspell/spell-$(LANG)-$(REGION).xpi myspell/$(LANG)-$(REGION).dic myspell/$(LANG)-$(REGION).aff myspell/README-$(LANG)-$(REGION).txt TARGETS_ISPELL=ispell/$(LANGNAMELOW).hash ispell/$(LANGNAMELOW)-ispell-$(VERSION).tar.bz2 ispell/wordlist.$(CHARSET) ispell/wordlist.$(CHARSET).cnt ispell/wordlist.$(CHARSET).stat TARGET_ASPELL=aspell/wordlist.$(CHARSET) aspell/$(LANG).rws aspell/aspell-$(LANG)-$(VERSION_ASPELL)-$(VERSION).tar.bz2 aspell/proc aspell/configure aspell/$(LANG).cwl aspell/info aspell/Makefile aspell/Makefile.pre aspell/$(LANG).* aspell/*.alias aspell/COPYING aspell/README aspell/aspell-$(LANG)-$(VERSION_ASPELL)-$(VERSION) TARGET_AUTOCORR=acor/acor_$(LANG)-$(REGION).dat* TARGET_WORDLISTS=wordlists/wordlist.$(CHARSET) $(WORDLIST.CHARSET) all: myspell aspell wordlist acor clean: clean-myspell clean-ispell clean-aspell clean-wordlists clean-acor # Statistics count: wordlists/wordlist.$(CHARSET) $(WORDLIST.IN) @echo "Comments removed" @for f in $^; do \ echo -n "$$f "; \ egrep -v "^#" $$f | sort --unique | wc -l; \ done @echo @echo "Comments and words with whitespace removed" @for f in $^; do \ echo -n "$$f "; \ egrep -v "(^#| )" $$f | sort --unique | wc -l; \ done @echo @echo "Comments removed words with whitespace split" @for f in $^; do \ echo -n "$$f "; \ egrep -v "^#" $$f | tr " " "\n" | sort --unique | wc -l; \ done # Checks check: wordlists/wordlist.$(CHARSET) @echo First line is existing TRY sequence. Second line is new TRY sequence. @egrep "^TRY" myspell/$(LANG)_$(REGION).aff | sed "s/TRY //g" @LC_ALL=en_US.utf8 LANG=en_US.utf8 LANGUAGE=en_US.utf8 ../../src/wordlist/letter-frequency.py -i $^ -len_US # General WORDLIST.CHARSET=$(patsubst %.in, %.$(CHARSET), $(WORDLIST.IN)) %.$(CHARSET): %.in iconv -f utf-8 -t $(CHARSET) < $< >$@ wordlists/wordlist.$(CHARSET): $(WORDLIST.CHARSET) cat $^ | egrep -v "^#|^$$" | sort --unique > $@ wordlists/wordlist-$(LANG)-$(VERSION).zip: $(WORDLIST.IN) wordlists/wordlist.$(CHARSET) zip -j $@ $^ wordlist: wordlists/wordlist-$(LANG)-$(VERSION).zip clean-wordlists: rm -rf $(TARGET_WORDLISTS) # MySpell rules clean-myspell: rm -f $(TARGETS_MYSPELL) # make myspell will make the required zip files myspell: myspell/myspell-$(LANG)_$(REGION)-$(VERSION).zip myspell/myspell-pack-$(LANG)-$(REGION)-$(VERSION).zip myspell/spell-$(LANG)-$(REGION)-$(VERSION).xpi # this is a package that is usable for offline installation myspell/myspell-pack-$(LANG)-$(REGION)-$(VERSION).zip: myspell/myspell-$(LANG)_$(REGION)-$(VERSION).zip myspell/spell.txt zip -j $@ $^ # we autogenerate the index file... myspell/spell.txt: echo '$(LANG_FAKE),$(REGION_FAKE),$(LANG_FAKE)_$(REGION_FAKE),$(LANGNAME) ($(REGIONNAME)),myspell-$(LANG)_$(REGION)-$(VERSION).zip' >$@ # this is the standard myspell package myspell/myspell-$(LANG)_$(REGION)-$(VERSION).zip: myspell/$(LANG)_$(REGION).dic myspell/$(LANG)_$(REGION).aff myspell/README_$(LANG)_$(REGION).txt myspell/VERSION_$(LANG)_$(REGION).txt zip -j $@ $^ # make sure the VERSION file name doesn't conflict with other packages myspell/VERSION_$(LANG)_$(REGION).txt: VERSION cp -p $^ $@ # myspell/ispell don't like the header, or words with spaces in them myspell/wordlist.$(CHARSET): wordlists/wordlist.$(CHARSET) egrep -v '(^#| )' <$< >$@ # this does the work of converting a wordlist into a myspell dictionary # it can take a while # the munch utility is located under the dict/utils project myspell/$(LANG)_$(REGION).dic: myspell/wordlist.$(CHARSET) myspell/$(LANG)_$(REGION).aff ../utils/munch ../utils/munch myspell/wordlist.$(CHARSET) myspell/$(LANG)_$(REGION).aff >$@ # The following are for building a Mozilla XPI of the spellchecker # Customise the install.js myspell/install.js: ../utils/install.js.in sed "s/{LANG}/$(LANG)/; s/{REGION}/$(REGION)/; s/{LANGNAME}/$(LANGNAME)/; s/{REGIONNAME}/$(REGIONNAME)/; s/{VERSION}/$(VERSION)/" < $< > $@ myspell/README-$(LANG)-$(REGION).txt: myspell/README_$(LANG)_$(REGION).txt cp $^ $@ myspell/$(LANG)-$(REGION).dic: myspell/$(LANG)_$(REGION).dic cp $^ $@ myspell/$(LANG)-$(REGION).aff: myspell/$(LANG)_$(REGION).aff cp $^ $@ myspell/spell-$(LANG)-$(REGION)-$(VERSION).xpi: myspell/$(LANG)-$(REGION).aff myspell/$(LANG)-$(REGION).dic myspell/README-$(LANG)-$(REGION).txt myspell/install.js zip -j $@ $^ # Ispell Rules clean-ispell: rm -f $(TARGETS_ISPELL) ispell/$(LANGNAMELOW).hash: ispell/wordlist.$(CHARSET) ispell/$(LANGNAMELOW).aff buildhash $^ $@ ispell/$(LANGNAMELOW)-ispell-$(VERSION).tar.bz2: ispell/$(LANGNAMELOW).hash ispell/$(LANGNAMELOW).aff ispell/README tar cvjf $@ $^ ispell: ispell/$(LANGNAMELOW)-ispell-$(VERSION).tar.bz2 ispell/wordlist.$(CHARSET): wordlists/wordlist.$(CHARSET) egrep -v '(^#| )' <$< >$@ # Aspell Rules aspell: aspell/aspell-$(LANG)-$(VERSION_ASPELL)-$(VERSION).tar.bz2 clean-aspell: rm -rf $(TARGET_ASPELL) aspell/$(LANG).cwl: aspell/wordlist.$(CHARSET) (export LC_COLLATE=C; cat $< | sort -u | word-list-compress compress > $@) aspell/proc: ../utils/proc cp -p $< $@ aspell/configure: ../utils/configure cp -p $< $@ aspell/wordlist.$(CHARSET): wordlists/wordlist.$(CHARSET) cat $< | egrep -v '(^#| |\.|-$$|[0-9]|/|=$$)' | LC_COLLATE=C sort --unique >$@ aspell/aspell-$(LANG)-$(VERSION_ASPELL)-$(VERSION).tar.bz2: aspell/$(LANG).cwl aspell/configure aspell/Makefile.pre aspell/Copyright cd aspell; ./configure; make dist && make distcheck && rm -rf aspell-$(LANG)-$(VERSION_ASPELL)-$(VERSION) aspell/info: aspell/info.in ../VERSION.aspell VERSION sed "s/{VERSION}/$(VERSION_ASPELL)\-$(VERSION)/" < $< > $@ aspell/Makefile.pre: aspell/proc aspell/info (cd aspell; export LC_COLLATE=C; ./proc create) # Autocorrect rules # Naming format for OpenOffice.org 2 acor/acor_$(LANG)-$(REGION).dat: acor/DocumentList.csv acor/SentenceExceptList.csv acor/WordExceptList.csv (cd acor; ../../utils/csv2acor.py $(@F)) acor: acor/acor_$(LANG)-$(REGION).dat autocorrect: acor clean-acor: rm -rf $(TARGET_AUTOCORR) dict-xh-20070206.orig/utils/munch.h0000644000175000017500000000461610562150175015361 0ustar dokodoko/* munch header file */ #define MAX_LN_LEN 200 #define MAX_WD_LEN 200 #define MAX_PREFIXES 256 #define MAX_SUFFIXES 256 #define MAX_ROOTS 20 #define MAX_WORDS 5000 #define ROTATE_LEN 5 #define ROTATE(v,q) \ (v) = ((v) << (q)) | (((v) >> (32 - q)) & ((1 << (q))-1)); #define SET_SIZE 256 #define XPRODUCT (1 << 0) /* the affix table entry */ struct affent { char * appnd; char * strip; short appndl; short stripl; char achar; char xpflg; short numconds; char conds[SET_SIZE]; }; struct affixptr { struct affent * aep; int num; }; /* the prefix and suffix table */ int numpfx; /* Number of prefixes in table */ int numsfx; /* Number of suffixes in table */ /* the prefix table */ struct affixptr ptable[MAX_PREFIXES]; /* the suffix table */ struct affixptr stable[MAX_SUFFIXES]; /* data structure to store results of lookups */ struct matches { struct hentry * hashent; /* hash table entry */ struct affent * prefix; /* Prefix used, or NULL */ struct affent * suffix; /* Suffix used, or NULL */ }; int numroots; /* number of root words found */ struct matches roots[MAX_ROOTS]; /* list of root words found */ /* hashing stuff */ struct hentry { char * word; char * affstr; struct hentry * next; int keep; }; int tablesize; struct hentry * tableptr; /* unmunch stuff */ int numwords; /* number of words found */ struct dwords { char * word; int pallow; }; struct dwords wlist[MAX_WORDS]; /* list words found */ /* the routines */ void parse_aff_file(FILE* afflst); void encodeit(struct affent * ptr, char * cs); int load_tables(FILE * wrdlst); int hash(const char *); int add_word(char *); struct hentry * lookup(const char *); void aff_chk (const char * word, int len); void pfx_chk (const char * word, int len, struct affent* ep, int num); void suf_chk (const char * word, int len, struct affent * ep, int num, struct affent * pfxent, int cpflag); void add_affix_char(struct hentry * hent, char ac); int expand_rootword(const char *, int, const char*, int); void pfx_add (const char * word, int len, struct affent* ep, int num); void suf_add (const char * word, int len, struct affent * ep, int num); char * mystrsep(char ** stringp, const char delim); char * mystrdup(const char * s); void mychomp(char * s); dict-xh-20070206.orig/utils/proc0000755000175000017500000027234010562150175014770 0ustar dokodoko#!/usr/bin/perl ################################################################ # # Aspell Word List Package proc script # Copyright 2001,2002,2004 under the GNU Lesser General Public License (LGPL) # use Data::Dumper; use strict; use warnings; no warnings qw(uninitialized); no locale; my $VERSION = "0.50.4"; my $action = 'create'; my $check_mode = 'safe'; foreach my $arg (@ARGV) { $arg =~ s/^-*//; if ($arg eq 'check' || $arg eq 'create') { $action=$arg; } elsif ($arg eq 'unsafe') { $check_mode = 'unsafe'; } } ################################################################ # # helper functions # sub true ( ) {1} sub false ( ) {0} sub error ( $ ) { die \ $_[0] } my ($line_length,$error_count,$multi_errors); sub line_length() {75} sub error_message ($;$) { my $error; my $parms = $_[1]; my $warn = defined $parms->{warn} ? $parms->{warn} : false; $error .= $warn ? "Warning" : "Error"; $error .= " line $parms->{lineno}" if defined $parms->{lineno}; $error .= ": $_[0]\n"; my $line; $_ = $error; my $print_line = sub {print STDERR "$line\n" unless $line =~ /^\s*$/}; while (s/(\s*?)(\S+|\n)//) { my ($a,$b) = ($1,$2); my $len = length($line) + length($a) + length($b); if (($line !~ /^\s*$/ && $len > line_length) || $b eq "\n") { &$print_line; $a = ""; $b = "" if $b eq "\n"; $line = " "; } $line .= $a; $line .= $b; } &$print_line; if (!$warn) { $error_count++; $multi_errors++ if defined $multi_errors; } } sub handle_error (;$) { return unless $@; if (ref $@) { error_message $ {$@}, {lineno=> $_[0]}; $@ = undef; } else { die $@; } } sub memberof ( $ $ ) { foreach (@{$_[1]}) {return true if $_[0] eq $_;} return false; } sub indented_list ( @ ) { return join '', map {" $_\n"} @_; } ################################################################ # # insr initialization # my ($key,$val,$info,$insr,@authors,%dicts,%copying); my $lang = "[a-z]{2}"; my $version; sub lower() {["[a-z]+", "must consist of only lowercase ASCII characters"]} sub upper() {["[A-Z]+", "must consist of only uppercase ASCII characters"]} sub alpha() {["[A-Za-z]+", "must consist of only alpha ASCII characters"]} sub alphanum() {["[A-Za-z0-9-]+", "must consist of only alphanumeric ASCII characters or '-'"]} sub ascii() {["[\x20-\x7E]+", "must consist of only ASCII characters"]} sub any() {[".+","ERROR"]} sub generic() {"is not in the proper format"} sub dict() {return ["$lang(_[A-Z]{2}|)(|-[a-z0-9-]+)(-[0-9]{2}|)", generic]} sub split_dict ( $ ) {my $dict = dict->[0]; my @data = $_[0] =~ /^$dict$/; foreach (@data) {next unless $_; $_ = substr $_, 1} return @data} sub form_dict ( @ ) {my $name = $lang; $name .= "_$_[0]" if $_[0]; $name .= "-$_[1]" if $_[1]; $name .= "-$_[2]" if $_[2]; return $name} sub README(); sub make_alias( $ $ $ ); my $line; my %aliases_from; my %aliases_to; my %global_info; my %global_insr = (default_fill_order => [qw (name_ascii name_native strip_accents)], author => { singular => false, name => {check=>any}, email => {required=>false, check=>[".+ at .+",generic]}, maintainer => {required=>false, oneof=>['true', 'false'], default=>'false'}, pre => sub {}, post => sub { push @authors, $info; } }, copyright => {oneof => ["LGPL", "GPL", "FDL", "LGPL/GPL", # FSF Licenses "Artistic", # Perl Artistic Licence "Copyrighted", # Copyright message must remain "Open Source", # Meets OSI defination "Public Domain", # ie none "Other", "Unknown"] }, version => { check => ['\d[a-z\d\.-]+', generic], code => sub {$version="$val"}, store => true, }, date => {required=>false, check=>['\d\d\d\d-\d\d-\d\d', 'YYYY-MM-DD']}, url => {required=>false}, source_url => {required=>false}, source_version => {required=>false}, name_english => {check=>["[A-Z][a-z]+( [A-Z][a-z]+)*",generic]}, name_ascii => {default => "=name_english"}, name_native => {default => "=name_ascii", check=>any}, lang => {check => ["[a-z]{2,3}", "must consist of two or three lowercase ASCII characters"], code => sub {$lang = $val}, store => true }, readme_file => {required=>false, check=> upper, normal=>"README", generate => sub {README}}, copying_file => {required=>false, check=> upper, normal=>"COPYING", generate => sub {$copying{$info->{copyright}}}}, copyright_file => {required=>false, check=> upper, normal=>"Copyright"}, charset => { oneof => [qw(iso8859-1 iso8859-2 iso8859-3 iso8859-4 iso8859-5 iso8859-6 iso8859-7 iso8859-8 iso8859-9 iso8859-10 iso8859-14 iso8859-15 koi8-f koi8-r koi8-u viscii)] }, special => {required => false}, soundslike => {oneof => ['generic','phonet','none']}, keyboard => {required => false}, run_together => {required => false}, run_together_limit => {required => false}, run_together_min => {required => false}, run_together_mid => {required => false}, strip_accents => {default => 'false', oneof => ['true','false']}, alias => {check => any, code => sub { error "The \"lang\" entry must be defined before any global aliases." unless exists $global_info{lang}; my @d = split /\s+/, $val; foreach (@d[1..$#d]) { my $awli = s/:awli$// ? true : false; error ("The alias $_ already exits in the \"$aliases_to{$_}\" " ."entry.") if exists $aliases_to{$_}; $aliases_to{$_} = $d[0]; $_ = {name => $_, awli => $awli}; } push @{$aliases_from{$d[0]}}, @d[1..$#d]; } }, dict => { default_fill_order => ['awli'], singular => false, name => {check=>\&dict}, awli => {default=>'true', oneof=>['true','false']}, strip_accents => { oneof => ["true", "false"], code => sub {push @{$info->{insr}}, "strip-accents $val";} }, add => { check=>\&dict, code => sub { my ($inf, $v) = @_ ? @_ : ($info, $val); push @{$inf->{insr}}, "add $v"; push @{$inf->{dicts}}, {name => $v, add => \$inf->{insr}->[-1]}; } }, alias => { check=>any, code => sub { error "The name entry must be defined before any aliases or defined" unless exists $info->{name}; my $awli = $val =~ s/:awli$//; &{$insr->{post}}( make_alias $val, $info->{name}, $awli ); } }, pre => sub { my ($inf) = @_ ? @_ : ($info); $inf->{insr} = []; $inf->{dicts} = []; error "The \"lang\" entry must be defined before any dicts." unless exists $global_info{lang}; }, post => sub { my ($inf) = @_ ? @_ : ($info); error "Must provide at least one word list for \"$info->{name}\" dict entry." if (@{$inf->{dicts}} == 0); error "The dict or alias \"$info->{name}\" is already defined." if exists $dicts{$inf->{name}}; $dicts{$inf->{name}} = $inf; return $inf; } } ); sub doc_entries() {qw (readme_file copying_file copyright_file)} ################################################################ # # Add default values to insr # my @defaults = (["singular", true], ["check", ascii], ["required", true]); sub add_defaults ( $ ) { my $v = $_[0]; foreach my $d (@defaults) { $v->{$d->[0]} = $d->[1] unless exists $v->{$d->[0]}; } $v->{required} = false if exists $v->{code} || !$v->{singular}; $v->{store} = true unless exists $v->{store} || exists $v->{code}; $v->{store} = false unless exists $v->{store}; } foreach my $v (values %global_insr) { next unless ref $v eq 'HASH'; add_defaults $v; if (!$v->{singular}) { foreach my $vv (values %$v) { next unless ref $vv eq 'HASH'; add_defaults $vv } } } ################################################################ # # Read in info file # open IN, "info" or die "Unable to open info file\n"; sub handle_key(); sub begin_multi(); sub possibly_end_multi(); sub add_defaults_and_check_mandatory(); my ($key_insr,$multi_val,$multi_line,$multi_message); $info = \%global_info; $insr = \%global_insr; $line = 0; while () { ++$line; chop; s/\#.*$//; s/\s*$//; next if $_ eq ''; eval { my ($lsp,$col); ($lsp, $key, $col, $val) = /^(\s*)([\w-]*)\s*(:?)\s*(.*)$/ or error "Syntax Error."; $key =~ tr/-/_/; if ($col eq ':' && $lsp ne '') { error_message "This line should not be indented. Assuming its not." , {lineno => $line}; $lsp = ''; } if ($lsp eq '') { possibly_end_multi; $key_insr = $insr->{$key} or error "Unknown Key: $key"; error "Expecting value after $key" if $key_insr->{singular} && ($col ne '' || $val eq ''); error "Expecting \":\" after $key" if !$key_insr->{singular} && $col ne ':'; if ($key_insr->{singular}) { handle_key; } else { begin_multi; } } else { error "This line is indented yet I can not find a line of the form " ."\":\" before it" if !defined $multi_val; $key_insr = $insr->{$key} or error "Unknown Key \"$key\"$multi_message."; error "Expecting value after $key$multi_message." if $col ne '' || $val eq ''; handle_key; } }; handle_error $line; } possibly_end_multi; close IN; die "There were $error_count errors with the info file, aborting.\n" if $error_count > 0; sub handle_key() { my $check = $key_insr->{check}; $check = &$check if ref $check eq 'CODE'; error "The value for $key $check->[1]$multi_message." if $val !~ /^$check->[0]$/; error "The value for $key is not one of: ".join(', ',@{$key_insr->{oneof}}) if exists $key_insr->{oneof} && !memberof($val, $key_insr->{oneof}); if ($key_insr->{store}) { error "A value for $key already defined$multi_message." if exists $info->{$key}; $info->{$key} = $val; } if (exists $key_insr->{code}) { &{$key_insr->{code}}; } } sub begin_multi() { $info = {}; $insr = $key_insr; $multi_val = $key; $multi_line = $line; $multi_errors = 0; $multi_message = " for the group \"$multi_val\" which starts at line $multi_line"; &{$insr->{pre}}; } sub possibly_end_multi() { return unless defined $multi_val; if ($multi_errors == 0) { add_defaults_and_check_mandatory; } if ($multi_errors == 0) { eval { &{$insr->{post}}; }; handle_error $multi_line; } $info = \%global_info; $insr = \%global_insr; $multi_val = undef; $multi_line = undef; $multi_errors = undef; $multi_message = ''; } ################################################################ # # Add defaults and check for mandatory fields # add_defaults_and_check_mandatory; sub add_defaults_and_check_mandatory() { my ($key, $val); # add defaults foreach my $key (@{$insr->{default_fill_order}}) { next if exists $info->{$key}; my $def = $insr->{$key}->{default}; if ($def =~ /^\=(.+)$/) { $info->{$key} = $info->{$1}; } else { $info->{$key} = $def; } } # check mandatory fields while (my ($key,$val) = each %$insr) { next unless ref $val eq 'HASH'; next unless $val->{required}; next if exists $info->{$key}; error_message "The required field $key is missing$multi_message."; } } $info = \%global_info; $insr = \%global_insr; error_message "You must provide at least one author." if (@authors == 0); my ($date, %date); if (exists $info->{date}) { $date = $info->{date}; ($date{year}, $date{month}, $date{day}) = $info->{date} =~ /(....)-(..)-(..)/ or die; } else { (undef,undef,undef,$date{day},$date{month},$date{year}) = localtime(time); $date{year} += 1900; $date = sprintf "%04d-%02d-%02d",$date{year},$date{month}+1,$date{day}; } ################################################################ # # Finish processing # my (%word_lists); my (%already_warned); sub make_alias ( $ $ $ ) { my ($from, $to, $awli) = @_; my $inf = {}; my $insr = $global_insr{dict}; &{$insr->{pre}}($inf); $inf->{name} = $from; $inf->{awli} = $awli ? 'true' : 'false'; &{$insr->{add}{code}}($inf, $to); return $inf; } # Traverse performs a depth first circle looking for cycles and information # included twice # Parms # 1st (array reference) The list of all nodes # 2nd (sub ( $ )) A function which returnes all the children of a given node sub traverse ( $ $ ); traverse [keys %aliases_from], sub { my $r = $aliases_from{$_[0]}; return () unless defined $r; return map {$_->{name}} @$r; }; my @toproc = keys %dicts; while (my $key = shift @toproc) { my $val = $dicts{$key}; $val->{ext} = $val->{awli} eq 'true' ? 'multi' : 'alias'; my @d = split_dict $key; next unless @d; $d[0] = $lang . ($d[0] ? '_' : ''). $d[0]; my $get_aliases = sub { my @a; @a = @{$aliases_from{$_[0]}} if exists $aliases_from{$_[0]}; return ({name=>$_[0], awli=>$val->{awli}}, @a); }; foreach my $l0 (&$get_aliases($d[0])) { foreach my $l1 (&$get_aliases($d[1])) { foreach my $l2 (&$get_aliases($d[2])) { my $dict = $l0->{name}; $dict .= '-'.$l1->{name} if $l1->{name}; $dict .= '-'.$l2->{name} if $l2->{name}; next if exists $dicts{$dict}; my $awli = $l0->{awli} && $l1->{awli} && $l2->{awli}; $dicts{$dict} = make_alias $dict, $key, $awli; $dicts{$dict}->{auto} = true; push @toproc, $dict; } } } next unless $val->{awli}; # If the dictionaries have a size associated with it than find # the size closest to the default size and make an awli alias for # that dictionary without the size in its name @d = split_dict $key; my $l = pop @d; my $n = form_dict @d; if ($l) { if (exists $dicts{$n} && ! exists $dicts{$n}{auto}) { if (!$already_warned{$n}) { my $error; $error .= "Since the awli-dict \"$key\" exists "; $error .= "the dict $n should also have a size."; error_message $error; $already_warned{$n} = true; } } else { # create a special alias my $rank = $l - 60; if ($rank <= 0) { $rank = - $rank; $rank <<= 1; $rank += 1; } else { $rank <<= 1; } push @toproc,$n unless exists $dicts{$n}; my $old_rank = $dicts{$n}->{rank}; if (! defined $old_rank || $rank < $old_rank) { my $inf = make_alias $n, $key, true; $inf->{rank} = $rank; $inf->{auto} = true; $dicts{$n} = $inf; } } } } foreach my $key (sort keys %dicts) { # sorting it guarantees that the more general dictionaries are # processed first my $val = $dicts{$key}; if ($val->{awli} eq 'true') { my @d = split_dict $key; pop @d; # ignore the size part as it is already handled above my $l = pop @d; my $n = form_dict @d; while (@d) { $l = pop @d; $n = form_dict @d; next unless $l; next if exists $dicts{$n}{rank}; next if exists $already_warned{$n}; my $error; if (!exists $dicts{$n} || $dicts{$n}{awli} eq 'false') { $error .= "The more specific awli-dict \"$key\" exists yet "; if (!exists $dicts{$n}) { $error .= "\"$n\" does not." } elsif ($dicts{$n}->{awli} eq 'false') { $error .= "the \"$n\" dict has the awli entry set to false." } } error_message $error if defined $error; $already_warned{$n} = true; } } foreach my $n (@{$val->{dicts}}) { if ($n->{name} eq $key && @{$val->{insr}} != 1) { my $error; $error .= "The $key dictionary can not add a word list "; $error .= "of the same name unless it is the only entry."; error_message $error; } else { if ($n->{name} eq $key || !exists $dicts{$n->{name}}) { $n->{type} = 'rws'; push @{$word_lists{$n->{name}}}, $key; } else { $n->{type} = 'multi'; #$n->{link} = $dicts{$n->{name}}; } $ {$n->{add}} .= ".$n->{type}"; } $val->{is_alias} = (@{$val->{insr}} == 1 && $val->{dicts}[0]{type} eq 'multi'); } unshift @{$val->{insr}}, "strip-accents true" if $global_info{strip_accents} eq 'true' && $val->{insr}->[0] !~ /^strip-accents /; } sub find_equivalent_to { my $val = $dicts{$_[0]}; return $val->{equivalent_to} if exists $val->{equivalent_to}; if (@{$val->{insr}} == 1 && $val->{dicts}[0]{type} eq 'multi') { $val->{equivalent_to} = &find_equivalent_to($val->{dicts}[0]{name}); push @{$val->{equivalent_to}}, $_[0]; } else { $val->{equivalent_to} = []; } return $val->{equivalent_to}; } foreach my $key (sort keys %dicts) { &find_equivalent_to($key); } traverse [map {"$_->{name}.$_->{ext}"} values %dicts], sub { my ($id) = @_; my ($name,$type) = $id =~ /^(.+)\.(.+)$/; return () unless $type eq 'multi'; return map {"$_->{name}.$_->{type}"} @{$dicts{$name}->{dicts}}; }; sub try_read ( $ ) { my $res = open IN, "$_[0]"; close IN; error_message ("Unable to read the file $_[0]") unless $res; return $res; } my $word_list_compress_working = system("word-list-compress 2> /dev/null") != -1 ? true : false; error_message("Unable to execute word-list-compress. I will not be able " ."to check the integrity of the *.cwl files.") unless $word_list_compress_working; foreach my $wl (keys %word_lists) { try_read "$wl.cwl" or next; next unless $word_list_compress_working; if ($check_mode ne 'unsafe') { open IN, "word-list-compress d < $wl.cwl|" or die; my $prev = ''; while () { if ($prev gt $_) { error_message ("The file $wl.cwl is not in the proper format. " ."Did you remember to set LC_COLLATE to C before sorting " ."and compressing with \"word-list-compress c\"."); last; } elsif ($prev eq $_) { error_message ("The file $wl.cwl contains duplicates. " ."Sort with \"sort -u\" to remove them."); last; } $prev = $_; } } } if ($info->{soundslike} eq 'phonet') { try_read "${lang}_phonet.dat"; } foreach my $key (doc_entries) { my $file; if (exists $info->{$key}) { $file = $info->{$key}; } elsif (!exists $insr->{$key}->{generate}) { $file = $insr->{$key}->{normal}; } else { next; } try_read $file; } close IN; die "$error_count Error(s), aborting\n" if $error_count != 0; exit 0 if $action eq 'check'; sub traverse ( $ $ ) { my ($nodes, $get_children) = @_; my %processed; my $t; $t = sub { my ($id,$visited) = @_; my %paths = ($id => [$id]); return \%paths if exists $visited->{$id}; #print STDERR " $id\n"; $visited->{$id} = true; if ($processed{$id}) { foreach (@{$processed{$id}->{visited}}) { $visited->{$_} = true; } return $processed{$id}->{paths}; } foreach my $val (&$get_children( $id ) ) { my $child_paths = &$t( $val, $visited ); while (my ($k,$v) = each %$child_paths) { if ($k eq $id) { error_message "Ciculer dependence found: ".join(" -> ", $id, @$v); } elsif (exists $paths{$k}) { error_message ("$v->[-1] is included twice by $id via the following paths:\n" ." ".join(" -> ", $id, @$v)."\n" ." ".join(" -> ", @{$paths{$k}}) ,{warn => true} ); } else { $paths{$k} = [$id, @$v]; } } } $processed{$id} = {visited => [keys %$visited], paths => \%paths}; return \%paths; }; foreach my $k (@$nodes) { #print STDERR "$k:\n"; &$t( $k,{} ); } } ################################################################ # # Create files # my (%files, $make); $files{extra} = ['configure', 'info', 'Makefile.pre']; push @{$files{data}}, "$lang.dat"; push @{$files{data}}, "${lang}_phonet.dat" if $info->{soundslike} eq 'phonet'; $info->{name} = $lang; $info->{soundslike} = $lang if $info->{soundslike} eq 'phonet'; open OUT, ">$lang.dat"; print OUT "# Generated with Aspell Dicts \"proc\" script version $VERSION\n"; foreach my $key (qw(name charset special soundslike keyboard run_together run_together_limit run_together_min run_together_mid)) { next unless exists $info->{$key}; my $akey = $key; $akey =~ tr/_/-/; print OUT "$akey $info->{$key}\n"; } close OUT; foreach my $key (doc_entries) { my $specific = $info->{$key}; my $normal = $insr->{$key}{normal}; if (defined $specific && $specific ne $normal) { system "cp $specific $normal" or die; push @{$files{doc}}, $specific, $normal; } elsif (defined $specific) { push @{$files{doc}}, $normal; } elsif (exists $insr->{$key}{generate}) { my $data = &{$insr->{$key}{generate}}; next unless defined $data; open OUT, ">$normal"; print OUT $data; close OUT; push @{$files{doc}}, $normal; } else { push @{$files{doc}}, $normal; } } foreach my $key (sort keys %dicts) { my $val = $dicts{$key}; open OUT, ">$val->{name}.$val->{ext}\n"; print OUT "# Generated with Aspell Dicts \"proc\" script version $VERSION\n"; foreach (@{$val->{insr}}) { print OUT "$_\n"; } close OUT; push @{$files{multi}}, "$val->{name}.$val->{ext}"; } foreach my $key (sort keys %word_lists) { $make .= "$key.rws: $key.cwl\n\n"; push @{$files{cwl}}, "$key.cwl"; push @{$files{rws}}, "$key.rws"; } $make .= <<"---"; .SUFFIXES: .cwl .rws .cwl.rws: \${WORD_LIST_COMPRESS} d < \$< | \${ASPELL} \${ASPELL_FLAGS} --lang=$lang create master ./\$@ --- open OUT, ">Makefile.pre"; print OUT <<"---"; # Generated with Aspell Dicts "proc" script version $VERSION lang = $lang version = $version --- print OUT "\n"; foreach (sort keys %files) { print OUT "${_}_files = ", join(' ', @{$files{$_}}), "\n"; } print OUT "\n"; print OUT << '---'; distdir=aspell-${lang}-${version} all: ${rws_files} ${data_files} install: all mkdir -p ${DESTDIR}${dictdir}/ cp ${rws_files} ${multi_files} ${DESTDIR}${dictdir}/ cd ${DESTDIR}${dictdir}/ && chmod 644 ${rws_files} ${multi_files} mkdir -p ${DESTDIR}${datadir}/ cp ${data_files} ${DESTDIR}${datadir}/ cd ${DESTDIR}${datadir}/ && chmod 644 ${data_files} clean: rm -f ${rws_files} distclean: clean rm -f Makefile maintainer-clean: distclean rm -f ${multi_files} Makefile.pre uninstall: -cd ${DESTDIR}${dictdir}/ && rm ${rws_files} ${multi_files} ${link_files} -cd ${DESTDIR}${datadir}/ && rm ${data_files} dist: perl proc ./configure @make dist-nogen dist-nogen: -rm -r ${distdir}.tar.bz2 ${distdir} mkdir ${distdir} cp -p ${extra_files} ${cwl_files} ${multi_files} ${doc_files} ${data_files} ${distdir}/ -cp -pr doc/ ${distdir}/ tar cf ${distdir}.tar ${distdir}/ bzip2 -9 ${distdir}.tar rm -r ${distdir}/ distcheck: tar xfj ${distdir}.tar.bz2 cd ${distdir} && ./configure && make rel: mv ${distdir}.tar.bz2 ../rel --- print OUT $make; close OUT; sub README() { my $maintainer_list; my $author_list; foreach (@authors) { my $which = $_->{maintainer} eq 'true' ? \$maintainer_list : \$author_list; $$which .= " $_->{name}"; $$which .= " ($_->{email})" if exists $_->{email}; $$which .= "\n"; } my $author_info; $author_info = "Maintained By:\n$maintainer_list" if $maintainer_list; $author_info = "Original Word List By:\n$author_list" if $author_list; chop $author_info; my $dict_list; foreach my $key (sort keys %dicts) { my $val = $dicts{$key}; next if $val->{is_alias}; $dict_list .= " $key"; if (@{$val->{equivalent_to}}) { $dict_list .= ' ('; my $len = length($key) + 4; my $indent = $len; foreach (sort @{$val->{equivalent_to}}) { if ($len + length($_) > 70 && $len != $indent) { $dict_list .= "\n"; $dict_list .= ' 'x$indent; $len = $indent; } $dict_list .= "$_ "; $len += length($_) + 1; } chop $dict_list; $dict_list .= ')'; } $dict_list .= "\n"; } chop $dict_list; my $extra_info; $extra_info .= "Wordlist URL: $info->{url}\n" if exists $info->{url}; $extra_info .= "Source Verson: $info->{source_version}\n" if exists $info->{source_version}; $extra_info .= "Source URL: $info->{source_url}\n" if exists $info->{source_url}; return <<"---" GNU Aspell $info->{name_english} Word List Package Version $version $date by Kevin Atkinson (kevina\@gnu.org) $author_info Copyright Terms: $info->{copyright} (see the file Copyright for the exact terms) $extra_info This is the Aspell word list for $info->{name_english}. If Aspell is installed and aspell and word-list-compress are all in the path first do a: ./configure Which should output something like: Finding Dictionary file location ... /usr/local/lib/aspell Finding Data file location ... /usr/local/share/aspell if it did not something likely went wrong. After that build the package with: make and then install it with make install If any of the above mentioned programs are not in your path than the variables, ASPELL and/or WORD_LIST_COMPRESS need to be set to the commands (with path) to run the utilities. These variables may be set in the environment before configure is run or specified at the command line using the following syntax ./configure --vars VAR1=VAL1 ... Other useful variables configure recognizes are ASPELL_PARMS, and DESTDIR. To clean up after the build: make clean To uninstall the files: make uninstall After the word lists are installed you can use the main one ($lang) by setting the LANG environmental variable to $lang or running Aspell with --lang=$lang. You may also chose the dictionary directly with the -d or --master option of Aspell. You can chose from any of the following dictionaries: $dict_list Whereas the names in parentheses are alternate names for the dictionary preceding the parentheses. If you have any problem with installing or using the word lists please let me (Kevin Atkinson) know. If you have problems with the actual word lists please contact one of the Word lists authors as I do not maintain the actual Word Lists. Any additional documentation that came with the original word list can be found in the doc/ directory. --- } INIT { %copying = (GPL => <<'---', 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) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 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. --- LGPL => <<'---', GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 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. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, 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 and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, 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 library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete 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 distribute a copy of this License along with the Library. 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 Library or any portion of it, thus forming a work based on the Library, 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) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, 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 Library, 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 Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you 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. If distribution of 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 satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be 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. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library 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. 9. 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 Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library 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 with this License. 11. 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 Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library 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 Library. 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. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library 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. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser 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 Library 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 Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, 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 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "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 LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. 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 LIBRARY 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 LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), 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 Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. 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) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! --- FDL => <<'---', GNU Free Documentation License Version 1.1, March 2000 Copyright (C) 2000 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. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other written document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version: A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five). C. State on the Title page the name of the publisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of the Document. E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. H. Include an unaltered copy of this License. I. Preserve the section entitled "History", and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. K. In any section entitled "Acknowledgements" or "Dedications", preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. M. Delete any section entitled "Endorsements". Such a section may not be included in the Modified Version. N. Do not retitle any existing section as "Endorsements" or to conflict in title with any Invariant Section. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections entitled "History" in the various original documents, forming one section entitled "History"; likewise combine any sections entitled "Acknowledgements", and any sections entitled "Dedications". You must delete all sections entitled "Endorsements." 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an "aggregate", and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document 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. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation 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. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. ADDENDUM: How to use this License for your documents To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy of the license is included in the section entitled "GNU Free Documentation License". If you have no Invariant Sections, write "with no Invariant Sections" instead of saying which ones are invariant. If you have no Front-Cover Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts being LIST"; likewise for Back-Cover Texts. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software. --- Artistic => <<'---', The Clarified Artistic License Preamble The intent of this document is to state the conditions under which a Package may be copied, such that the Copyright Holder maintains some semblance of artistic control over the development of the package, while giving the users of the package the right to use and distribute the Package in a more-or-less customary fashion, plus the right to make reasonable modifications. Definitions: "Package" refers to the collection of files distributed by the Copyright Holder, and derivatives of that collection of files created through textual modification. "Standard Version" refers to such a Package if it has not been modified, or has been modified in accordance with the wishes of the Copyright Holder as specified below. "Copyright Holder" is whoever is named in the copyright or copyrights for the package. "You" is you, if you're thinking about copying or distributing this Package. "Distribution fee" is a fee you charge for providing a copy of this Package to another party. "Freely Available" means that no fee is charged for the right to use the item, though there may be fees involved in handling the item. It also means that recipients of the item may redistribute it under the same conditions they received it. 1. You may make and give away verbatim copies of the source form of the Standard Version of this Package without restriction, provided that you duplicate all of the original copyright notices and associated disclaimers. 2. You may apply bug fixes, portability fixes and other modifications derived from the Public Domain, or those made Freely Available, or from the Copyright Holder. A Package modified in such a way shall still be considered the Standard Version. 3. You may otherwise modify your copy of this Package in any way, provided that you insert a prominent notice in each changed file stating how and when you changed that file, and provided that you do at least ONE of the following: a) place your modifications in the Public Domain or otherwise make them Freely Available, such as by posting said modifications to Usenet or an equivalent medium, or placing the modifications on a major network archive site allowing unrestricted access to them, or by allowing the Copyright Holder to include your modifications in the Standard Version of the Package. b) use the modified Package only within your corporation or organization. c) rename any non-standard executables so the names do not conflict with standard executables, which must also be provided, and provide a separate manual page for each non-standard executable that clearly documents how it differs from the Standard Version. d) make other distribution arrangements with the Copyright Holder. e) permit and encourge anyone who receives a copy of the modified Package permission to make your modifications Freely Available in some specific way. 4. You may distribute the programs of this Package in object code or executable form, provided that you do at least ONE of the following: a) distribute a Standard Version of the executables and library files, together with instructions (in the manual page or equivalent) on where to get the Standard Version. b) accompany the distribution with the machine-readable source of the Package with your modifications. c) give non-standard executables non-standard names, and clearly document the differences in manual pages (or equivalent), together with instructions on where to get the Standard Version. d) make other distribution arrangements with the Copyright Holder. e) offer the machine-readable source of the Package, with your modifications, by mail order. 5. You may charge a distribution fee for any distribution of this Package. If you offer support for this Package, you may charge any fee you choose for that support. You may not charge a license fee for the right to use this Package itself. You may distribute this Package in aggregate with other (possibly commercial and possibly nonfree) programs as part of a larger (possibly commercial and possibly nonfree) software distribution, and charge license fees for other parts of that software distribution, provided that you do not advertise this Package as a product of your own. If the Package includes an interpreter, You may embed this Package's interpreter within an executable of yours (by linking); this shall be construed as a mere form of aggregation, provided that the complete Standard Version of the interpreter is so embedded. 6. The scripts and library files supplied as input to or produced as output from the programs of this Package do not automatically fall under the copyright of this Package, but belong to whoever generated them, and may be sold commercially, and may be aggregated with this Package. If such scripts or library files are aggregated with this Package via the so-called "undump" or "unexec" methods of producing a binary executable image, then distribution of such an image shall neither be construed as a distribution of this Package nor shall it fall under the restrictions of Paragraphs 3 and 4, provided that you do not represent such an executable image as a Standard Version of this Package. 7. C subroutines (or comparably compiled subroutines in other languages) supplied by you and linked into this Package in order to emulate subroutines and variables of the language defined by this Package shall not be considered part of this Package, but are the equivalent of input as in Paragraph 6, provided these subroutines do not change the language in any way that would cause it to fail the regression tests for the language. 8. Aggregation of the Standard Version of the Package with a commercial distribution is always permitted provided that the use of this Package is embedded; that is, when no overt attempt is made to make this Package's interfaces visible to the end user of the commercial distribution. Such use shall not be construed as a distribution of this Package. 9. The name of the Copyright Holder may not be used to endorse or promote products derived from this software without specific prior written permission. 10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. The End --- ); } dict-xh-20070206.orig/utils/unmunch.h0000644000175000017500000000267610562150175015730 0ustar dokodoko/* unmunch header file */ #define MAX_LN_LEN 200 #define MAX_WD_LEN 200 #define MAX_PREFIXES 256 #define MAX_SUFFIXES 256 #define MAX_WORDS 5000 #define ROTATE_LEN 5 #define ROTATE(v,q) \ (v) = ((v) << (q)) | (((v) >> (32 - q)) & ((1 << (q))-1)); #define SET_SIZE 256 #define XPRODUCT (1 << 0) /* the affix table entry */ struct affent { char * appnd; char * strip; short appndl; short stripl; char achar; char xpflg; short numconds; char conds[SET_SIZE]; }; struct affixptr { struct affent * aep; int num; }; /* the prefix and suffix table */ int numpfx; /* Number of prefixes in table */ int numsfx; /* Number of suffixes in table */ /* the prefix table */ struct affixptr ptable[MAX_PREFIXES]; /* the suffix table */ struct affixptr stable[MAX_SUFFIXES]; int numwords; /* number of words found */ struct dwords { char * word; int pallow; }; struct dwords wlist[MAX_WORDS]; /* list words found */ /* the routines */ void parse_aff_file(FILE* afflst); void encodeit(struct affent * ptr, char * cs); int expand_rootword(const char *, int, const char*, int); void pfx_add (const char * word, int len, struct affent* ep, int num); void suf_add (const char * word, int len, struct affent * ep, int num); char * mystrsep(char ** stringp, const char delim); char * mystrdup(const char * s); void mychomp(char * s); dict-xh-20070206.orig/utils/hunmunch.c0000644000175000017500000005127510562150175016072 0ustar dokodoko/* Munch a word list and generate a smaller root word list with affixes*/ #include #include #include #include #include #include #include #include #ifdef __linux__ #include #include #endif #include #include "hunmunch.h" int main(int argc, char** argv) { int i, j, k, n; int rl, p , nwl; int al; FILE * wrdlst; FILE * afflst; char *nword, *wf, *af; char as[(MAX_PREFIXES + MAX_SUFFIXES)]; char * ap; struct hentry * ep; struct hentry * ep1; struct affent * pfxp; struct affent * sfxp; /* first parse the command line options */ /* arg1 - wordlist, arg2 - affix file */ if (argv[1]) { wf = mystrdup(argv[1]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"munch word_list_file affix_file\n"); exit(1); } if (argv[2]) { af = mystrdup(argv[2]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"munch word_list_file affix_file\n"); exit(1); } /* open the affix file */ afflst = fopen(af,"r"); if (!afflst) { fprintf(stderr,"Error - could not open affix description file\n"); exit(1); } /* step one is to parse the affix file building up the internal affix data structures */ numpfx = 0; numsfx = 0; if (parse_aff_file(afflst)) { fprintf(stderr,"Error - in affix file loading\n"); exit(1); } fclose(afflst); fprintf(stderr,"parsed in %d prefixes and %d suffixes\n",numpfx,numsfx); /* affix file is now parsed so create hash table of wordlist on the fly */ /* open the wordlist */ wrdlst = fopen(wf,"r"); if (!wrdlst) { fprintf(stderr,"Error - could not open word list file\n"); exit(1); } if (load_tables(wrdlst)) { fprintf(stderr,"Error building hash tables\n"); exit(1); } fclose(wrdlst); for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { numroots = 0; aff_chk(ep->word,strlen(ep->word)); if (numroots) { /* now there might be a number of combinations */ /* of prefixes and suffixes that might match this */ /* word. So how to choose? As a first shot look */ /* for the shortest remaining root word to */ /* to maximize the combinatorial power */ /* but be careful, do not REQUIRE a specific combination */ /* of a prefix and a suffix to generate the word since */ /* that violates the rule that the root word with just */ /* the prefix or just the suffix must also exist in the */ /* wordlist as well */ /* in fact because of the cross product issue, this not a */ /* simple choice since some combinations of previous */ /* prefixes and new suffixes may not be valid. */ /* The only way to know is to simply try them all */ rl = 1000; p = -1; for (j = 0; j < numroots; j++){ /* first collect the root word info and build up */ /* the potential new affix string */ nword = (roots[j].hashent)->word; nwl = strlen(nword); *as = '\0'; al = 0; ap = as; if (roots[j].prefix) *ap++ = (roots[j].prefix)->achar; if (roots[j].suffix) *ap++ = (roots[j].suffix)->achar; if ((roots[j].hashent)->affstr) { strcpy(ap,(roots[j].hashent)->affstr); } else { *ap = '\0'; } al =strlen(as); /* now expand the potential affix string to generate */ /* all legal words and make sure they all exist in the */ /* word list */ numwords = 0; wlist[numwords].word = mystrdup(nword); wlist[numwords].pallow = 0; numwords++; n = 0; if (al) expand_rootword(nword,nwl,as,al); for (k=0; kkeep = 1; if (pfxp != NULL) add_affix_char(ep1,pfxp->achar); if (sfxp != NULL) add_affix_char(ep1,sfxp->achar); } else { ep->keep = 1; } } else { ep->keep = 1; } } } /* now output only the words to keep along with affixes info */ /* first count how many words that is */ k = 0; for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { if (ep->keep > 0) k++; } } fprintf(stdout,"%d\n",k); for (i=0; i< tablesize; i++) { ep = &tableptr[i]; if (ep->word == NULL) continue; for ( ; ep != NULL; ep = ep->next) { if (ep->keep > 0) { if (ep->affstr != NULL) { fprintf(stdout,"%s/%s\n",ep->word,ep->affstr); } else { fprintf(stdout,"%s\n",ep->word); } } } } return 0; } int parse_aff_file(FILE * afflst) { int i, j; int numents = 0; char achar = '\0'; short ff=0; char ft; struct affent * ptr= NULL; struct affent * nptr= NULL; char * line = malloc(MAX_LN_LEN); while (fgets(line,MAX_LN_LEN,afflst)) { mychomp(line); ft = ' '; fprintf(stderr,"parsing line: %s\n",line); if (strncmp(line,"PFX",3) == 0) ft = 'P'; if (strncmp(line,"SFX",3) == 0) ft = 'S'; if (ft != ' ') { char * tp = line; char * piece; i = 0; ff = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: break; case 1: { achar = *piece; break; } case 2: { if (*piece == 'Y') ff = XPRODUCT; break; } case 3: { numents = atoi(piece); ptr = malloc(numents * sizeof(struct affent)); ptr->achar = achar; ptr->xpflg = ff; fprintf(stderr,"parsing %c entries %d\n",achar,numents); break; } default: break; } i++; } free(piece); } /* now parse all of the sub entries*/ nptr = ptr; for (j=0; j < numents; j++) { if (!fgets(line,MAX_LN_LEN,afflst)) return 1; mychomp(line); tp = line; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: { if (nptr != ptr) { nptr->achar = ptr->achar; nptr->xpflg = ptr->xpflg; } break; } case 1: break; case 2: { nptr->strip = mystrdup(piece); nptr->stripl = strlen(nptr->strip); if (strcmp(nptr->strip,"0") == 0) { free(nptr->strip); nptr->strip=mystrdup(""); nptr->stripl = 0; } break; } case 3: { nptr->appnd = mystrdup(piece); nptr->appndl = strlen(nptr->appnd); if (strcmp(nptr->appnd,"0") == 0) { free(nptr->appnd); nptr->appnd=mystrdup(""); nptr->appndl = 0; } break; } case 4: { encodeit(nptr,piece);} fprintf(stderr, " affix: %s %d, strip: %s %d\n",nptr->appnd, nptr->appndl,nptr->strip,nptr->stripl); default: break; } i++; } free(piece); } nptr++; } if (ft == 'P') { ptable[numpfx].aep = ptr; ptable[numpfx].num = numents; fprintf(stderr,"ptable %d num is %d\n",numpfx,ptable[numpfx].num); numpfx++; } else { stable[numsfx].aep = ptr; stable[numsfx].num = numents; fprintf(stderr,"stable %d num is %d\n",numsfx,stable[numsfx].num); numsfx++; } ptr = NULL; nptr = NULL; numents = 0; achar='\0'; } } free(line); return 0; } void encodeit(struct affent * ptr, char * cs) { int nc; int neg; int grp; unsigned char c; int n; int ec; int nm; int i, j, k; unsigned char mbr[MAX_WD_LEN]; /* now clear the conditions array */ for (i=0;iconds[i] = (unsigned char) 0; /* now parse the string to create the conds array */ nc = strlen(cs); neg = 0; /* complement indicator */ grp = 0; /* group indicator */ n = 0; /* number of conditions */ ec = 0; /* end condition indicator */ nm = 0; /* number of member in group */ i = 0; if (strcmp(cs,".")==0) { ptr->numconds = 0; return; } while (i < nc) { c = *((unsigned char *)(cs + i)); if (c == '[') { grp = 1; c = 0; } if ((grp == 1) && (c == '^')) { neg = 1; c = 0; } if (c == ']') { ec = 1; c = 0; } if ((grp == 1) && (c != 0)) { *(mbr + nm) = c; nm++; c = 0; } if (c != 0) { ec = 1; } if (ec) { if (grp == 1) { if (neg == 0) { for (j=0;jconds[k] = ptr->conds[k] | (1 << n); } } else { for (j=0;jconds[j] = ptr->conds[j] | (1 << n); for (j=0;jconds[k] = ptr->conds[k] & ~(1 << n); } } neg = 0; grp = 0; nm = 0; } else { /* not a group so just set the proper bit for this char */ /* but first handle special case of . inside condition */ if (c == '.') { /* wild card character so set them all */ for (j=0;jconds[j] = ptr->conds[j] | (1 << n); } else { ptr->conds[(unsigned int) c] = ptr->conds[(unsigned int)c] | (1 << n); } } n++; ec = 0; } i++; } ptr->numconds = n; return; } /* search for a prefix */ void pfx_chk (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; struct hentry * hent; unsigned char * cp; int i; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { tlen = len - aent->appndl; if (tlen > 0 && (aent->appndl == 0 || strncmp(aent->appnd, word, aent->appndl) == 0) && tlen + aent->stripl >= aent->numconds) { if (aent->stripl) strcpy (tword, aent->strip); strcpy((tword + aent->stripl), (word + aent->appndl)); /* now go through the conds and make sure they all match */ cp = (unsigned char *) tword; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { tlen += aent->stripl; if ((hent = lookup(tword)) != NULL) { if (numroots < MAX_ROOTS) { roots[numroots].hashent = hent; roots[numroots].prefix = aent; roots[numroots].suffix = NULL; numroots++; } } } } } } void suf_chk (const char * word, int len, struct affent * ep, int num, struct affent * pfxent, int cpflag) { struct affent * aent; int tlen; int cond; struct hentry * hent; unsigned char * cp; int i; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { if ((cpflag & XPRODUCT) != 0 && (aent->xpflg & XPRODUCT) == 0) continue; tlen = len - aent->appndl; if (tlen > 0 && (aent->appndl == 0 || strcmp(aent->appnd, (word + tlen)) == 0) && tlen + aent->stripl >= aent->numconds) { strcpy (tword, word); cp = (unsigned char *) (tword + tlen); if (aent->stripl) { strcpy ((char *)cp, aent->strip); tlen += aent->stripl; cp = (unsigned char *)(tword + tlen); } else *cp = '\0'; for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { if ((hent = lookup(tword)) != NULL) { if (numroots < MAX_ROOTS) { roots[numroots].hashent = hent; roots[numroots].prefix = pfxent; roots[numroots].suffix = aent; numroots++; } } } } } } void aff_chk (const char * word, int len) { int i; int j; int nh=0; char * nword; int nwl; if (len < 4) return; for (i=0; i < numpfx; i++) { pfx_chk(word, len, ptable[i].aep, ptable[i].num); } nh = numroots; if (nh > 0) { for (j=0;jxpflg & XPRODUCT) { nword = mystrdup((roots[j].hashent)->word); nwl = strlen(nword); for (i=0; i < numsfx; i++) { suf_chk(nword,nwl,stable[i].aep, stable[i].num, roots[j].prefix, XPRODUCT); } free(nword); } } } for (i=0; i < numsfx; i++) { suf_chk(word, len, stable[i].aep, stable[i].num, NULL, 0); } } /* lookup a root word in the hashtable */ struct hentry * lookup(const char *word) { struct hentry * dp; dp = &tableptr[hash(word)]; if (dp->word == NULL) return NULL; for ( ; dp != NULL; dp = dp->next) { if (strcmp(word,dp->word) == 0) return dp; } return NULL; } /* add a word to the hash table */ int add_word(char * word) { int i; struct hentry * dp; struct hentry * hp = (struct hentry *) malloc (sizeof(struct hentry)); hp->word = word; hp->affstr = NULL; hp->keep = 0; hp->next = NULL; i = hash(word); dp = &tableptr[i]; if (dp->word == NULL) { *dp = *hp; free(hp); } else { while (dp->next != NULL) dp=dp->next; dp->next = hp; } return 0; } /* load a word list and build a hash table on the fly */ int load_tables(FILE * wdlst) { char * ap; char ts[MAX_LN_LEN]; /* first read the first line of file to get hash table size */ if (! fgets(ts, MAX_LN_LEN-1,wdlst)) return 2; mychomp(ts); tablesize = atoi(ts); tablesize = tablesize + 5; if ((tablesize %2) == 0) tablesize++; /* allocate the hash table */ tableptr = (struct hentry *) calloc(tablesize, sizeof(struct hentry)); if (! tableptr) return 3; /* loop thorugh all words on much list and add to hash * table and store away word and affix strings in tmpfile */ while (fgets(ts,MAX_LN_LEN-1,wdlst)) { mychomp(ts); ap = mystrdup(ts); add_word(ap); } return 0; } /* the hash function is a simple load and rotate * algorithm borrowed */ int hash(const char * word) { int i; long hv = 0; for (i=0; i < 4 && *word != 0; i++) hv = (hv << 8) | (*word++); while (*word != 0) { ROTATE(hv,ROTATE_LEN); hv ^= (*word++); } return (unsigned long) hv % tablesize; } void add_affix_char(struct hentry * ep, char ac) { int al; int i; char * tmp; if (ep->affstr == NULL) { ep->affstr = (char *) malloc(2*sizeof(char)); *(ep->affstr) = ac; *((ep->affstr)+1) = '\0'; return; } al = strlen(ep->affstr); for (i=0; i< al; i++) if (ac == (ep->affstr)[i]) return; tmp = calloc((al+2),sizeof(char)); memcpy(tmp,ep->affstr,(al+1)); *(tmp+al) = ac; *(tmp+al+1)='\0'; free(ep->affstr); ep->affstr = tmp; return; } /* add a prefix to word */ void pfx_add (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; unsigned char * cp; int i; char * pp; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { /* now make sure all conditions match */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) word; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { /* we have a match so add prefix */ tlen = 0; if (aent->appndl) { strcpy(tword,aent->appnd); tlen += aent->appndl; } pp = tword + tlen; strcpy(pp, (word + aent->stripl)); tlen = tlen + len - aent->stripl; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = 0; numwords++; } } } } } /* add a suffix to a word */ void suf_add (const char * word, int len, struct affent * ep, int num) { struct affent * aent; int tlen; int cond; unsigned char * cp; int i; char tword[MAX_WD_LEN]; char * pp; for (aent = ep, i = num; i > 0; aent++, i--) { /* if conditions hold on root word * then strip off strip string and add suffix */ if ((len > aent->stripl) && (len >= aent->numconds)) { cp = (unsigned char *) (word + len); for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { /* we have a matching condition */ strcpy(tword,word); tlen = len; if (aent->stripl) { tlen -= aent->stripl; } pp = (tword + tlen); if (aent->appndl) { strcpy (pp, aent->appnd); tlen += aent->stripl; } else *pp = '\0'; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = (aent->xpflg & XPRODUCT); numwords++; } } } } } int expand_rootword(const char * ts, int wl, const char * ap, int al) { int i; int j; int nh=0; int nwl; for (i=0; i < numsfx; i++) { if (strchr(ap,(stable[i].aep)->achar)) { suf_add(ts, wl, stable[i].aep, stable[i].num); } } nh = numwords; if (nh > 1) { for (j=1;jachar)) { if ((ptable[i].aep)->xpflg & XPRODUCT) { nwl = strlen(wlist[j].word); pfx_add(wlist[j].word, nwl, ptable[i].aep, ptable[i].num); } } } } } } for (i=0; i < numpfx; i++) { if (strchr(ap,(ptable[i].aep)->achar)) { pfx_add(ts, wl, ptable[i].aep, ptable[i].num); } } return 0; } /* strip strings into token based on single char delimiter * acts like strsep() but only uses a delim char and not * a delim string */ char * mystrsep(char ** stringp, const char delim) { char * rv = NULL; char * mp = *stringp; int n = strlen(mp); if (n > 0) { char * dp = (char *)memchr(mp,(int)((unsigned char)delim),n); if (dp) { int nc; *stringp = dp+1; nc = (int)((unsigned long)dp - (unsigned long)mp); rv = (char *) malloc(nc+1); memcpy(rv,mp,nc); *(rv+nc) = '\0'; return rv; } else { rv = (char *) malloc(n+1); memcpy(rv, mp, n); *(rv+n) = '\0'; *stringp = mp + n; return rv; } } return NULL; } char * mystrdup(const char * s) { char * d = NULL; if (s) { int sl = strlen(s); d = (char *) malloc(((sl+1) * sizeof(char))); if (d) memcpy(d,s,((sl+1)*sizeof(char))); } return d; } void mychomp(char * s) { int k = strlen(s); if (k > 0) *(s+k-1) = '\0'; if ((k > 1) && (*(s+k-2) == '\r')) *(s+k-2) = '\0'; } dict-xh-20070206.orig/utils/hununmunch.c0000644000175000017500000003074110562150175016430 0ustar dokodoko/* Un-munch a root word list with affix tags * to recreate the original word list */ #include #include #include #include #include #include #include #include #ifdef __linux__ #include #include #endif #include #include "hununmunch.h" int main(int argc, char** argv) { int i; int al, wl; FILE * wrdlst; FILE * afflst; char *wf, *af; char * ap; char ts[MAX_LN_LEN]; /* first parse the command line options */ /* arg1 - munched wordlist, arg2 - affix file */ if (argv[1]) { wf = mystrdup(argv[1]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"unmunch dic_file affix_file\n"); exit(1); } if (argv[2]) { af = mystrdup(argv[2]); } else { fprintf(stderr,"correct syntax is:\n"); fprintf(stderr,"unmunch dic_file affix_file\n"); exit(1); } /* open the affix file */ afflst = fopen(af,"r"); if (!afflst) { fprintf(stderr,"Error - could not open affix description file\n"); exit(1); } /* step one is to parse the affix file building up the internal affix data structures */ numpfx = 0; numsfx = 0; if (parse_aff_file(afflst)) { fprintf(stderr,"Error - in affix file loading\n"); exit(1); } fclose(afflst); fprintf(stderr,"parsed in %d prefixes and %d suffixes\n",numpfx,numsfx); /* affix file is now parsed so create hash table of wordlist on the fly */ /* open the wordlist */ wrdlst = fopen(wf,"r"); if (!wrdlst) { fprintf(stderr,"Error - could not open word list file\n"); exit(1); } /* skip over the hash table size */ if (! fgets(ts, MAX_LN_LEN-1,wrdlst)) return 2; mychomp(ts); while (fgets(ts,MAX_LN_LEN-1,wrdlst)) { mychomp(ts); /* split each line into word and affix char strings */ ap = strchr(ts,'/'); if (ap) { *ap = '\0'; ap++; al = strlen(ap); } else { al = 0; ap = NULL; } wl = strlen(ts); numwords = 0; wlist[numwords].word = mystrdup(ts); wlist[numwords].pallow = 0; numwords++; if (al) expand_rootword(ts,wl,ap,al); for (i=0; i < numwords; i++) { fprintf(stdout,"%s\n",wlist[i].word); free(wlist[i].word); wlist[i].word = NULL; wlist[i].pallow = 0; } } fclose(wrdlst); return 0; } int parse_aff_file(FILE * afflst) { int i, j; int numents=0; char achar='\0'; short ff=0; char ft; struct affent * ptr= NULL; struct affent * nptr= NULL; char * line = malloc(MAX_LN_LEN); while (fgets(line,MAX_LN_LEN,afflst)) { mychomp(line); ft = ' '; fprintf(stderr,"parsing line: %s\n",line); if (strncmp(line,"PFX",3) == 0) ft = 'P'; if (strncmp(line,"SFX",3) == 0) ft = 'S'; if (ft != ' ') { char * tp = line; char * piece; ff = 0; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: break; case 1: { achar = *piece; break; } case 2: { if (*piece == 'Y') ff = XPRODUCT; break; } case 3: { numents = atoi(piece); ptr = malloc(numents * sizeof(struct affent)); ptr->achar = achar; ptr->xpflg = ff; fprintf(stderr,"parsing %c entries %d\n",achar,numents); break; } default: break; } i++; } free(piece); } /* now parse all of the sub entries*/ nptr = ptr; for (j=0; j < numents; j++) { if (!fgets(line,MAX_LN_LEN,afflst)) return 1; mychomp(line); tp = line; i = 0; while ((piece=mystrsep(&tp,' '))) { if (*piece != '\0') { switch(i) { case 0: { if (nptr != ptr) { nptr->achar = ptr->achar; nptr->xpflg = ptr->xpflg; } break; } case 1: break; case 2: { nptr->strip = mystrdup(piece); nptr->stripl = strlen(nptr->strip); if (strcmp(nptr->strip,"0") == 0) { free(nptr->strip); nptr->strip=mystrdup(""); nptr->stripl = 0; } break; } case 3: { nptr->appnd = mystrdup(piece); nptr->appndl = strlen(nptr->appnd); if (strcmp(nptr->appnd,"0") == 0) { free(nptr->appnd); nptr->appnd=mystrdup(""); nptr->appndl = 0; } break; } case 4: { encodeit(nptr,piece);} fprintf(stderr, " affix: %s %d, strip: %s %d\n",nptr->appnd, nptr->appndl,nptr->strip,nptr->stripl); default: break; } i++; } free(piece); } nptr++; } if (ft == 'P') { ptable[numpfx].aep = ptr; ptable[numpfx].num = numents; fprintf(stderr,"ptable %d num is %d flag %c\n",numpfx,ptable[numpfx].num,ptr->achar); numpfx++; } else { stable[numsfx].aep = ptr; stable[numsfx].num = numents; fprintf(stderr,"stable %d num is %d flag %c\n",numsfx,stable[numsfx].num,ptr->achar); numsfx++; } ptr = NULL; nptr = NULL; numents = 0; achar='\0'; } } free(line); return 0; } void encodeit(struct affent * ptr, char * cs) { int nc; int neg; int grp; unsigned char c; int n; int ec; int nm; int i, j, k; unsigned char mbr[MAX_WD_LEN]; /* now clear the conditions array */ for (i=0;iconds[i] = (unsigned char) 0; /* now parse the string to create the conds array */ nc = strlen(cs); neg = 0; /* complement indicator */ grp = 0; /* group indicator */ n = 0; /* number of conditions */ ec = 0; /* end condition indicator */ nm = 0; /* number of member in group */ i = 0; if (strcmp(cs,".")==0) { ptr->numconds = 0; return; } while (i < nc) { c = *((unsigned char *)(cs + i)); if (c == '[') { grp = 1; c = 0; } if ((grp == 1) && (c == '^')) { neg = 1; c = 0; } if (c == ']') { ec = 1; c = 0; } if ((grp == 1) && (c != 0)) { *(mbr + nm) = c; nm++; c = 0; } if (c != 0) { ec = 1; } if (ec) { if (grp == 1) { if (neg == 0) { for (j=0;jconds[k] = ptr->conds[k] | (1 << n); } } else { for (j=0;jconds[j] = ptr->conds[j] | (1 << n); for (j=0;jconds[k] = ptr->conds[k] & ~(1 << n); } } neg = 0; grp = 0; nm = 0; } else { /* not a group so just set the proper bit for this char */ /* but first handle special case of . inside condition */ if (c == '.') { /* wild card character so set them all */ for (j=0;jconds[j] = ptr->conds[j] | (1 << n); } else { ptr->conds[(unsigned int) c] = ptr->conds[(unsigned int)c] | (1 << n); } } n++; ec = 0; } i++; } ptr->numconds = n; return; } /* add a prefix to word */ void pfx_add (const char * word, int len, struct affent* ep, int num) { struct affent * aent; int cond; int tlen; unsigned char * cp; int i; char * pp; char tword[MAX_WD_LEN]; for (aent = ep, i = num; i > 0; aent++, i--) { /* now make sure all conditions match */ if ((len > aent->stripl) && (len >= aent->numconds) && ((aent->stripl == 0) || (strncmp(aent->strip, word, aent->stripl) == 0))) { cp = (unsigned char *) word; for (cond = 0; cond < aent->numconds; cond++) { if ((aent->conds[*cp++] & (1 << cond)) == 0) break; } if (cond >= aent->numconds) { /* we have a match so add prefix */ tlen = 0; if (aent->appndl) { strcpy(tword,aent->appnd); tlen += aent->appndl; } pp = tword + tlen; strcpy(pp, (word + aent->stripl)); tlen = tlen + len - aent->stripl; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = 0; numwords++; } } } } } /* add a suffix to a word */ void suf_add (const char * word, int len, struct affent * ep, int num) { struct affent * aent; int tlen; int cond; unsigned char * cp; int i; char tword[MAX_WD_LEN]; char * pp; for (aent = ep, i = num; i > 0; aent++, i--) { /* if conditions hold on root word * then strip off strip string and add suffix */ if ((len > aent->stripl) && (len >= aent->numconds) && ((aent->stripl == 0) || (strcmp(aent->strip, word + len - aent->stripl - 1) == 0))) { cp = (unsigned char *) (word + len); for (cond = aent->numconds; --cond >= 0; ) { if ((aent->conds[*--cp] & (1 << cond)) == 0) break; } if (cond < 0) { /* we have a matching condition */ strcpy(tword,word); tlen = len; if (aent->stripl) { tlen -= aent->stripl; } pp = (tword + tlen); if (aent->appndl) { strcpy (pp, aent->appnd); tlen += aent->stripl; } else *pp = '\0'; if (numwords < MAX_WORDS) { wlist[numwords].word = mystrdup(tword); wlist[numwords].pallow = (aent->xpflg & XPRODUCT); numwords++; } } } } } int expand_rootword(const char * ts, int wl, const char * ap, int al) { int i; int j; int nh=0; int nwl; for (i=0; i < numsfx; i++) { if (strchr(ap,(stable[i].aep)->achar)) { suf_add(ts, wl, stable[i].aep, stable[i].num); } } nh = numwords; if (nh > 1) { for (j=1;jachar)) { if ((ptable[i].aep)->xpflg & XPRODUCT) { nwl = strlen(wlist[j].word); pfx_add(wlist[j].word, nwl, ptable[i].aep, ptable[i].num); } } } } } } for (i=0; i < numpfx; i++) { if (strchr(ap,(ptable[i].aep)->achar)) { pfx_add(ts, wl, ptable[i].aep, ptable[i].num); } } return 0; } /* strip strings into token based on single char delimiter * acts like strsep() but only uses a delim char and not * a delim string */ char * mystrsep(char ** stringp, const char delim) { char * rv = NULL; char * mp = *stringp; int n = strlen(mp); if (n > 0) { char * dp = (char *)memchr(mp,(int)((unsigned char)delim),n); if (dp) { int nc; *stringp = dp+1; nc = (int)((unsigned long)dp - (unsigned long)mp); rv = (char *) malloc(nc+1); memcpy(rv,mp,nc); *(rv+nc) = '\0'; return rv; } else { rv = (char *) malloc(n+1); memcpy(rv, mp, n); *(rv+n) = '\0'; *stringp = mp + n; return rv; } } return NULL; } char * mystrdup(const char * s) { char * d = NULL; if (s) { int sl = strlen(s); d = (char *) malloc(((sl+1) * sizeof(char))); if (d) memcpy(d,s,((sl+1)*sizeof(char))); } return d; } void mychomp(char * s) { int k = strlen(s); if ((k > 0) && (*(s+k-1) == '\n')) *(s+k-1) = '\0'; if ((k > 1) && (*(s+k-2) == '\r')) *(s+k-2) = '\0'; } dict-xh-20070206.orig/utils/csv2acor.py0000755000175000017500000000676710562150175016206 0ustar dokodoko#!/usr/bin/env python # -*- coding: UTF-8 -*- # Copyright 2005, Sren Thing Pedersen stp@things.dk, Licensed under LGPL import os, sys, zipfile, zlib, csv SentenceExceptList = 'SentenceExceptList.csv' WordExceptList = 'WordExceptList.csv' DocumentList = 'DocumentList.csv' manifest = """ """ fileheader = """ """ filefooter = '' class calc(csv.Dialect): delimiter = ',' quotechar = '"' doublequote = False quoting = csv.QUOTE_ALL escapechar = '\\' skipinitialspace = True lineterminator = '\r\n' def zip_dir_into_file(dir, file): zfobj = zipfile.ZipFile(file, 'w', zipfile.ZIP_DEFLATED) for root, dirs, files in os.walk(dir): for thisfile in files: # print os.path.join(root,thisfile) zfobj.write(os.path.join(root, thisfile), os.path.join(root, thisfile).replace(dir, "")[1:]) zfobj.close() if len(sys.argv) != 2: print 'Usage: '+sys.argv[0]+' destinationfile' else: destinationfile = sys.argv[1] tempdir = destinationfile+'_tmp' if os.path.exists(SentenceExceptList) and os.path.exists(WordExceptList) and os.path.exists(DocumentList): if not (os.path.exists(tempdir)): os.mkdir(tempdir, 0777) if not (os.path.exists(tempdir+'/Meta-inf/')): os.mkdir(tempdir+'/Meta-inf/', 0777) manifestfile = open(os.path.join(tempdir+'/Meta-inf/', 'manifest.xml'), 'wb') manifestfile.write(manifest) manifestfile.close() mimetypefile = open(os.path.join(tempdir, 'mimetype'), 'wb') mimetypefile.write('') mimetypefile.close() DocumentListfile = open(os.path.join(tempdir, 'DocumentList.xml'), 'wb') DocumentListfile.write(fileheader+"\n") csvreader = csv.reader(file(DocumentList), calc) for row in csvreader: line = ' '+"\n"; DocumentListfile.write(line) DocumentListfile.write(filefooter+"\n") DocumentListfile.close() SentenceExceptListfile = open(os.path.join(tempdir, 'SentenceExceptList.xml'), 'wb') SentenceExceptListfile.write(fileheader+"\n") csvreader = csv.reader(file(SentenceExceptList), calc) for row in csvreader: line = ' '+"\n"; SentenceExceptListfile.write(line) SentenceExceptListfile.write(filefooter+"\n") SentenceExceptListfile.close() WordExceptListfile = open(os.path.join(tempdir, 'WordExceptList.xml'), 'wb') WordExceptListfile.write(fileheader+"\n") csvreader = csv.reader(file(WordExceptList), calc) for row in csvreader: line = ' '+"\n"; WordExceptListfile.write(line) WordExceptListfile.write(filefooter+"\n") WordExceptListfile.close() zip_dir_into_file(tempdir, destinationfile) else: print "SentenceExceptList.csv, WordExceptList.csv or DocumentList.csv missing!" dict-xh-20070206.orig/utils/hunmunch.h0000644000175000017500000000461510562150175016073 0ustar dokodoko/* munch header file */ #define MAX_LN_LEN 200 #define MAX_WD_LEN 200 #define MAX_PREFIXES 256 #define MAX_SUFFIXES 256 #define MAX_ROOTS 20 #define MAX_WORDS 5000 #define ROTATE_LEN 5 #define ROTATE(v,q) \ (v) = ((v) << (q)) | (((v) >> (32 - q)) & ((1 << (q))-1)); #define SET_SIZE 256 #define XPRODUCT (1 << 0) /* the affix table entry */ struct affent { char * appnd; char * strip; short appndl; short stripl; char achar; char xpflg; short numconds; char conds[SET_SIZE]; }; struct affixptr { struct affent * aep; int num; }; /* the prefix and suffix table */ int numpfx; /* Number of prefixes in table */ int numsfx; /* Number of suffixes in table */ /* the prefix table */ struct affixptr ptable[MAX_PREFIXES]; /* the suffix table */ struct affixptr stable[MAX_SUFFIXES]; /* data structure to store results of lookups */ struct matches { struct hentry * hashent; /* hash table entry */ struct affent * prefix; /* Prefix used, or NULL */ struct affent * suffix; /* Suffix used, or NULL */ }; int numroots; /* number of root words found */ struct matches roots[MAX_ROOTS]; /* list of root words found */ /* hashing stuff */ struct hentry { char * word; char * affstr; struct hentry * next; int keep; }; int tablesize; struct hentry * tableptr; /* unmunch stuff */ int numwords; /* number of words found */ struct dwords { char * word; int pallow; }; struct dwords wlist[MAX_WORDS]; /* list words found */ /* the routines */ int parse_aff_file(FILE* afflst); void encodeit(struct affent * ptr, char * cs); int load_tables(FILE * wrdlst); int hash(const char *); int add_word(char *); struct hentry * lookup(const char *); void aff_chk (const char * word, int len); void pfx_chk (const char * word, int len, struct affent* ep, int num); void suf_chk (const char * word, int len, struct affent * ep, int num, struct affent * pfxent, int cpflag); void add_affix_char(struct hentry * hent, char ac); int expand_rootword(const char *, int, const char*, int); void pfx_add (const char * word, int len, struct affent* ep, int num); void suf_add (const char * word, int len, struct affent * ep, int num); char * mystrsep(char ** stringp, const char delim); char * mystrdup(const char * s); void mychomp(char * s); dict-xh-20070206.orig/utils/README.aspell0000644000175000017500000000025410562150175016227 0ustar dokodokoAspell needs these files: proc & configure - ftp://ftp.gnu.org/gnu/aspell/dict/0gen/aspell-gen-0.50.4.tar.bz2 Generates the files needed for an aspell dictionary package dict-xh-20070206.orig/utils/Makefile0000644000175000017500000000053410562150175015531 0ustar dokodoko# Makefile for munch and unmunch TARGETS=munch unmunch hunmunch hununmunch all: $(TARGETS) clean: rm -f $(TARGETS) munch: munch.c munch.h gcc -O2 -o $@ munch.c unmunch: unmunch.c unmunch.h gcc -O2 -o $@ unmunch.c hunmunch: hunmunch.c hunmunch.h gcc -O2 -o $@ hunmunch.c hununmunch: hununmunch.c hununmunch.h gcc -O2 -o $@ hununmunch.c dict-xh-20070206.orig/utils/.cvsignore0000644000175000017500000000001610562150175016064 0ustar dokodokomunch unmunch dict-xh-20070206.orig/utils/hununmunch.h0000644000175000017500000000267510562150175016442 0ustar dokodoko/* unmunch header file */ #define MAX_LN_LEN 200 #define MAX_WD_LEN 200 #define MAX_PREFIXES 256 #define MAX_SUFFIXES 256 #define MAX_WORDS 5000 #define ROTATE_LEN 5 #define ROTATE(v,q) \ (v) = ((v) << (q)) | (((v) >> (32 - q)) & ((1 << (q))-1)); #define SET_SIZE 256 #define XPRODUCT (1 << 0) /* the affix table entry */ struct affent { char * appnd; char * strip; short appndl; short stripl; char achar; char xpflg; short numconds; char conds[SET_SIZE]; }; struct affixptr { struct affent * aep; int num; }; /* the prefix and suffix table */ int numpfx; /* Number of prefixes in table */ int numsfx; /* Number of suffixes in table */ /* the prefix table */ struct affixptr ptable[MAX_PREFIXES]; /* the suffix table */ struct affixptr stable[MAX_SUFFIXES]; int numwords; /* number of words found */ struct dwords { char * word; int pallow; }; struct dwords wlist[MAX_WORDS]; /* list words found */ /* the routines */ int parse_aff_file(FILE* afflst); void encodeit(struct affent * ptr, char * cs); int expand_rootword(const char *, int, const char*, int); void pfx_add (const char * word, int len, struct affent* ep, int num); void suf_add (const char * word, int len, struct affent * ep, int num); char * mystrsep(char ** stringp, const char delim); char * mystrdup(const char * s); void mychomp(char * s); dict-xh-20070206.orig/utils/munch0000755000175000017500000004566010562150536015143 0ustar dokodokoELF0494 ("444''0<0((( Qtd/lib/ld-linux.so.2GNU    gSC<$D.!@aD(QKZoz(5t3dhg  __gmon_start__libc.so.6strcpystdoutfgetsmalloccallocfprintfmemchrstrncmpstrcmpfclosestderrfwriteexitfopenatoi_IO_stdin_used__libc_start_mainstrchrfreeGLIBC_2.1GLIBC_2.0ii ii ܰ@D      $(,UU!5%%h%h%h%h%h %h(%h0%h8p% h@`%hHP%hP@%hX0%h` % hh%$hp%(hx%,h1^PTRh`hQVhԆ;US[À*tX[ÐU=Ht 8ҡ8uHÐUtt $ÐL$qUWSQ|Bt0G$E؋Bu[DD$ D$D$$hDD$ D$ D$$|$$G$ED$E܉$8EЃ}t[DD$ D$D$$hDD$ D$ D$$|$DD$ D$.D$$$c^dEЉ$vEЉ$)d^ DD$ T$D$Ц $D$E؉$=Ẽ}u1DD$ D$&D$$$Ẻ$t1DD$ D$D$$$Ẻ$hEaE¡UEE>/hEH‹ET$$hEEE UUEԋEԹHEƅEEUUtUUP EEUUtUUP EEUU@t&UU@D$E$_EHE``Eԉ$݀`ń`@`E}t#EȉD$ D$EĉD$Eԉ$mEJEŀ$tEEŀ$REŀEńE`9E|`9EuE;E} EĉEEEEh9E}UUEUUEUUEE@ }tE@ D$E$}t1E@ D$E$E@  E@ E@E}EV9EEE=E¡UEEtE@ ~EE@E}uEV9E|@ED$D$;$EE¡UEEtogE@ ~TE@t+EPE @T$ D$D$? $E@D$D$F$E@E}uEV9Ed|Y[_]aUWVSEEfEEE$GEE$E DED$D$J$EEE\Eu}M(uEPEEE`Eu}M(uES} BEEEfEEuЉu}t}}t}t"EEuE $ > 4: ; I?  &I%%W2 ../sysdeps/i386/elfstart.S03!4=%" YZ!"\[# init.cT /build/buildd/glibc-2.3.6.ds1/build-tree/i386-libc/csucrti.ST !/!=Z!gg//Z!!!#!/=D3!/!=Z!|T /build/buildd/glibc-2.3.6.ds1/build-tree/i386-libc/csucrtn.S  !\!!!GNU C 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)init.cshort int/build/buildd/glibc-2.3.6.ds1/build-tree/glibc-2.3.6/csulong long intunsigned charlong long unsigned intshort unsigned int_IO_stdin_used.symtab.strtab.shstrtab.interp.note.ABI-tag.hash.dynsym.dynstr.gnu.version.gnu.version_r.rel.dyn.rel.plt.init.text.fini.rodata.eh_frame.ctors.dtors.jcr.dynamic.got.got.plt.data.bss.comment.debug_aranges.debug_pubnames.debug_info.debug_abbrev.debug_line.debug_str#(( 1HH7 P?88Go*To$$0c TTl ll up   {00 DD&``&'0000ܰ00P001 @<1 <12xP3%u365v!6078'?!? F(H8$Tl   0 D `ܰ0@ ! (/:xT H8   ( />|ލ] g   ƛ Xn $b -C?`F$Y b4o`M   w  ``@Ddh0 QZ @$7S Gd O<[Ԇ  `} 0 D U  U(V<  0^5З =3NVUddá tc` |^g0 ;   abi-note.S../sysdeps/i386/elf/start.Sinit.cinitfini.c/build/buildd/glibc-2.3.6.ds1/build-tree/i386-libc/csu/crti.Scall_gmon_startcrtstuff.c__CTOR_LIST____DTOR_LIST____JCR_LIST__completed.5621p.5619__do_global_dtors_auxframe_dummy__CTOR_END____DTOR_END____FRAME_END____JCR_END____do_global_ctors_aux/build/buildd/glibc-2.3.6.ds1/build-tree/i386-libc/csu/crtn.Smunch.c_DYNAMIC__fini_array_end__fini_array_start__init_array_end_GLOBAL_OFFSET_TABLE___init_array_startparse_aff_filestrchr@@GLIBC_2.0pfx_chkadd_wordlookupmystrdupstrcmp@@GLIBC_2.0_fp_hwfprintf@@GLIBC_2.0mystrsep__dso_handle__libc_csu_finihashmemchr@@GLIBC_2.0_initmalloc@@GLIBC_2.0load_tablesstablenumwordsstdout@@GLIBC_2.0stderr@@GLIBC_2.0numsfxnumroots_startfgets@@GLIBC_2.0mychompwliststrncmp@@GLIBC_2.0__libc_csu_initpfx_add__bss_startmain__libc_start_main@@GLIBC_2.0aff_chkdata_start_finifclose@@GLIBC_2.1tableptradd_affix_charrootsexit@@GLIBC_2.0atoi@@GLIBC_2.0calloc@@GLIBC_2.0tablesize_edata__i686.get_pc_thunk.bxfree@@GLIBC_2.0_endsuf_chkfopen@@GLIBC_2.1ptable_IO_stdin_usedexpand_rootwordsuf_addnumpfxfwrite@@GLIBC_2.0__data_start_Jv_RegisterClassesencodeit__gmon_start__strcpy@@GLIBC_2.0dict-xh-20070206.orig/VERSION.aspell0000644000175000017500000000000510562150176015252 0ustar dokodoko0.50