aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/tools.atree5
-rw-r--r--eclipse/dictionary.txt2
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/TypoFix.java2
-rw-r--r--files/typos/typos-de.txt2219
-rw-r--r--files/typos/typos-en.txt (renamed from files/typos-en.txt)7
-rw-r--r--files/typos/typos-es.txt733
-rw-r--r--files/typos/typos-hu.txt431
-rw-r--r--files/typos/typos-it.txt665
-rw-r--r--files/typos/typos-nb.txt (renamed from files/typos-nb.txt)3
-rw-r--r--files/typos/typos-pt.txt1647
-rw-r--r--files/typos/typos-tr.txt604
-rw-r--r--lint/cli/src/com/android/tools/lint/HtmlReporter.java5
-rw-r--r--lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoDetector.java139
-rw-r--r--lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoLookup.java304
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/AbstractCheckTest.java1
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoDetectorTest.java12
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoLookupTest.java472
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-de/typos.xml12
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-nb/typos.xml2
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values/typos.xml4
20 files changed, 7117 insertions, 152 deletions
diff --git a/build/tools.atree b/build/tools.atree
index 4777bee..893bd2a 100644
--- a/build/tools.atree
+++ b/build/tools.atree
@@ -176,9 +176,8 @@ external/chromium-trace/style.css tools/systrace/style.css
external/chromium-trace/LICENSE tools/systrace/LICENSE
external/chromium-trace/AUTHORS tools/systrace/AUTHORS
-# Misspelling databases for tools such as lint
-sdk/files/typos-en.txt tools/support/typos-en.txt
-sdk/files/typos-nb.txt tools/support/typos-nb.txt
+# Misspelling databases for lint
+sdk/files/typos tools/support
##############################################################################
# Tests Component
diff --git a/eclipse/dictionary.txt b/eclipse/dictionary.txt
index f524487..ae582d3 100644
--- a/eclipse/dictionary.txt
+++ b/eclipse/dictionary.txt
@@ -107,6 +107,8 @@ froyo
gen
gif
git
+glob
+globbing
groovy
guava
guillemets
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/TypoFix.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/TypoFix.java
index 7c34e3e..4358410 100644
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/TypoFix.java
+++ b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/lint/TypoFix.java
@@ -63,7 +63,7 @@ final class TypoFix extends DocumentFix {
return;
}
List<String> replacements = TypoDetector.getSuggestions(message);
- if (replacements.size() == 0) {
+ if (replacements == null || replacements.isEmpty()) {
return;
}
diff --git a/files/typos/typos-de.txt b/files/typos/typos-de.txt
new file mode 100644
index 0000000..5bcdffc
--- /dev/null
+++ b/files/typos/typos-de.txt
@@ -0,0 +1,2219 @@
+# This file contains a number of common German typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://de.m.wikipedia.org/wiki/Wikipedia:Liste_von_Tippfehlern/F%C3%BCr_Maschinen
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+Aaachen->Aachen
+aberufen->abgerufen
+abgekürtzt->abgekürzt
+abgeschloßen->abgeschlossen
+Abhängikeit->Abhängigkeit
+Abhängkeit->Abhängigkeit
+abolvieren->absolvieren
+abolviert->absolviert
+abschliessen->abschließen
+abschliessend->abschließend
+abschliessende->abschließende
+abschliessenden->abschließenden
+abschliessender->abschließender
+abschliesst->abschließt
+Absorbtion->Absorption
+abzuschliessen->abzuschließen
+achsial*->axial*
+achzig->achtzig
+Addresse->Adresse
+addressiert->adressiert
+Adjudant->Adjutant
+Aeropag->Areopag
+Aeropagos->Areopag
+afrz->afrz.
+agberufen->abgerufen
+Agendas->Agenden
+agerufen->abgerufen
+agraisch->agrarisch
+agressiv->aggressiv
+akkomodieren->akkommodieren
+Akkustik->Akustik
+akreditiert->akkreditiert
+Aktivitiäten->Aktivitäten
+Aktzeptanz->Akzeptanz
+alamiert->alarmiert
+aler->aller
+alerdings->allerdings
+Algorhitmus->Algorithmus
+Algoritmus->Algorithmus
+aliiert->alliiert
+allerding->allerdings
+allgmein->allgemein
+alliert->alliiert
+allredings->allerdings
+all zu->allzu
+Alstadt->Altstadt
+am einem->an einem,am einen
+amerikanich->amerikanisch
+amerikansch->amerikanisch
+amerkanisch->amerikanisch
+am seinem->an seinem
+Amtsitz->Amtssitz
+Amtsprache->Amtssprache
+Amtsprachen->Amtssprachen
+Anaesthesie->Anästhesie
+Analen->Annalen
+anderere->andere
+andereren->anderen
+andererer->anderer
+andereseits->andererseits
+anders herum->andersherum
+andersrum->besser: andersherum
+angelsächisch->angelsächsisch
+angelsächsiche->angelsächsische
+angelsächsichen->angelsächsischen
+angesehendsten->angesehensten
+anlaesslich->anlässlich
+anlaeßlich->anlässlich
+änlich->ähnlich
+annährend->annähernd
+Annährung->Annäherung
+Annektion->Annexion
+annerkannt->anerkannt
+annerkannte->anerkannte
+Annerkennung->Anerkennung
+annuliert->annulliert
+Annulierung->Annullierung
+Anordung->Anordnung
+Anschaung->Anschauung
+anschliessen->anschließen
+anschliessend->anschließend
+anschliessende->anschließende
+anschliessenden->anschließenden
+anschliessender->anschließender
+anschliessendes->anschließendes
+anschliesst->anschließt
+Anstoss->Anstoß
+anvisiert->angekündigt,avisiert
+Anwendund->Anwendung
+Anwort->Antwort
+Appartment*->Apartment*,Appartement*
+aquirieren->akquirieren
+Aquisition->Akquisition
+archälogische->archäologische
+archälogischen->archäologischen
+Archeologe->Archäologe
+Argentur*->Agentur*
+Arikel->Artikel
+arithmetrisch->arithmetisch
+Artzt->Arzt
+assozial->asozial
+asymetrisch*->asymmetrisch*
+Atacke->Attacke
+atackieren->attackieren
+atakieren->attackieren
+Athleth*->Athlet*
+Athmosphäre*->Atmosphäre*
+athmosphärisch*->atmosphärisch*
+Atrappe->Attrappe
+attakieren->attackieren
+Aufällig->Auffällig
+Aufassung->Auffassung
+Aufassungen->Auffassungen
+auf dem ersten Blick->auf den ersten Blick
+auf eigenem Wunsch->auf eigenen Wunsch,aus eigenem Wunsch
+Aufenhalt->Aufenthalt
+Aufname->Aufnahme
+Auforderung->Aufforderung
+aufrecht erhält->aufrechterhält
+aufrecht erhalten->aufrechterhalten
+aufrecht erhielt->aufrechterhielt
+aufrecht zu erhalten->aufrechtzuerhalten
+Aufsteig->Aufstieg
+Auftieg->Aufstieg
+auftretenen->auftretenden
+auftretten->auftreten
+Augenlied->Augenlid
+augenommen->aufgenommen,ausgenommen
+auml->Ä,ä
+Ausage->Aussage
+Ausagen->Aussagen
+auschliesslich->ausschließlich
+auschließlich->ausschließlich
+auschliessliche->ausschließliche
+auschliesslichen->ausschließlichen
+Auseinadersetzung->Auseinandersetzung
+Auseindersetzung->Auseinandersetzung
+auserdem->außerdem
+auserhalb->außerhalb
+Ausgangpunkt->Ausgangspunkt
+ausgeschalten->ausgeschaltet
+Ausicht->Aussicht
+Ausmass->Ausmaß
+Ausprache->Aussprache
+Auspruch->Ausspruch
+ausschliessen->ausschließen
+ausschliesslich->ausschließlich
+ausschliesst->ausschließt
+Ausschwitz->Auschwitz
+aussen->außen
+Aussenminister->Außenminister
+ausser->außer
+ausserdem->außerdem
+äussere->äußere
+äusseren->äußeren
+äusserer->äußerer
+äusseres->äußeres
+aussergewöhnlich->außergewöhnlich
+aussergewöhnlichen->außergewöhnlichen
+ausserhalb->außerhalb
+ausserirdisch->außerirdisch
+ausserirdische->außerirdische
+ausserirdischen->außerirdischen
+äussern->äußern
+ausserordentlich->außerordentlich
+ausserordentliche->außerordentliche
+ausserordentlichem->außerordentlichem
+ausserordentlichen->außerordentlichen
+ausserordentlicher->außerordentlicher
+ausserordentliches->außerordentliches
+äusserst->äußerst
+äusserste->äußerste
+äussersten->äußersten
+äusserte->äußerte
+äusserten->äußerten
+Äusserung->Äußerung
+Äusserungen->Äußerungen
+aussschliesslich->ausschließlich
+aussschließlich->ausschließlich
+außschließlich->ausschließlich
+Austattung->Ausstattung
+Austellung->Ausstellung
+Austellungen->Ausstellungen
+Austerben->Aussterben
+Auszeichung->Auszeichnung
+Auszeichungen->Auszeichnungen
+auszuschliessen->auszuschließen
+Author des->Autor des
+authorisieren->autorisieren
+authorisiert->autorisiert
+Authorisierung*->Autorisierung*
+Authorität->Autorität
+dem Autoren->dem Autor
+des Autoren->des Autors
+vom Autoren->vom Autor
+Babies->Babys
+bafand->befand
+Balett->Ballett
+bassierend->basierend
+Batallion->Bataillon
+Battaillon->Bataillon
+Battallion->Bataillon
+Bauerhof->Bauernhof
+Bauerhöfe->Bauernhöfe
+bedeudend->bedeutend
+bedeudende->bedeutende
+bedeudenden->bedeutenden
+bedeudender->bedeutender
+bedeudendes->bedeutendes
+bedeudet->bedeutet
+bedeudete->bedeutete
+bedeutendeste->bedeutendste
+bedeutenste->bedeutendste
+bedeutensten->bedeutendsten
+bedeutenster->bedeutendster
+bedeutenstes->bedeutendstes
+bedeutesten->bedeutendsten
+Bedinung->Bedingung/Bedienung
+Bedürfniss->Bedürfnis
+beeinflußen->beeinflussen
+Beeinflußung->Beeinflussung
+beeinhalten->beinhalten
+beeinhaltet->beinhaltet
+befindet auf->befindet sich auf
+befindet ein*->befindet sich ein*
+befindet in->befindet sich in
+begang->beging,begann
+beherrbergt->beherbergt
+beherschen->beherrschen
+beherscht->beherrscht
+beherschte->beherrschte
+beidemale->beide Male
+beim dem->bei dem,beim
+beim der->bei der,beim,bei dem
+beindrucken->beeindrucken
+beinflussen->beeinflussen
+beinflusst*->beeinflusst*
+Beipiel*->Beispiel*
+Beispeil*->Beispiel*
+beispielswiese->beispielsweise
+beispielweise->beispielsweise
+Beitag->Beitrag
+bekammen->bekamen
+Bekenntniss->Bekenntnis
+Benefitz->Benefiz
+bennant->benannt
+Bennenung->Benennung
+Berechung->Berechnung
+bereit gehalten->bereitgehalten
+bereit gestellt->bereitgestellt
+bereit hält->bereithält
+bereit stand->bereitstand
+bereit stehen->bereitstehen
+bereit steht->bereitsteht
+bereit stellt->bereitstellt
+bereit zu halten->bereitzuhalten
+bereit zu stellen->bereitzustellen
+Berfung->Berufung
+Berreich->Bereich
+berücksichtig->berücksichtigt
+berümt->berühmt
+berümte->berühmte
+besass->besaß
+besassen->besaßen
+besitzten->besitzen
+Bespiel->Beispiel
+Bestandsteil->Bestandteil
+Bestandtteil->Bestandteil
+bestbezahltest*->bestbezahlt*
+bestimmmt->bestimmt
+bestreitete->bestritt
+Betreung->Betreuung
+Betriebsystem*->Betriebssystem*
+Bevökerung->Bevölkerung
+Beweiß->Beweis
+bezeichent->bezeichnet
+bezeichet->bezeichnet
+Bezeichung*->Bezeichnung*
+Biograpfie->Biografie
+bischen->bisschen
+Bischofsitz->Bischofssitz
+Bisquit->Biskuit
+bloss->bloß
+blosse->bloße
+blossen->bloßen
+blosser->bloßer
+blosses->bloßes
+an Board->an Bord
+on Bord->an Bord
+bombadieren->bombardieren
+bombadiert->bombardiert
+Bombadierung->Bombardierung
+boolsch->boolesch
+brilliant->brillant
+britsch->britisch
+britsche->britische
+britschen->britischen
+britscher->britischer
+britsches->britisches
+Bronzemedaillie*->Bronzemedaille*
+Bronzemedallie*->Bronzemedaille*
+Bügermeister->Bürgermeister
+Bundesaussenminister->Bundesaußenminister
+Bundesstrasse->Bundesstraße
+Bundestaat*->Bundesstaat*
+Bundestraße->Bundesstraße
+Bundsandstein*->Buntsandstein*
+byzantisch*->byzantinisch*
+chinesiche->chinesische
+chinesichen->chinesischen
+chinesicher->chinesischer
+Chirugie->Chirurgie
+Chonik->Chronik
+Chonist->Chronist
+chonologisch->chronologisch
+cirka->zirka,circa
+dadruch->dadurch
+daduch->dadurch
+danaben->daneben
+danch->danach
+dannach->danach
+deuten daraufhin->deuten darauf hin
+deutet daraufhin->deutet darauf hin
+weisen daraufhin->weisen darauf hin
+weist daraufhin->weist darauf hin
+darüberhinaus->darüber hinaus
+daruf->darauf
+darufhin->daraufhin
+das es sich bei->dass es sich bei
+das es sich um->dass es sich um
+so das der->so dass der
+so das die->so dass die
+so das er->so dass er
+so das sie->so dass sie
+dass heißt->das heißt
+dastellt->darstellt
+dazu gehörige*->dazugehörige*
+Debutalbum->Debütalbum
+Definiton->Definition
+definitv->definitiv
+Defintion->Definition
+deligiert->delegiert
+dem selben->demselben
+denoch->dennoch
+den selben->denselben
+derem->deren
+der Niederlanden->der Niederlande,den Niederlanden
+der selbe->derselbe
+der selben->derselben
+in der USA->in den USA
+des des->des
+des eines->eines,des,der eines,dem eines
+des selben->desselben
+dessem->dessen
+desshalb->deshalb
+desweiteren->des Weiteren
+desweitern->des Weiteren
+des Weitern->des Weiteren
+detailiert*->detailliert*
+detalliert->detailliert
+dezeit->derzeit
+Dezmber->Dezember
+die selbe->dieselbe
+die selben->dieselben
+Differentation->Differentiation
+Dikator->Diktator
+Dikatur->Diktatur
+Diphterie->Diphtherie
+Diphtong->Diphthong
+Dirgent->Dirigent
+Discografie->Diskografie
+Discographie->Diskographie
+diskreminieren->diskriminieren
+diskrimierend*->diskriminierend*
+Diskrimierung*->Diskriminierung*
+Diskusion->Diskussion
+Disseration->Dissertation
+Divison*->Division*
+Divsion*->Division*
+Diziplin*->Disziplin*
+Dollmetscher->Dolmetscher
+dort hin->dorthin
+draufhin->daraufhin
+draussen->draußen
+Dreick->Dreieck
+dreissig->dreißig
+dreissiger->dreißiger
+druch->durch
+druchgeführt->durchgeführt
+duch->durch
+duchführen->durchführen
+Duchführung->Durchführung
+duchgeführt->durchgeführt
+Duchschnitt->Durchschnitt
+durch geführt->durchgeführt
+Durchschlagkraft->Durchschlagskraft
+Durchsetztung->Durchsetzung
+durchstossen->durchstoßen
+Durschnitt->Durchschnitt
+durschnittlich->durchschnittlich
+durschnittliche->durchschnittliche
+durschnittlichen->durchschnittlichen
+ebefalls->ebenfalls
+eben dies->ebendies
+eben diese->ebendiese
+eben diesem->ebendiesem
+eben diesen->ebendiesen
+eben dieser->ebendieser
+eben dieses->ebendieses
+ebendso->ebenso
+ebenfall->ebenfalls
+ebenfals->ebenfalls
+Editon->Edition
+Edtion->Edition
+einem eigenem->einem eigenen
+ihrem eigenem->ihrem eigenen
+seinem eigenem->seinem eigenen
+eigenen sich->eignen sich
+mit einen->mit einem
+eines des->eines der
+Einflüße->Einflüsse
+Einfuss->Einfluss
+einge->einige
+eingen->einigen
+eingentlich->eigentlich
+einger->einiger
+einges->einiges
+eingesetz->eingesetzt
+eingesetzen->eingesetzten
+einigemal->einige Mal
+einklich->eigentlich
+Einordung->Einordnung
+einschliessen->einschließen
+einschliesslich->einschließlich
+einschliesst->einschließt
+einzelen->einzelne
+einzigste->einzige
+einzigster->einziger
+einzigstes->einziges
+ekklektizistisch->eklektizistisch
+ekstasisch->ekstatisch
+elekrisch->elektrisch
+elekronisch->elektronisch
+eleminieren->eliminieren
+eleminiert->eliminiert
+emigiert->emigriert
+emigiriert->emigriert
+Emmigrant->Emigrant
+Emmigration->Emigration
+emmigriert->emigriert
+emprisch->empirisch
+Emsemble->Ensemble
+endeckt->entdeckt
+endeckte->entdeckte
+Endeckung*->Entdeckung*
+enfernt->entfernt
+enfernte->entfernte
+Enfernung->Entfernung
+Enfernungen->Entfernungen
+Engeneering->Engineering
+englsich->englisch
+engültig->endgültig
+enhält->enthält
+enhalten->enthalten
+Enscheidung->Entscheidung
+enstand->entstand
+enstanden->entstanden
+enstehen->entstehen
+ensteht->entsteht
+Enstehung->Entstehung
+entgegen gebracht*->entgegengebracht*
+entgegen gesetzt*->entgegengesetzt*
+entgegen kam->entgegenkam
+entgegen nahm->entgegennahm
+entgegen zu gehen->entgegenzugehen
+entgegen zu kommen->entgegenzukommen
+entgegen zu nehmen->entgegenzunehmen
+entgegen zu schleudern->entgegenzuschleudern
+entgegen zu setzen->entgegenzusetzen
+entgegen zu stellen->entgegenzustellen
+entgegen zu treten->entgegenzutreten
+entgegen zu wirken->entgegenzuwirken
+Entgeld->Entgelt
+entgültig*->endgültig*
+entlang führt*->entlangführt*
+entlang geführt*->entlanggeführt*
+entprechend->entsprechend
+entprechende->entsprechende
+entprechender->entsprechender
+entsant->entsandt
+entscheidene*->entscheidende*
+entscheident->entscheidend
+entschloß->entschloss
+entspechen*->entsprechen*
+entsprechene->entsprechende
+entsprechenen->entsprechenden
+entstandt->entstand
+enwickelt->entwickelt
+enwickelte->entwickelte
+enwickelten->entwickelten
+enwickelter->entwickelter
+enwickeltes->entwickeltes
+Enwicklung->Entwicklung
+Enwicklungen->Entwicklungen
+ereichen->erreichen
+ereicht->erreicht
+ereichte->erreichte
+Ereignise->Ereignisse
+Ereignisen->Ereignissen
+Ereigniss->Ereignis
+Erfog->Erfolg
+erfogreich->erfolgreich
+erfolgslos->erfolglos
+erfolgsversprechend->erfolgversprechend
+Erfurcht->Ehrfurcht
+Ergebniss->Ergebnis
+Erkentnis->Erkenntnis
+Erkentnisse->Erkenntnisse
+erklährt->erklärt
+ermöglich->ermöglicht,ermöglichen
+erorbert->erobert
+errinnern->erinnern
+errinnert->erinnert
+errreichen->erreichen
+errreicht->erreicht
+errreichte->erreichte
+errrichtet->errichtet
+ersmals->erstmals
+dem erstem->dem ersten
+im erstem->im ersten
+erzeilt->erzielt
+erzeilte->erzielte
+erziehlen->erzielen
+erziehlt->erzielt
+estisch->estnisch
+Ettikett*->Etikett*
+dem europäischem->dem europäischen
+im europäischem->im europäischen
+Examplar->Exemplar
+examplarisch->exemplarisch
+exellent->exzellent
+exisitiert->existiert
+Existens->Existenz
+Expediton->Expedition
+experimentiell->experimentell
+Extase->Ekstase
+Fahradtour->Fahrradtour
+fälschlicher Weise->fälschlicherweise
+familär*->familiär*
+Famile->Familie
+Familen*->Familien*
+Famlie*->Familie*
+Februrar->Februar
+Feburar->Februar
+fern geblieben->ferngeblieben
+fern gehalten->ferngehalten
+fern zu halten->fernzuhalten
+Fersehen->Fernsehen
+Ferseh*->Fernseh*
+fertigestellt->fertiggestellt
+festellen->feststellen
+Festellung->Feststellung
+fidet->findet
+Fiedrich->Friedrich
+Flagschiff->Flaggschiff
+Flektion->Flexion
+fliessen->fließen
+fliesst->fließt
+des Flughafen->des Flughafens
+Fluß->Fluss
+Flüße->Flüsse
+fokusieren->fokussieren
+fokusiert->fokussiert
+Fokusierung->Fokussierung
+Foschung->Forschung
+Fotographie->Fotografie,Photographie
+Fotographien->Fotografien,Photographien
+fotographiert->fotografiert
+franösisch*->französisch*
+frantösisch*->französisch*
+franzöisch*->französisch*
+französich*->französisch*
+dem französischem->dem französischen
+einem französischem->einem französischen
+im französischem->im französischen
+Freidrich->Friedrich
+frei gestellt->freigestellt
+Freimauerei->Freimaurerei
+Fremsprache->Fremdsprache
+Friedenschluss->Friedensschluss
+Friedich->Friedrich
+Frima->Firma
+fröhnen->frönen
+Frühjar->Frühjahr
+frühre->frühere
+fuer->für
+füher*->früher*,Führer*
+Fuktion*->Funktion*
+Funier*->Furnier*
+für für->für
+Fuss->Fuß
+Fussball->Fußball
+Fussballer->Fußballer
+Fussballerin->Fußballerin
+Fussballspieler->Fußballspieler
+Fussballspielerin->Fußballspielerin
+Fußballstadium->Fußballstadion
+Fusse->Fuße
+Füsse->Füße
+Füst->Fürst
+gabe es->gab es
+Gallerie->Galerie
+Gallerien->Galerien
+Gallionsfigur->Galionsfigur
+garnicht->gar nicht
+Garnision->Garnison
+Garnision*->Garnison*
+Gebäde->Gebäude
+Gebahren->Gebaren
+gebähren->gebären
+Gebaüde->Gebäude
+Gebaude->Gebäude
+Gebäuder->Gebäude
+gebornen->geborenen
+Gedult->Geduld
+Gedänk*->Gedenk*
+einem geeignetem->einem geeigneten
+Gefäss->Gefäß
+gegebenfalls->gegebenenfalls
+gegen einander->gegeneinander
+gegenüber gestellt->gegenübergestellt
+gegn->gegen
+gegnüber->gegenüber
+gehöhren->gehören
+gehöhrt*->gehört*
+gekührt->gekürt
+gelanden->geladen
+gemäss->gemäß
+gemeinsammen->gemeinsamen
+gemeisam->gemeinsam
+genant->genannt
+genanten->genannten
+Genaral*->General*
+geniessen->genießen
+gennant*->genannt*
+gennannt*->genannt*
+Gerneral*->General*
+gesäht->gesät
+gesammt->gesamt
+gesammten->gesamten
+gesammter->gesamter
+Gesandschaft*->Gesandtschaft*
+Geschichtschreiber->Geschichtsschreiber
+Geschichtschreibung->Geschichtsschreibung
+geschiet->geschieht
+geschlosssen->geschlossen
+gesetztlich->gesetzlich
+Gesichtpunkt->Gesichtspunkt
+gesponsort->gesponsert
+gesteift->gestreift
+gewan->gewann
+gewissermassen->gewissermaßen
+gewunken->gewinkt
+Ghandi->Gandhi
+giebt->gibt
+Giessen->Gießen
+gleichbleiben->gleich bleiben
+gleich zu tun->gleichzutun
+Gogle->Google
+Goldmedaillie*->Goldmedaille*
+Goldmedallie*->Goldmedaille*
+Gothik->Gotik
+gothisch->gotisch
+Grabmahl->Grabmal
+Gradwanderung->Gratwanderung
+Graftschaft*->Grafschaft*
+groesse->größe
+groeße->größe
+gröhlen->grölen
+Grossaufgebot->Großaufgebot
+Grossbritanien->Großbritannien
+Großbritanien->Großbritannien
+Grossbritannien->Großbritannien
+Grossbrittanien->Großbritannien
+Großbrittanien->Großbritannien
+Grossbrittannien->Großbritannien
+Großbrittannien->Großbritannien
+grosse->große
+grösse->größe
+grossem->großem
+einem großem->einem großen
+grossen->großen
+grossenteils->großenteils
+größenteils->größtenteils
+grosser->großer
+grösser->größer
+grössere->größere
+grösserem->größerem
+grösseren->größeren
+grösserer->größerer
+grösseres->größeres
+grosses->großes
+grösste->größte
+Grossteil->Großteil
+grossteils->großteils
+grössten->größten
+grösstenteils->größtenteils
+grösster->größter
+grösstes->größtes
+Gründstück*->Grundstück*
+einem grünem->einem grünen
+Guerrillakampf->Guerillakampf
+Guiness->Guinness
+Guiseppe->Giuseppe
+einem gutem->einem guten
+Güterloh*->Gütersloh*
+Häckchen->Häkchen
+haetten->hätten
+Handelschiff->Handelsschiff
+Handies->Handys
+hahnebüchen->hanebüchen
+hattte->hatte,hatten
+Haupstadt->Hauptstadt
+haupsächlich->hauptsächlich
+Haupstädte->Hauptstädte
+des Haus->des Hauses
+heiratetet->heiratet
+heiss->heiß
+heisser->heißer
+heisst->heißt
+heraus gebracht->herausgebracht
+herausragenste->herausragendste
+Herausvorderung->Herausforderung
+herraus->heraus
+herrausragend->herausragend
+Herrrschaft->Herrschaft
+Herrrscher->Herrscher
+Herschaft->Herrschaft
+Herscher->Herrscher
+hervoragen->hervorragen
+hervoragend->hervorragend
+hervor gegangen*->hervorgegangen*
+hervor ging->hervorging
+hervorragenste->hervorragendste
+Hierachie->Hierarchie
+hierachisch->hierarchisch
+hiess->hieß
+hinaus gehende*->hinausgehende*
+hingegegen->hingegen
+Hintegrund->Hintergrund
+Hintergund->Hintergrund
+hinterliess->hinterließ
+hinterliessen->hinterließen
+hinweg täuschen->hinwegtäuschen
+hinzu gefügt*->hinzugefügt*
+hinzu gekommen*->hinzugekommen*
+Hobbies->Hobbys
+Hochaus->Hochhaus
+Hochäuser->Hochhäuser
+höchst gelegene*->höchstgelegene*
+Hofffnung->Hoffnung
+Hoffung->Hoffnung
+höherere*->höhere*
+höherwertigere*->höherwertige*
+höhren->hören,höheren
+höhrt->hört
+Homage->Hommage
+hunderste*->hundertste*
+idendifiziert->identifiziert
+idenfiziert->identifiziert
+idiopatisch->idiopathisch
+im besonderen Maße->in besonderem Maße
+im Bezug auf->in Bezug auf
+Imbus->Inbus
+im dem->in dem,im
+im den->in den,in dem,ihm den
+im der->in der,im,ihm der
+im deutschsprachigem->im deutschsprachigen
+im einem->in einem
+im großem->in großem,im großen
+im großen Umfang->in großem Umfang
+im hohen Maße->in hohem Maße
+immernoch->immer noch
+immmer->immer
+Impendanz->Impedanz
+im seinem->in seinem
+im selbem->im selben
+inbesondere->insbesondere
+inclusive->inklusive
+Independet->Independent
+indeß->indes
+individiuell->individuell
+Industie->Industrie
+Industriealisierung->Industrialisierung
+in englisch->in Englisch
+inerhalb->innerhalb
+Infantrie->Infanterie
+infiszieren->infizieren
+in Folge->infolge
+in Folge der->infolge der
+in Folge des->infolge des
+in Folge einer->infolge einer
+in Folge eines->infolge eines
+in Folge von->infolge von
+in Folge dessen->infolgedessen,infolge dessen,in dessen Folge
+Ingeneur->Ingenieur
+ingesamt->insgesamt
+Ingredenzien->Ingredienzien
+Inhaltstoff->Inhaltsstoff
+Initation->Initiation,Imitation
+Initative->Initiative
+Initator->Initiator
+Initialie->Initiale
+Initialien->Initialen
+initieren->initiieren
+initiert->initiiert
+Inititative->Initiative
+Iniziative->Initiative
+in mitten->inmitten
+inne gehabt->innegehabt
+inne haben->innehaben
+inne hat->innehat
+inne hatte->innehatte
+inne hatten->innehatten
+Innenaustattung->Innenausstattung
+innnerhalb->innerhalb
+Insbruck->Innsbruck
+in selben Jahr->im selben Jahr
+insgeamt->insgesamt
+insgesammt->insgesamt
+Insitut->Institut
+Insitution->Institution
+in so fern->insofern
+in sofern->insofern
+instandgehalten->instand gehalten,in Stand gehalten
+instandgesetzt->instand gesetzt,in Stand gesetzt
+instandhalten->instand halten,in Stand halten
+instandsetzen->instand setzen,in Stand setzen
+instandzusetzen->instand zu setzen,in Stand zu setzen
+Instituion->Institution
+Instiut->Institut
+Instiution->Institution
+Instutition*->Institution*
+inszinieren->inszenieren
+Inszinierung->Inszenierung
+integiert->integriert
+intelektuell*->intellektuell*
+intenational->international
+intepretiert->interpretiert
+Interese->Interesse
+interesiert->interessiert
+Intergration->Integration
+intergriert->integriert
+Internetpräsens->Internetpräsenz
+interresiert->interessiert
+Interresse->Interesse
+interressiert->interessiert
+Intiative->Initiative
+intressiert->interessiert
+Intrument*->Instrument*
+Inverstor->Investor
+in wie weit->inwieweit
+in wieweit->inwieweit
+inwischen->inzwischen
+irgend ein->irgendein
+irgend eine->irgendeine
+irgend einem->irgendeinem
+irgend einen->irgendeinen
+irgend einer->irgendeiner
+irgend eines->irgendeines
+irgentwie->irgendwie
+irrtümlicher Weise->irrtümlicherweise
+ist meis->ist meist
+ist meisten->ist meistens
+italenisch->italienisch
+italiensch->italienisch
+italiensich->italienisch
+Jägerbatallion->Jägerbataillon
+Jahhundert->Jahrhundert
+Jahhunderte->Jahrhunderte
+Jahhunderts->Jahrhunderts
+des Jahre->des Jahres
+Jahrhudert->Jahrhundert
+Jahrhunder->Jahrhundert
+Jahrundert->Jahrhundert
+Jahrunderte->Jahrhunderte
+Jahrunderts->Jahrhunderts
+Jahrzent->Jahrzehnt
+Jahrzente->Jahrzehnte
+Jahundert->Jahrhundert
+Jahunderte->Jahrhunderte
+Jahunderts->Jahrhunderts
+Jäner->Jänner
+Janur->Januar
+Jarh->Jahr
+Jarhundert->Jahrhundert
+Jarhunderte->Jahrhunderte
+Jarhunderts->Jahrhunderts
+jdoch->jedoch
+jedch->jedoch
+jeoch->jedoch
+jeodch->jedoch
+jeweil->jeweils
+jeweis->jeweils
+Jounalist->Journalist
+Jubiliäum->Jubiläum
+Jungend*->Jugend*
+Justitz->Justiz
+Kabaret->Kabarett
+Kaiserlautern->Kaiserslautern
+Kandidad->Kandidat
+Kanditat->Kandidat
+Kappelle->Kapelle
+Karierre->Karriere
+Karrikaturist->Karikaturist
+karrikieren->karikieren
+Kasette*->Kassette*
+kathegorisch->kategorisch
+Kenntnise->Kenntnis
+Kenntniss->Kenntnis
+Kennzeichnug->Kennzeichnung
+Kentnis->Kenntnis
+Kentnisse->Kenntnisse
+Kirchtum->Kirchturm
+klassich->klassisch
+klassiche->klassische
+klassichen->klassischen
+klassicher->klassischer
+Klink->Klinik
+des Kloster->des Klosters
+km2->km²
+kmh->km/h
+Kofession*->Konfession*
+Kollission*->Kollision*
+Kollonade->Kolonnade
+Komandant->Kommandant
+Komandanten->Kommandanten
+Komando->Kommando
+Komandos->Kommandos
+komerziell->kommerziell
+Komissar->Kommissar
+Komissariat->Kommissariat
+komissarisch->kommissarisch
+Komission->Kommission
+komlett->komplett
+Kommilitionen->Kommilitonen
+Kommision->Kommission
+Kommitee->Komitee
+Kommittee->Komitee
+kommmen->kommen
+Kommunkation->Kommunikation
+Kompentenz->Kompetenz
+Könföderierte->Konföderierte
+Konförderierte->Konföderierte
+könglich->königlich
+Köngreich->Königreich
+Königsreich->Königreich
+Königstum->Königtum
+Konkurenz*->Konkurrenz*
+konkurieren*->konkurrieren*
+konkuriert*->konkurriert*
+könnnen->können,Können
+Konservationslexikon->Konversationslexikon
+Kontak->Kontakt
+konte->konnte
+Kontigent*->Kontingent*
+konventionnell->konventionell
+korregieren->korrigieren
+korregiert->korrigiert
+Krankeit*->Krankheit*
+Krankenaus->Krankenhaus
+Kreuzug*->Kreuzung*,Kreuzzug*
+Kriche->Kirche
+Kriegschiff->Kriegsschiff
+kummulieren->kumulieren
+Kunsstoff*->Kunststoff*
+Kunstaustellung*->Kunstausstellung*
+Kunstoff->Kunststoff
+Kunstoffe->Kunststoffe
+Kurfüst*->Kurfürst*
+kurzeitig*->kurzzeitig*
+läd->lädt
+Landesaustellung->Landesausstellung
+Landesprache->Landessprache
+Landwirschaft->Landwirtschaft
+landwirschaftlich->landwirtschaftlich
+langläufig->landläufig
+Lapalie->Lappalie
+Lassithi->Lasithi
+läst->lässt
+lateinsch->lateinisch
+lateinsche->lateinische
+lateinschen->lateinischen
+lateinscher->lateinischer
+lateinsches->lateinisches
+Lebenstil->Lebensstil
+Lebenweise->Lebensweise
+legänder->legendär
+Leibzig->Leipzig
+Leichathlet*->Leichtathlet*
+Leichnahm->Leichnam
+letze->letzte
+letzem->letztem
+letzen->letzten
+letzendlich->letztendlich
+letzer->letzter
+letzere->letztere
+letzerem->letzterem
+letzeren->letzteren
+letzerer->letzterer
+letzeres->letzteres
+letzes->letztes
+letzlich->letztlich
+letztenendes->letzten Endes
+Lexikas->Lexika
+Liason->Liaison
+liess->ließ
+liesse->ließe
+liessen->ließen
+ließt->er/sie/es liest; ließ; fließt
+Lilliputaner->Liliputaner
+literaisch->literarisch
+literatisch->literarisch
+lizensieren->lizenzieren
+lizensiert->lizenziert
+lizensierte->lizenzierte
+lizensiertem->lizenziertem
+lizensierten->lizenzierten
+lizensierter->lizenzierter
+lizensiertes->lizenziertes
+Lizensierung->Lizenzierung
+los zu werden->loszuwerden
+Louisana->Louisiana
+Lousiana->Louisiana
+Luwig->Ludwig
+Lybien->Libyen
+lybisch->libysch
+lybische->libysche
+lybischem->libyschem
+lybischen->libyschen
+lybischer->libyscher
+lybisches->libysches
+machmal->manchmal
+Manhatan->Manhattan
+Manhatta->Manhattan
+Manhatten->Manhattan
+Manhetten->Manhattan
+Manschaft->Mannschaft
+Manmschaft->Mannschaft
+Mannhattan->Manhattan
+Mannöver->Manöver
+Mannschaf->Mannschaft
+Mannschaftt->Mannschaft
+Mannshcaft->Mannschaft
+Mansardach->Mansarddach
+Mansardendach->Mansarddach
+Mansnchaften->Mannschaft
+Manssarddach->Mansarddach
+marrokanisch*->marokkanisch*
+marrokkanisch*->marokkanisch*
+Marrokko->Marokko
+Marroko->Marokko
+Marylin->meist Marilyn
+Marytrium->Martyrium
+Märtyrium->Martyrium
+Maschiene->Maschine
+Maschienen->Maschinen
+mässig->mäßig
+mässige->mäßige
+mässigem->mäßigem
+mässigen->mäßigen
+mässiger->mäßiger
+mässiges->mäßiges
+Mass->Maß
+Massgabe->Maßgabe
+Massgaben->Maßgaben
+massgebend->maßgebend
+massgebende->maßgebende
+massgebendem->maßgebendem
+massgebenden->maßgebenden
+massgebender->maßgebender
+massgebendes->maßgebendes
+massgeblich->maßgeblich
+massgebliche->maßgebliche
+massgeblichem->maßgeblichem
+massgeblichen->maßgeblichen
+massgeblicher->maßgeblicher
+massgebliches->maßgebliches
+masslos->maßlos
+masslose->maßlose
+masslosen->maßlosen
+massloser->maßloser
+massloses->maßloses
+Massnahme->Maßnahme
+Massnahmen->Maßnahmen
+Matraze->Matratze
+Matritze->Matrize,Matrix
+Maximillian->meist Maximilian
+Medailie->Medaille
+Medaillie->Medaille
+Medailliengewinner->Medaillengewinner
+Medailliengewinnerin->Medaillengewinnerin
+Medallie->Medaille
+Medalliengewinner->Medaillengewinner
+Medalliengewinnerin->Medaillengewinnerin
+medizinsch->medizinisch
+medizisch->medizinisch
+medizische->medizinische
+medizischem->medizinischem
+medizischen->medizinischen
+medizischer->medizinischer
+medizisches->medizinisches
+Meerespiegel->Meeresspiegel
+Meeresspegel->Meeresspiegel
+mehere->mehrere
+meheren->mehreren
+meherer->mehrerer
+mehre->meist mehrere
+mehren->gelegentlich mehreren
+mehrer->häufig mehrerer,mehrere
+mehrerere->mehrere
+mehrtätige->mehrtägige
+meisst->meist
+meißt->meist
+meißten->meisten
+meißtens->meistens
+meistbesuchtesten->meistbesuchten
+meist gelesene*->meistgelesene*
+meist gesehene*->meistgesehene*
+meist gesuchte*->meistgesuchte*
+meits->meist
+mengemässig->mengenmäßig
+mengenmässig->mengenmäßig
+Mensche->Menschen
+Menscheit->Menschheit
+Menschens->Menschen
+Meßgerät->Messgerät
+Meßgeräte->Messgeräte
+Messystem->Messsystem
+Meßsystem->Messsystem
+Metallegierung->Metalllegierung
+Metereologe->Meteorologe
+Metereologie->Meteorologie
+metereologisch->meteorologisch
+Meterologie->Meteorologie
+meterologisch->meteorologisch
+Mettal->Metall
+mhd->mittelhochdeutsch
+Micheal->meist Michael
+Miglied->Mitglied
+Milionen->Millionen
+Militärdikatur->Militärdiktatur
+Millarde->Milliarde
+Millarden*->Milliarden*
+Millenium->Millennium
+Millione->Millionen
+Millitär->Militär
+millitärisch->militärisch
+eine Millionen->eine Million
+Millon->Million
+Millonen->Millionen
+Miltär->Militär
+miltärisch->militärisch
+Miltitär->Militär
+miltitärisch->militärisch
+minimalste->minimale
+minimalster->minimaler
+minimalstes->minimales
+Ministerpäsident->Ministerpräsident
+mit einander->miteinander
+Mitgleid->Mitglied
+mitlerweile->mittlerweile
+mittlerweilen->mittlerweile
+Mitlgiled->Mitglied
+Mitlied->Mitglied
+mit samt->mitsamt
+Mittelater->Mittelalter
+mittelaterlich->mittelalterlich
+mittelständige->mittelständische
+mittelständigen->mittelständischen
+mittelständiger->mittelständischer
+mittelständiges->mittelständisches
+Mitteralter->Mittelalter
+mitteralterlich->mittelalterlich
+Mitterand->Mitterrand
+Mittglied->Mitglied
+Mittschnitt->Mitschnitt
+mnachmal->manchmal
+Mobiletelefon->Mobiltelefon
+moeglich->möglich
+moegliche->mögliche
+moeglichen->möglichen
+moeglicher->möglicher
+moegliches->mögliches
+möglicht->möglich,möglichst
+mordern->modern
+morderne->moderne
+mordernen->modernen
+morderner->moderner
+mordernes->modernes
+morgentlich*->morgendlich*
+morgends->morgens
+muß->muss
+mußte->musste
+mußten->mussten
+Museeum->Museum
+mutmasslich->mutmaßlich
+mutmassliche->mutmaßliche
+mutmasslichem->mutmaßlichem
+mutmasslichen->mutmaßlichen
+mutmasslicher->mutmaßlicher
+mutmassliches->mutmaßliches
+nachdem Krieg->nach dem Krieg
+Nachkommens->Nachkommen
+nächst gelegene*->nächstgelegene*
+nächst größere*->nächstgrößere*
+nächst höhere*->nächsthöhere*
+nächst kleinere*->nächstkleinere*
+nächst niedrigere*->nächstniedrigere*
+nächst tiefere*->nächsttiefere*
+Nahaufname->Nahaufnahme
+nahegelegenste->nächstgelegene
+naheste->nächste
+nahesten->nächsten
+nähmlich->nämlich
+namenlich->namentlich
+namenslos->namenlos
+des Names->des Namens
+Namne->Namen
+narzistisch->narzisstisch
+Natiomnal*->National*
+Nazionalsoz*->Nationalsoz*
+nciht->nicht
+Nervösität->Nervosität
+nich->nicht
+die Niederlanden->die Niederlande
+niedersächisch->niedersächsisch
+niedersächsiche->niedersächsische
+niedersächsichen->niedersächsischen
+niedrieg->niedrig
+Niesche->Nische
+nihct->nicht
+nix->nichts
+nocheinmal->noch einmal
+nordeutsch->norddeutsch
+Nordeutschland->Norddeutschland
+nordlich->nördlich
+nördöstlich*->nordöstlich*
+nördwestlich*->nordwestlich*
+normanisch*->normannisch*
+notwenig*->notwendig*
+numehr->nunmehr
+Numerus Clausus->Numerus clausus
+objekiv->objektiv
+obrige->obige
+obrigen->obigen
+obriger->obiger
+offizell*->offiziell*
+Offizer->Offizier
+offiziel->offiziell
+offiziele*->offizielle*
+offziell->offiziell
+offzielle->offizielle
+ofiziell->offiziell
+Olympiamedaillie*->Olympiamedaille*
+Olympiamedallie*->Olympiamedaille*
+Olympische Bronzemedaille->olympische Bronzemedaille
+Olympische Goldmedaille->olympische Goldmedaille
+Olympische Silbermedaille->olympische Silbermedaille
+Omlett->Omelett
+optimalste->optimale
+optimalster->optimaler
+optimalstes->optimales
+Ordnug->Ordnung
+Ordung->Ordnung
+Orgeon->Oregon
+Organistion->Organisation
+Organsiation->Organisation
+organsich->organisch
+Organsisation->Organisation
+organisert->organisiert
+orginal->original
+orginale->originale
+orginalen->originalen
+orginell->originell
+orignal->original
+orignell->originell
+Orsteil->Ortsteil
+Orsteile->Ortsteile
+Ortteil->Ortsteil
+ouml->Ö/ö
+Overtüre->Ouvertüre
+öffenlich->öffentlich
+Ökö->Öko
+Östereich->Österreich
+Österrreich->Österreich
+Österreisch->Österreich
+östereichisch*->österreichisch*
+österreichich->österreichisch
+Packet->Paket
+palästinesisch->palästinensisch
+Palete->Palette
+Paleten->Paletten
+Pallete->Palette
+Palleten->Paletten
+Pallette->Palette
+Palletten->Paletten
+paralell->parallel
+Parcour->Parcours
+parralel->parallel
+parrallel->parallel
+Päsident->Präsident
+patroullieren->patrouillieren
+patroulliert->patrouilliert
+Pavillion->Pavillon
+Peleponnes*->Peloponnes*
+Pepperoni->Peperoni
+Perlmut->Perlmutt
+perönlich*->persönlich*
+persöhnlich*->persönlich*
+Persönlichleit->Persönlichkeit
+Philantrop*->Philanthrop*
+Philipinen->Philippinen
+Philipinisch->Philippinisch
+philipinischer->philippinischer
+Philippienen->Philippinen
+Philisoph->Philosoph
+Philisophie->Philosophie
+philisophisch->philosophisch
+Phillipinen->Philippinen
+Philosopie->Philosophie
+Philosph->Philosoph
+Philosphie->Philosophie
+philosphisch->philosophisch
+Philsophie->Philosophie
+philsophisch->philosophisch
+photografiert->fotografiert,photographiert
+piktoresk->pittoresk
+Planze->Pflanze
+Planzen*->Pflanzen*
+Politk->Politik
+Politker->Politiker
+politsch->politisch
+politsche->politische
+politschen->politischen
+politscher->politischer
+politsches->politisches
+poltisch*->politisch*
+portugiesich*->portugiesisch*
+Positon->Position
+postiv->positiv
+prinzipell*->prinzipiell*
+Prinzipen->Prinzipien
+Priveleg->Privileg
+priveligiert->privilegiert
+Priviligien*->Privilegien*
+priviligiert->privilegiert
+Progrom->Pogrom
+projezieren->projizieren
+projeziert->projiziert
+Prophezeihung*->Prophezeiung*
+Provinzhaupstadt->Provinzhauptstadt
+Prozeße->Prozesse
+Psychatrie->Psychiatrie
+pysikalisch->physikalisch
+Quattrologie->Tetralogie
+Ralley->Rallye
+Ralleyfahrer->Rallyefahrer
+rechlich->rechtlich
+Rechtsprache->Rechtssprache
+Rechtspruch->Rechtsspruch
+Rechtssprechung->Rechtsprechung
+Rechtstaat->Rechtsstaat
+rechtstaatlich->rechtsstaatlich
+rechtwinklich->rechtwinklig
+rechtwinkling->rechtwinklig
+rechzeitig->rechtzeitig
+Reeling->Reling
+Reflektion->Reflexion
+regelmässig->regelmäßig
+regelmässige->regelmäßige
+regelmässigen->regelmäßigen
+regelmässiger->regelmäßiger
+regelmässiges->regelmäßiges
+Reichtags*->Reichstags*
+Relgion*->Religion*
+relgiös->religiös
+Religiösität->Religiosität
+Religon->Religion
+Religonen->Religionen
+religös->religiös
+religösen->religiösen
+Relion->Religion
+reliösen->religiösen
+Remineszenz->Reminiszenz
+Rendevous->Rendezvous
+Rennaisance->Renaissance
+Rennaissance->Renaissance
+des Rennes->des Rennens
+Renomee->Renommee
+renomiert->renommiert
+Renomme->Renommee
+repäsentieren->repräsentieren
+repäsentiert->repräsentiert
+Reperatur->Reparatur
+Resourcen->Ressourcen
+Rhytmen->Rhythmen
+rhytmisch->rhythmisch
+rhytmische->rhythmische
+Rhytmus->Rhythmus
+Richtline->Richtlinie
+Richung->Richtung
+rigde->ridge
+rihgt->right
+Riskio->Risiko
+Risko->Risiko
+Rossevelt->Roosevelt
+Rückgrad->Rückgrat
+Rückrad->Rückgrat
+Rückrat->Rückgrat
+russich->russisch
+russiche->russische
+russichen->russischen
+russicher->russischer
+russsich->russisch
+russsisch->russisch
+russsische->russische
+russsischen->russischen
+Rythmen->Rhythmen
+rythmisch->rhythmisch
+rythmische->rhythmische
+Rythmus->Rhythmus
+sächisch->sächsisch
+sächsich->sächsisch
+sächsiche->sächsische
+sächsichen->sächsischen
+Santiago de Compostella->Santiago de Compostela
+Sarkopharg->Sarkophag
+sassen->saßen
+satzungsgemäss->satzungsgemäß
+S-Bahnstation->S-Bahn-Station
+schafte->schaffte
+Schaupiel*->Schauspiel*
+Scheiz->Schweiz
+schillernste*->schillerndste*
+schliessen->schließen
+schliesslich->schließlich
+schliesst->schließt
+Schrifsteller*->Schriftsteller*
+Schriftseller->Schriftsteller
+schweizer->Schweizer
+Seeman->Seemann
+seemänisch->seemännisch
+sehenwert->sehenswert
+Sehenwürdigkeit->Sehenswürdigkeit
+Sehenwürdigkeiten->Sehenswürdigkeiten
+seit dem->seitdem
+seit dem die->seitdem die
+seit dem ein->seitdem ein
+seit dem hat->seitdem hat
+seit dem ist->seitdem ist
+seit dem war->seitdem war
+seperat->separat
+seperate->separate
+seperatem->separatem
+seperaten->separaten
+Seperation->Separation
+Seperatist*->Separatist*
+Septmber->September
+Septmeber->September
+Seriösität->Seriosität
+sicher gestellt->sichergestellt
+sich er sich->er sich
+sicher stellen->sicherstellen
+sicher stellt*->sicherstellt*
+sicher zu stellen->sicherzustellen
+Silbermedaillie*->Silbermedaille*
+Silbermedallie*->Silbermedaille*
+Siluette->Silhouette
+sinvoll->sinnvoll
+Situtation->Situation
+Skagerak->Skagerrak
+sobald wie möglich->so bald wie möglich
+sobald als möglich->so bald als möglich
+sodas->sodass,so dass
+sodaß->sodass,so dass
+sogenante->sogenannte
+sogenanten->sogenannten
+sonder->sondern
+Souveranität->Souveränität
+soweit wie->so weit wie
+Sowietunion->Sowjetunion
+spezialiseren->spezialisieren
+spezialisert*->spezialisiert*
+speziel->speziell
+sponsorte->sponserte
+Spritualität->Spiritualität
+sprituell->spirituell
+Staatstreich->Staatsstreich
+Stadbild->Stadtbild
+Staddteil->Stadtteil
+Stadteil->Stadtteil
+Stadteile->Stadtteile
+Stadteilen->Stadtteilen
+Stadteils->Stadtteils
+Standart->Standard
+Standarts->Standards
+statt fand->stattfand
+statt finden->stattfinden
+statt findet->stattfindet
+statt gegeben->stattgegeben
+Stehgreif->Stegreif
+stellverteten->stellvertreten
+Stellverteter->Stellvertreter
+stiess->stieß
+Stimmulation->Stimulation
+Stömung->Strömung
+Stoss->Stoß
+stossen->stoßen
+Stossfänger->Stoßfänger
+Stossstange->Stoßstange
+stösst->stößt
+Strasse->Straße
+strukur*->struktur*
+subsummieren->subsumieren
+subsummiert->subsumiert
+sumieren->summieren
+sumiert->summiert
+svw->svw., bzw., so viel wie
+symetrisch->symmetrisch
+symphatisiert->sympathisiert
+Synomym->Synonym
+Synomyn->Synonym
+Syphon->Siphon
+Sytem->System
+Sytematik->Systematik
+sytematisch->systematisch
+Tag- und Nachtgleiche->Tagundnachtgleiche,Tag-und-Nacht-Gleiche
+Taiwanese->Taiwaner
+Taiwanesen->Taiwaner
+tasächlich->tatsächlich
+tatächlich->tatsächlich
+Teakwondo->Taekwondo
+teiweise->teilweise
+Temparatur->Temperatur
+tendentiell*->tendenziell*
+Terasse->Terrasse
+Terassen->Terrassen
+Terrabyte->Terabyte
+Tocher->Tochter
+Tolleranz->Toleranz
+tollerieren->tolerieren
+tolleriert->toleriert
+Tradion*->Tradition*
+traditionel->traditionell
+Traditon*->Tradition*
+Tradtion*->Tradition*
+Trainig*->Training*
+Transskript->Transkript
+Triologie->Trilogie
+Triumpf->Triumph
+trotzdessen->trotzdem
+trozdem->trotzdem
+Tryptichon->Triptychon
+Triptichon->Triptychon
+Tryptychon->Triptychon
+Tunier->Turnier
+Turismus->Tourismus
+Turist->Tourist
+U-Bahnnetz->U-Bahn-Netz
+U-Bahnstation->U-Bahn-Station
+U-Bahntunnel->U-Bahn-Tunnel
+überarbeitetet->überarbeitet
+überlegende->überlegene
+überlegenden->überlegenen
+überlicherweise->üblicherweise
+Überwachungstaat->Überwachungsstaat
+U-Bootkrieg->U-Boot-Krieg
+umbennen->umbenennen
+umbennenen->umbenennen
+umbennennen->umbenennen
+umbennant->umbenannt
+Umbennennung->Umbenennung
+Umbennenung->Umbenennung
+Umbennung->Umbenennung,Umnennung
+umd->und,um
+Umgangsprache->Umgangssprache
+umgangsprachlich->umgangssprachlich
+umgangsprachliche->umgangssprachliche
+umgangsprachlicher->umgangssprachlicher
+umgenannt->umbenannt
+umittelbar->unmittelbar
+umstrittend*->umstritten*
+umzubennen->umzubenennen,umzunennen
+Unabhängikeit->Unabhängigkeit
+Unabhängkeit->Unabhängigkeit
+unabhänig->unabhängig
+Unabhänigkeit->Unabhängigkeit
+unauthorisiert->unautorisiert
+unbenannt wurde->umbenannt wurde
+und sowie->und/sowie
+und und->und
+Unfang->Umfang
+ungekehrt->umgekehrt
+Univerität->Universität
+Universiät->Universität
+Universtät->Universität
+Universtität->Universität
+unsymetrisch->unsymmetrisch
+unteranderem->unter anderem
+Untergund->Untergrund
+Untericht->Unterricht
+unterichtet->unterrichtet
+unteriridisch->unterirdisch
+Unternehmes*->Unternehmens*
+Unternehms*->Unternehmens*
+unterstüzt->unterstützt
+Unterstüzung->Unterstützung
+Unversität->Universität
+unwegbar->unwägbar,unwegsam
+Urprung->Ursprung
+urprünglich*->ursprünglich*
+ürsprünglich*->ursprünglich*
+urspünglich*->ursprünglich*
+Ursurpator->Usurpator
+us-amerikanischen->US-amerikanischen,amerikanischen
+usprünglich*->ursprünglich*
+variert->variiert
+varrieren->variieren
+Vehrkehr*->Verkehr*
+Vekehr*->Verkehr*
+venezuelanisch*->venezolanisch*
+venizianisch*->venezianisch*
+verabeitet->verarbeitet
+Verabeitung*->Verarbeitung*
+veraltert*->veraltet*
+verantworlich*->verantwortlich*
+Veranwtortung->Verantwortung
+Verbauch*->Verbrauch*
+verbeitet*->verbreitet*
+Verbeitung*->Verbreitung*
+verbreiteste*->verbreitetste*
+verbreiteteste*->verbreitetste*
+vereingt*->vereinigt*
+vereiningt->vereinigt
+vergleichweise->vergleichsweise
+vergößert*->vergrößert*
+Vergößerung->Vergrößerung
+vergrössern->vergrößern
+vergrössert->vergrößert
+vergrösserte->vergrößerte
+vergrösserten->vergrößerten
+vergrösserter->vergrößerter
+Vergrösserung->Vergrößerung
+verhaeltnismaessig->verhältnismäßig
+verhältnismässig->verhältnismäßig
+verheiratetet->verheiratet
+verkündetet->verkündet
+verliess->verließ
+veröffendlicht->veröffentlicht
+Veröffendlichung->Veröffentlichung
+veröffentlich->veröffentlicht
+verplichtet->verpflichtet
+verschiedende*->verschiedene*
+verschiedendste*->verschiedenste*
+Verschleiss->Verschleiß
+verschohnen->verschonen
+verspühren->verspüren
+verspührt->verspürt
+Verständis->Verständnis
+Vertäge->Verträge
+vertaglich->vertraglich
+Verteidung->Verteidigung
+Verwaltungsitz->Verwaltungssitz
+Verwandschaft->Verwandtschaft
+verwandschaftlich*->verwandtschaftlich*
+Vetrag->Vertrag
+Veträge->Verträge
+vetraglich->vertraglich
+vetraut->vertraut
+vieleicht->vielleicht
+vom dem->von dem,vom
+vom der->von der,vom,der
+von einander->voneinander
+getrennt von einander->getrennt voneinander
+unabhängig von einander->unabhängig voneinander
+von einander entfernt->voneinander entfernt
+von einander getrennt->voneinander getrennt
+von einander unterscheiden->voneinander unterscheiden
+von einander unterschieden->voneinander unterschieden
+von einander zu->voneinander zu
+von nöten->vonnöten,z. B. vonnöten sein
+von statten->vonstatten
+von von->von
+vorallem->vor allem
+vorallen->vor allem
+vor allen in->vor allem in
+voran bringen->voranbringen
+Vorang->Vorrang
+voran gegangen*->vorangegangen*
+vorangig->vorrangig
+voran zu bringen->voranzubringen
+voran zu treiben->voranzutreiben
+Vorausetzung->Voraussetzung
+Vorausetzungen->Voraussetzungen
+voraus gegangen*->vorausgegangen*
+vorausichtlich->voraussichtlich
+Vorfahrens->Vorfahren
+Vorgesetze->Vorgesetzte
+vorkommene->vorkommende
+Vormachtsstellung->Vormachtstellung
+vorranging->vorrangig
+vorraus*->voraus*
+vorrüber*->vorüber*
+vorweg genommen*->vorweggenommen*
+Wachholder->Wacholder
+wachesen->wachsen
+währe->wäre
+währendessen->währenddessen
+wahr genommen->wahrgenommen
+Walfahrer->Wallfahrer
+Walfahrt->Wallfahrt
+Walfahrtskirche->Wallfahrtskirche
+Walfahrtsort->Wallfahrtsort
+wärend->während
+Warheit->Wahrheit
+warscheinlich->wahrscheinlich
+Webblog*->Weblog*
+Webpräsens->Webpräsenz
+Wehrmutstropfen->Wermutstropfen
+weiss->weiß
+Weisswein->Weißwein
+einem weiterem->einem weiteren
+im weiterem->im weiteren
+weiterere->weitere
+weitereren->weiteren
+weitesgehend->weitestgehend
+Weltanschaung->Weltanschauung
+Wepräsenz->Webpräsenz
+wesendlich->wesentlich
+im Wesentlichem->im Wesentlichen
+wichig->wichtig
+wichtigeste->wichtigste
+Widerstandkämpfer->Widerstandskämpfer
+widerum->wiederum
+Wiedererichtung->Wiedererrichtung
+wieder kehrend*->wiederkehrend*
+Wiedersacher->Widersacher
+wiedersetzen->widersetzen
+wiederspiegeln->widerspiegeln
+wiederspiegelt->widerspiegelt
+wiederspiegelte->widerspiegelte
+wiederspiegelten->widerspiegelten
+wiedersprechen->widersprechen
+wiedersprechend->widersprechend
+wiedersprechende->widersprechende
+Wiederspruch->Widerspruch
+Wiedersprüche->Widersprüche
+wiedersprüchlich->widersprüchlich
+wiedersprüchliche->widersprüchliche
+wiedersprüchlichen->widersprüchlichen
+Wiederstand->Widerstand
+Wiederstandskampf->Widerstandskampf
+wiederstehen->widerstehen
+wiederzuspiegeln->widerzuspiegeln
+Wihelm->Wilhelm
+Wikipeda->Wikipedia
+Wikpedia->Wikipedia
+wirtschaflich->wirtschaftlich
+wissenschaflich->wissenschaftlich
+wissenschafltich->wissenschaftlich
+Wissentschaft->Wissenschaft
+wissentschaftlich->wissenschaftlich
+Wochende->Wochenende
+woduch->wodurch
+Wolfang->Wolfgang
+wurd->wurde
+wurde wurde->wurde
+Würtemberg->Württemberg
+würtembergische->württembergische
+zahreich->zahlreich
+zeimlich->ziemlich
+der Zeit seines Lebens->der zeit seines Lebens
+er Zeit seines Lebens->er zeit seines Lebens
+sie Zeit ihres Lebens->sie zeit ihres Lebens
+war Zeit ihres Lebens->war zeit ihres Lebens
+war Zeit seines Lebens->war zeit seines Lebens
+zeitgenösisch->zeitgenössisch
+zeitgenössich->zeitgenössisch
+zerissen->zerrissen
+Ziffernblatt->Zifferblatt
+Zohne->Zone
+zu allererst->zuallererst
+zuammen->zusammen
+Zuammenhang->Zusammenhang
+zueigen->zu eigen
+zuende->zu Ende
+zu Folge->zufolge,zur Folge
+zufrieden geben->zufriedengeben
+zugrundeliegen->zugrunde liegen,zu Grunde liegen
+zugrundeliegt->zugrunde liegt,zu Grunde liegt
+zu letzt->zuletzt
+zum dem->zu dem,zum
+zum den->zu den,zu dem,zum
+zum erstem->zum ersten
+zumindestens->zumindest
+in zunehmenden Maße->in zunehmendem Maße
+mit zunehmenden Alter->mit zunehmendem Alter
+zunehmends->zunehmend
+zur der->zu der,zur
+zur dieser->zu dieser
+zur einem->zu einem
+zur einer->zu einer,zur
+zur ihr->zu ihr
+zur ihrem->zu ihrem
+zur ihren->zu ihren
+zur ihrer->zu ihrer,zur
+zur seiner->zu seiner,zur
+zurecht->zurecht
+zurecht finden->zurechtfinden
+zurecht kam->zurechtkam
+zurecht kommen->zurechtkommen
+zurecht kommt->zurechtkommt
+zurecht zu finden->zurechtzufinden
+zurecht zu kommen->zurechtzukommen
+zurfolge->zur Folge,zufolge
+zurück ge*->zurückge*
+zurück gegangen*->zurückgegangen*
+zurück blicken->zurückblicken
+zurück erobert->zurückerobert
+zurück ging->zurückging
+zurück greif*->zurückgreif*
+zurück kehrte->zurückkehrte
+zurück trat->zurücktrat
+zurück verfolgen->zurückverfolgen
+zurück verfolgt->zurückverfolgt
+zurück ziehen->zurückziehen
+zurück zog->zurückzog
+zurück zu bekommen->zurückzubekommen
+zurück zu bringen->zurückzubringen
+zurück zu drängen->zurückzudrängen
+zurück zu erobern->zurückzuerobern
+zurück zu führen->zurückzuführen
+zurück zuführen->zurückzuführen
+zurück zu gewinnen->zurückzugewinnen
+zurück zu holen->zurückzuholen
+zurück zu kehren->zurückzukehren
+zurück zu ziehen->zurückzuziehen
+zusamen->zusammen
+Zusamenhang->Zusammenhang
+zusammen arbeiten->zusammenarbeiten
+zusammen arbeitete->zusammenarbeitete
+zusammen arbeiteten->zusammenarbeiteten
+zusammen gearbeitet->zusammengearbeitet
+zusammen gefasst->zusammengefasst
+zusammen geschlossen*->zusammengeschlossen*
+zusammen schloss*->zusammenschloss*
+zusammen zu arbeiten->zusammenzuarbeiten
+zusammen zu schließen->zusammenzuschließen
+zusammmen->zusammen
+zusätlich->zusätzlich
+zusehens->zusehends
+zustandegekommen->zustande gekommen,zu Stande gekommen
+zustandekam->zustande kam,zu Stande kam
+zustandekommt->zustande kommt,zu Stande kommt
+zustätzlich->zusätzlich
+zu teil werden->zuteilwerden
+zu teil wird->zuteilwird
+zu teil wurde->zuteilwurde
+zu zu->zu,zuzu
+zu zuordnen*->zuzuordnen*
+zu zuwenden*->zuzuwenden*
+Zweidrittel->zwei Drittel
+Zweidrittel-Mehrheit->Zweidrittelmehrheit
+Zweiliga*->Zweitliga*
+dem zweitem->dem zweiten
+im zweitem->im zweiten
diff --git a/files/typos-en.txt b/files/typos/typos-en.txt
index 85c72ce..74fbd08 100644
--- a/files/typos-en.txt
+++ b/files/typos/typos-en.txt
@@ -3,6 +3,7 @@ andriod->android
# The remainder of this file contains misspellings from
# http://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
#
# The content is available under the
# "Creative Commons Attribution-ShareAlike License"
@@ -2774,8 +2775,7 @@ modle->model
moent->moment
moeny->money
mohammedans->muslims
-moil->mohel
-moil->soil
+moil->mohel,soil
moleclues->molecules
momento->memento
monestaries->monasteries
@@ -3543,8 +3543,7 @@ refereneced->referenced
refereneces->references
referiang->referring
refering->referring
-refernce->reference
-refernce->references
+refernce->reference,references
refernces->references
referrence->reference
referrences->references
diff --git a/files/typos/typos-es.txt b/files/typos/typos-es.txt
new file mode 100644
index 0000000..af2bccb
--- /dev/null
+++ b/files/typos/typos-es.txt
@@ -0,0 +1,733 @@
+# This file contains a number of common Spanish typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://es.wikipedia.org/wiki/Wikipedia:Lista_de_errores_ortogr%C3%A1ficos_comunes/M%C3%A1quinas
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+absorver->absorber
+absorviendo->absorbiendo
+aca->acá
+academica->académica
+academicamente->académicamente
+academico->académico
+accion->acción
+aceptacion->aceptación
+acetado->aceptado
+ademas->además
+administracion->administración
+aerea->aérea
+aereo->aéreo
+aficion->afición
+aficcion->afición
+aficción->afición
+ahi->ahí
+al Cairo->a El Cairo
+album->álbum
+alevin->alevín
+algun->algún
+alli->allí
+alla->allá
+al rededor->alrededor
+aprobechar->aprovechar
+aqui->aquí
+arabe->árabe
+arbol->árbol
+area->área
+articulacion->articulación
+asi->así
+atencion->atención
+atlantico->atlántico
+automovil->automóvil
+avion->avión
+azucar->azúcar
+bibliografia->bibliografía
+bién->bien
+Bogota->Bogotá
+Brasilero->brasileño
+Brasilera->brasileña
+buho->búho
+cadaver->cadáver
+cafe->café
+cafeteria->cafetería
+camaleon->camaleón
+camara->cámara
+cancion->canción
+candadear->candear
+caracter->carácter
+caracteristica->característica
+carroceria->carrocería
+catastrofe->catástrofe
+catastrofica->catastrófica
+catastrofico->catastrófico
+categoria->categoría
+cién->cien
+CD's->CD
+CDs->CD
+cogeran->cogerán
+cogia->cogía
+cogian->cogían
+cojer->coger
+cojen->cogen
+cojerán->cogerán
+cojía->cogía
+cojia->cogía
+cojían->cogían
+cojió->cogió
+companía->compañía
+compañia->compañía
+compasion->compasión
+comun->común
+comunmente->comúnmente
+conección->conexión
+cono urbano->conurbano
+consideracion->consideración
+constituída->constituida
+constituído->constituido
+construído->construido
+construír->construir
+continuan->continúan
+contínuo->continuo
+convirtio->convirtió
+cortesmente->cortésmente
+cronologica->cronológica
+cronologicamente->cronológicamente
+cronologico->cronológico
+da a lugar a->da lugar a
+dar a lugar a->dar lugar a
+daría a lugar a->daría lugar a
+dá->da
+definio->definió
+del Cairo->de El Cairo
+del interfaz->de la interfaz
+delfin->delfín
+desconto->descontó
+desovediente->desobediente
+deshechar->desechar
+deshechando->desechando
+despues->después
+dia->día
+dias->días
+dieciseis->dieciséis
+diéz->diez
+dificil->difícil
+dificilmente->difícilmente
+dio a lugar a->dio lugar a
+dió->dio
+discusion->discusión
+disolucion->disolución
+distorción->distorsión
+distorcionado->distorsionado
+distribuído->distribuido
+duodecimo->duodécimo
+e hielo->y hielo
+e hierro->y hierro
+e iones->y iones
+ebano->ébano
+eclesiastico->eclesiástico
+eclesiasticos->eclesiásticos
+el fue->él fue
+el interfaz->la interfaz
+el Osasuna->Osasuna
+embarcacion->embarcación
+enbarcacion->embarcación
+enbarcación->embarcación
+empezo->empezó
+enlaze->enlace
+eolico->eólico
+equalización->ecualización
+equalizador->ecualizador
+equalizar->ecualizar
+espiritu->espíritu
+estan->están
+estandard->estándar
+estándard->estándar
+etc...->etc.
+etimologia->etimología
+exámen->examen
+examenes->exámenes
+exitar->excitar
+exito->éxito
+exemplo->ejemplo
+explendor->esplendor
+extrangero->extranjero
+estranjero->extranjero
+estrangero->extranjero
+extricta->estricta
+extricto->estricto
+extrictamente->estrictamente
+espia->espía
+esprecion->expresión
+espreción->expresión
+espresion->expresión
+espresión->expresión
+expresion->expresión
+facil->fácil
+facilmente->fácilmente
+fanatica->fanática
+fanaticamente->fanáticamente
+fanatico->fanático
+fé->fe
+ficcion->ficción
+fisica->física
+fluído->fluido
+fricion->fricción
+frición->fricción
+friccion->fricción
+fucion->fusión
+fución->fusión
+fué->fue
+fuí->fui
+funcion->función
+fusion->fusión
+futbol->fútbol
+futil->fútil
+garage->garaje
+guión->guion
+Guipuzcoa->Guipúzcoa
+gustaria->gustaría
+Gutierrez->Gutiérrez
+habia->había
+haiga->haya
+habian->habían
+hechar->echar
+hechado->echado
+herbivoro->herbívoro
+herviboro->herbívoro
+hervíboro->herbívoro
+hervivoro->herbívoro
+hervívoro->herbívoro
+hermita->ermita
+heroe->héroe
+heróica->heroica
+heróico->heroico
+hibridización->hibridación
+hinduísmo->hinduismo
+hinduísta->hinduista
+homogenea->homogénea
+homogeneo->homogéneo
+hormigon->hormigón
+ideologia->ideología
+ideologica->ideológica
+ideologicamente->ideológicamente
+ideologico->ideológico
+imágen->imagen
+imagenes->imágenes
+IMDB->IMDb
+incluído->incluido
+incluír->incluir
+indice->índice
+interface->interfaz
+interperie->intemperie
+inutil->inútil
+invasion->invasión
+israeli->israelí
+israelies->israelíes
+jardin->jardín
+jente->gente
+jóven->joven
+judia->judía
+judias->judías
+judio->judío
+judios->judíos
+Km->km
+km2->km²
+lampara->lámpara
+le hecha->le echa
+leido->leído
+leon->león
+lider->líder
+linea->línea
+lineas->líneas
+linia->línea
+llendo->yendo
+llevada acabo->llevada a cabo
+llevado acabo->llevado a cabo
+llevaron acabo->llevaron a cabo
+llevó acabo->llevó a cabo
+logica->lógica
+logicamente->lógicamente
+logico->lógico
+lo hecha->lo echa
+lonjeva->longeva
+lonjevo->longevo
+mecanica->mecánica
+mecanicamente->mecánicamente
+mecanico->mecánico
+magica->mágica
+magico->mágico
+martir->mártir
+maxima->máxima
+maximo->máximo
+mayoria->mayoría
+mayuscula->mayúscula
+mayusculo->mayúsculo
+metodologia->metodología
+Mexico->México
+míl->mil
+minima->mínima
+minimo->mínimo
+minoria->minoría
+minuscula->minúscula
+minusculo->minúsculo
+mitologia->mitología
+mitologica->mitológica
+mitologico->mitológico
+mitomana->mitómana
+mitomania->mitomanía
+mitomano->mitómano
+monton->montón
+movil->móvil
+murciegalo->murciélago
+murciégalo->murciélago
+murio->murió
+musica->música
+nacio->nació
+nadien->nadie
+ningun->ningún
+oceano->océano
+olimpica->olímpica
+olimpicamente->olímpicamente
+olimpico->olímpico
+operacion->operación
+oraculo->oráculo
+órden->orden
+organica->orgánica
+organico->orgánico
+organo->órgano
+orígen->origen
+origenes->orígenes
+osea->o sea
+oceano pacifico->océano pacífico
+ONG's->ONG
+ONGs-> ONG
+OVNI's->OVNI
+OVNIs->OVNI
+pagina->página
+pais->país
+paparazzis->paparazzi
+participacion->participación
+pasion->pasión
+pelicula->película
+peloton->pelotón
+perfíl->perfil
+persuación->persuasión
+politica->política
+politicamente->políticamente
+politico->político
+por contra-> por el contrario
+practicamente->prácticamente
+prerequisito->prerrequisito
+pre-requisito->prerrequisito
+preveer->prever
+prevencion->prevención
+programacion->programación
+promocion->promoción
+protejer->proteger
+publicamente->públicamente
+quiza->quizá
+quizas->quizás
+rapido->rápido
+rapida->rápida
+regilla->rejilla
+remplazar->reemplazar
+republica->república
+resolucion->resolución
+restaurant->restaurante
+revizado->revisado
+revizar->revisar
+revolucion->revolución
+rocin->rocín
+ruído->ruido
+sacerdotiza->sacerdotisa
+sazon->sazón
+se a->se ha
+séis->seis
+segun->según
+sera->será
+serpentin->serpentín
+sinembargo->sin embargo
+sinfin->sinfín
+slogan->eslogan
+sóla->sola
+sólamente->solamente
+solucion->solución
+stándard->estándar
+subrraya->subraya
+subrrayado->subrayado
+subrrayar->subrayar
+superfície->superficie
+supérflua->superflua
+tagea->tajea
+talvez->tal vez
+tambien->también
+tanbien->también
+tanbién->también
+tecnica->técnica
+tecnicamente->técnicamente
+tecnico->técnico
+tí->ti
+tia->tía
+tio->tío
+tipica->típica
+tipicamente->típicamente
+tipico->típico
+tradució->tradujo,traducción
+traducion->traducción
+tradución->traducción
+traduccion->traducción
+traf->tráf
+tunel->túnel
+ubicacion->ubicación
+ultimamente->últimamente
+ultimo->último
+ultimos->últimos
+un interfaz->una interfaz
+undecimo->undécimo
+unica->única
+unicamente->únicamente
+unico->único
+util->útil
+vease->véase
+veintidos->veintidós
+veintiseis->veintiséis
+veintitres->veintitrés
+vision->visión
+via->vía
+vió->vio
+watios->vatios
diff --git a/files/typos/typos-hu.txt b/files/typos/typos-hu.txt
new file mode 100644
index 0000000..e0586bf
--- /dev/null
+++ b/files/typos/typos-hu.txt
@@ -0,0 +1,431 @@
+# This file contains a number of common Hungarian typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://hu.wikipedia.org/wiki/Szerkeszt%C5%91:AntiVandal/Hiba
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+0-át->0-t
+1.-én->1-jén
+10.-én->10-én
+11.-én->11-én
+12.-én->12-én
+13.-án->13-án
+14.-én->14-én
+15.-én->15-én
+16.-án->16-án
+17.-én->17-én
+18.-án->18-án
+19.-én->19-én
+1-e->1-je
+1-el->1-gyel
+1-én->1-jén
+2.-án->2-án
+20.-án->20-án
+21.-én->21-én
+22.-én->22-én
+23.-án->23-án
+24.-én->24-én
+25.-én->25-én
+26.-án->26-án
+27.-én->27-én
+28.-án->28-án
+29.-én->29-én
+2-őt->2-t
+3.-án->3-án
+30.-án->30-án
+31.-én->31-én
+4.-én->4-én
+5.-én->5-én
+6.-án->6-án
+7.-én->7-én
+8.-án->8-án
+9.-én->9-én
+abszolut->abszolút
+ambíciózus->ambiciózus
+asszimetrikus->aszimmetrikus
+árú->áru
+azomban->azonban
+bejjebb->beljebb
+bisztos->biztos
+brilliáns->briliáns
+cimke->címke
+dícséret->dicséret
+egyenlőre->egyelőre
+egyértelmüsítő->egyértelműsítő
+eggyütt->együtt
+elipszis->ellipszis
+follyon->folyjon
+hektóliter->hektoliter
+hellénista->hellenista
+hellénisztikus->hellenisztikus
+hellénizmus->hellenizmus
+Horatiussal->Horatiusszal
+igéret->ígéret
+irígy->irigy
+kálcium->kalcium
+kellet->kellett
+keveseb->kevesebb
+kilóméter->kilométer
+kisseb->kisebb
+kissebb->kisebb
+konkurrencia->konkurencia
+konkurrens->konkurens
+könnyeb->könnyebb
+könyebb->könnyebb
+kultura->kultúra
+kultúrális->kulturális
+külömbség->különbség
+külömböző->különböző
+legjob->legjobb
+legkeveseb->legkevesebb
+legnagyob->legnagyobb
+lessz->lesz
+mellet->mellett
+mindíg->mindig
+muszály->muszáj
+new yorki->New York-i
+orzság->ország
+önnálló->önálló
+raffinált->rafinált
+szinvonal->színvonal
+Szovjetúnió->Szovjetunió
+Torino-i->torinói
+únió->unió
+vákum->vákuum
+Vietnám->Vietnam
diff --git a/files/typos/typos-it.txt b/files/typos/typos-it.txt
new file mode 100644
index 0000000..5c2d496
--- /dev/null
+++ b/files/typos/typos-it.txt
@@ -0,0 +1,665 @@
+# This file contains a number of common Italian typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://it.m.wikipedia.org/wiki/Utente:Senpai/Lista_degli_errori_comuni/Formato_macchina
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+accellerare->accelerare
+acellerare->accelerare
+accellerata->accelerata
+accellerato->accelerato
+accellerazione->accelerazione
+aereonautica->aeronautica
+aereoporti->aeroporti
+aereoporto->aeroporto
+aereosilurante->aerosilurante
+aereosiluranti->aerosiluranti
+affianco->a fianco
+affilliate->affiliate
+aggiottaggio->aggiotaggio
+aggresive->aggressive
+agravate->aggravate
+alse->else
+appropiata->appropriata
+appropiate->appropriate
+appropiati->appropriati
+appropiato->appropriato
+approposito->a proposito
+appropraite->appropriate
+appropropiate->appropriate
+approvigionamento->approvvigionamento
+apropriate->appropriate
+areazione->aerazione
+areoporti->aeroporti
+areoporto->aeroporto
+assisnate->assassinate
+assit->assist
+asume->assume
+audeince->audience
+austrailia->Australia
+automibile->automobile
+avvallo->avallo
+backgorund->background
+backrounds->backgrounds
+benchè->benché
+Bernouilli->Bernoulli
+biricchino->birichino
+bizzare->bizzarre
+Buddah->Buddha
+buisness->business
+busness->business
+bussiness->business
+caffé->caffè
+Caltanisetta->Caltanissetta
+Cambrige->Cambridge
+candadate->candidate
+candiate->candidate
+candidiate->candidate
+casette->cassette
+Celcius->Celsius
+Champange->Champagne
+cioé->cioè
+ciriculum->curriculum
+cmoputer->computer
+coctail->cocktail
+coefficente->coefficiente
+coefficenti->coefficienti
+collaberative->collaborative
+collutazione->colluttazione
+commemerative->commemorative
+commemmorate->commemorate
+comparitive->comparative
+competative->competitive
+competive->competitive
+comprimise->compromise
+compropietari->comproprietari
+compropietaria->comproprietaria
+compropietarie->comproprietarie
+compropietario->comproprietario
+Conneticut->Connecticut
+conosciente->conoscente
+conoscienti->conoscenti
+conoscienza->conoscenza
+consectutive->consecutive
+consentrate->concentrate
+conservitive->conservative
+consolodate->consolidate
+contaiminate->contaminate
+contendor->contender
+coputer->computer
+copywrite->copyright
+corelate->correlate
+correzzione->correzione
+coscente->cosciente
+coscenti->coscienti
+coscenza->coscienza
+cosi->così
+cosidetto->cosiddetto
+cumulatative->cumulative
+curch->church
+curriculem->curriculum
+dasse->desse
+decomposit->decompose
+deficente->deficiente
+deficenti->deficienti
+deficenza->deficienza
+definate->definite
+derivitive->derivative
+deside->decide
+desktiop->desktop
+deteriate->deteriorate
+devide->divide
+diminuitive->diminutive
+dispence->dispense
+doesnt->doesn't
+dosen't->doesn't
+drnik->drink
+dupicate->duplicate
+E'->È
+É->È
+etc.->ecc.
+eccezzionale->eccezionale
+eccezzionali->eccezionali
+eccezzione->eccezione
+ect->etc
+eminate->emanate
+enduce->induce
+esle->else
+esterefatto->esterrefatto
+faciliate->facilitate
+facillitate->facilitate
+Farenheit->Fahrenheit
+fianite->finite
+foootball->football
+foucs->focus
+Gameboy->Game Boy
+ganerate->generate
+Ghandi->Gandhi
+gia->già
+gia'->già
+giacchè->giacché
+giaccue->giacque
+grafitti->graffiti
+Guilia->Giulia
+Guilio->Giulio
+Guiness->Guinness
+Guiseppe->Giuseppe
+halp->help
+hapening->happening
+hertzs->hertz
+imcomplete->incomplete
+imense->immense
+immitate->imitate
+inappropiate->inappropriate
+includ->include
+incoscente->incosciente
+incoscenti->incoscienti
+incoscenza->incoscienza
+inctroduce->introduce
+indulgue->indulge
+infilitrate->infiltrate
+infinit->infinite
+ingegniere->ingegnere
+innoquo->innocuo
+inpolite->impolite
+inquanto->in quanto
+insufficente->insufficiente
+insufficenti->insufficienti
+insufficenza->insufficienza
+interm->interim
+interrim->interim
+intutive->intuitive
+investingate->investigate
+iunior->junior
+knwo->know
+konw->know
+kwno->know
+levetate->levitate
+loev->love
+lveo->love
+lvoe->love
+Macchiavelli->Machiavelli
+maggiorparte->maggior parte
+magolia->magnolia
+managment->management
+marketting->marketing
+Massachussets->Massachusetts
+Massachussetts->Massachusetts
+medacine->medicine
+mercentile->mercantile
+messanger->messenger
+metereologia->meteorologia
+metereologico->meteorologico
+Michagan->Michigan
+minature->miniature
+misile->missile
+Misouri->Missouri
+Missisipi->Mississippi
+Missisippi->Mississippi
+missle->missile
+moderm->modem
+modle->model
+Monserrat->Montserrat
+mroe->more
+muscial->musical
+mussulmano->musulmano
+naturual->natural
+Nazereth->Nazareth
+necessiate->necessitate
+nkow->know
+nkwo->know
+noveau->nouveau
+ocuntry->country
+omlette->omelette
+omre->more
+onniscente->onnisciente
+onniscenti->onniscienti
+onoreficenze->onorificenze
+onyl->only
+ovverossia->ovverosia
+pallete->palette
+pantomine->pantomime
+pary->party
+penatly->penalty
+perchè->perché
+perche'->perché
+percui->per cui
+performence->performance
+pero'->però
+perogative->prerogative
+peronospera->peronospora
+piu->più
+piu'->più
+plateu->plateau
+pò->po'
+poiche'->poiché
+poichè->poiché
+preceed->precede
+pressocche'->pressoché
+pressocché->pressoché
+preverse->perverse
+primative->primitive
+privte->private
+proceedure->procedure
+processer->processor
+profesor->professor
+professer->professor
+proffesed->professed
+proffesor->professor
+profiquo->proficuo
+proove->prove
+propietà->proprietà
+propietari->proprietari
+propietaria->proprietaria
+propietarie->proprietarie
+propietario->proprietario
+propio->proprio
+propoganda->propaganda
+propogate->propagate
+prospicente->prospiciente
+prospicenti->prospicienti
+provacative->provocative
+psuedo->pseudo
+Pucini->Puccini
+pursuade->persuade
+pwoer->power
+recrod->record
+redarre->redigere
+refedendum->referendum
+rela->real
+riconosciente->riconoscente
+riconoscienti->riconoscenti
+riconoscienza->riconoscenza
+rocord->record
+rubgy->rugby
+sandwhich->sandwich
+satelite->satellite
+sattelite->satellite
+scandanavia->Scandinavia
+scenza->scienza
+scenze->scienze
+scirpt->script
+se'->sé
+sè->sé
+sensa->senza
+senstive->sensitive
+sensure->censure
+senzo->senso
+smoe->some
+soem->some
+sofware->software
+sohw->show
+sopratutto->soprattutto
+soudn->sound
+speci->specie
+spoace->space
+sponser->sponsor
+staion->station
+stasse->stesse
+stong->strong
+stpo->stop
+strazzio->strazio
+su'->sù
+succesiva->successiva
+succesive->successive
+succesivi->successivi
+succesivo->successivo
+sucessiva->successiva
+sucessive->successive
+sucessivi->successivi
+sucessivo->successivo
+sufficente->sufficiente
+sufficenti->sufficienti
+sufficenza->sufficienza
+sytem->system
+tast->taste
+té->tè
+tghe->the
+timne->time
+tje->the
+tjhe->the
+transare->transigere
+tremelo->tremolo
+troup->troupe
+tust->trust
+vadino->vadano
+valetta->valletta
+ventitrè->ventitré
+vicere->viceré
+zeebra->zebra
diff --git a/files/typos-nb.txt b/files/typos/typos-nb.txt
index a662d9a..1043627 100644
--- a/files/typos-nb.txt
+++ b/files/typos/typos-nb.txt
@@ -3,6 +3,7 @@ andriod->android
# The remainder of this file contains misspellings from
# http://no.wikipedia.org/wiki/Wikipedia:Liste_over_alminnelige_stavefeil/Maskinform
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
#
# The content is available under the
# "Creative Commons Attribution-ShareAlike License"
@@ -445,4 +446,4 @@ underholdene->underholdende
vakum->vakuum
viderekommende->viderekomne
værre->verre
-værste->verste \ No newline at end of file
+værste->verste
diff --git a/files/typos/typos-pt.txt b/files/typos/typos-pt.txt
new file mode 100644
index 0000000..6285d37
--- /dev/null
+++ b/files/typos/typos-pt.txt
@@ -0,0 +1,1647 @@
+# This file contains a number of common Portuguese typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://pt.wikipedia.org/wiki/Wikip%C3%A9dia:Software/Anti-vandal_tool/Ortografia
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+a a->a
+à cavalo->a cavalo
+a muito tempo->há muito tempo
+à muito tempo->há muito tempo
+a nível de->em nível de, ao nível de
+à pé->a pé
+aandeija->bandeja
+abitual->habitual
+acêrca->acerca
+àcerca->acerca
+acessiveis->acessíveis
+acessivel->acessível
+acessor->assessor
+acessora->assessora
+acessoras->assessoras
+acessores->assessores
+acessoria->assessoria
+acessorio->acessório
+acessorios->acessórios
+acesssada->acessada
+acesssadas->acessadas
+acesssado->acessado
+acesssados->acessados
+açoes->acções
+aconselhaveis->aconselháveis
+aconselhavel->aconselhável
+açoreana->açoriana
+açoreanas->açorianas
+açoreano->açoriano
+açoreanos->açorianos
+actris->atriz
+açucar ->açúcar
+acustica->acústica
+acusticas->acústicas
+acustico->acústico
+acusticos->acústicos
+adimite->admite
+adimitir->admitir
+adimitiram->admitiram
+adimitiu->admitiu
+admnistração->administração
+admnistrar->administrar
+adolescencia->adolescência
+afim->a fim
+Africa->África
+agencia->agência
+agradaveis->agradáveis
+agradavel->agradável
+agricola->agrícola
+agricolas->agrícolas
+agua->água
+aguas->águas
+aki->aqui
+album->álbum
+albúm->álbum
+albùm->álbum
+albums->álbuns
+albun->álbum
+albuns->álbuns
+albúns->álbuns
+albùns->álbuns
+alcolémia->alcoolemia
+alcolico->alcoólico
+alcólico->alcoólico
+alcolicos->alcoólicos
+alcólicos->alcoólicos
+alcoolémia->alcoolemia
+alcóolica->alcoólica
+alcoolico->alcoólico
+alcóolico->alcoólico
+alcoolicos->alcoólicos
+aleatorios->aleatórios
+algeriano->argelino
+algorítmo->algoritmo
+algorítmos->algoritmos
+alguem->alguém
+altoridade->autoridade
+altoridades->autoridades
+amanha->amanhã
+amargúra->amargura
+amargúria->amargura
+ambulancia->ambulância
+ambulancias->ambulâncias
+anciosa->ansiosa
+ancioso->ansioso
+anciosas->ansiosas
+anciosos->ansiosos
+anciosamente->ansiosamente
+anemona->anémona,anêmona
+anglofona->anglófona
+anglófonas->anglófonas
+anglofono->anglófono
+anglofonos->anglófonos
+angulo->ângulo
+angulos->ângulos
+anonimo->anónimo, anônimo
+antepôr->antepor
+anti aéreo->antiaéreo
+anti depressivo->antidepressivo
+anti-vírus->antivírus
+anuncio->anúncio
+ao meu ver->a meu ver
+aparencia->aparência, aparecia
+aparencias->aparências
+aplicaçao->aplicação
+Aracajú->Aracaju
+arco-iris->arco-íris
+arcoiris->arco-íris
+arcoíris->arco-íris
+areas->áreas
+argerino->argelino
+aristocratica->aristocrática
+aristocraticas->aristocráticas
+aristocratico->aristocrático
+aristocraticos->aristocráticos
+armonia->harmonia
+arquipelago->arquipélago
+arquipelagos->arquipélagos
+arquipelogo->arquipélago
+artistica->artística
+artisticas->artísticas
+artistico->artístico
+artisticos->artísticos
+ascençao->ascensão
+ascenção->ascensão
+ascensao->ascensão
+Asia->Ásia
+asiatica->asiática
+asim->assim
+assasinato->assassinato
+assistencia->assistência
+associção->associação
+aste->haste
+ateismo->ateísmo
+aterisagem->aterrissagem
+aterissagem->aterrissagem
+aterrisagem->aterrissagem
+aterrizagem->aterrissagem
+atras->atrás
+atraves->através
+atravez->através
+atravéz->através
+atraz->atrás
+atráz->atrás
+atribuida->atribuída
+atribuidas->atribuídas
+atribuido->atribuído
+atribuidos->atribuídos
+atris->atriz, actriz, atris
+audiencia->audiência
+audiencias->audiências
+ausencia->ausência
+ausencias->ausências
+autentica->autêntica
+autenticas->autênticas
+autentico->autêntico
+autenticos->autênticos
+automoveis->automóveis
+automovel->automóvel
+autonoma->autónoma, autônoma
+autonomas->autónomas, autônomas
+autonomo->autónomo, autônomo
+autonomos->autónomos, autônomos
+autopsia->autópsia
+aver->haver
+aviacao->aviação
+aviacão->aviação
+aviasão->aviação
+avogrado->Avogadro
+avulsso->avulso
+azaléia->azaléa
+azas->asas
+bahiana->baiana
+bahiano->baiano
+baínha->bainha
+baínhas->bainhas
+banca-rota->bancarrota
+banca-rrota->bancarrota
+bancarota->bancarrota
+barbarie->barbárie
+barbaries->barbáries
+bébe->bebé
+bébé->bebé
+bébes->bebés
+bébés->bebés
+beige->bege
+beiges->beges
+beije->bege
+beijes->beges
+bem vindo->bem-vindo
+benção->bênção
+bençãos->bênçãos
+beneficencia->beneficência
+beneficio->benefício
+beneficios->benefícios
+benvindo->bem-vindo
+Bertold Brecht->Bertolt Brecht
+bevocar->invocar
+bi-campeão->bicampeão
+bibliografica->bibliográfica
+bibliograficas->bibliográficas
+bibliografico->bibliográfico
+bibliograficos->bibliográficos
+biografico->biográfico
+biograficos->biográficos
+biograifa->biografia
+biograifas->biografias
+biópsia->biopsia
+biópsias->biopsias
+boas vindas->Boas-vindas
+boeiro->bueiro
+borburinho->burburinho
+brasao->brasão
+brazão->brasão
+Brazil->Brasil
+britanico->britânico
+burborinho->burburinho
+bussula->bússola
+cadaço->cadarço
+caiem->caem
+calsado->calçado
+calvice->calvície
+calvíce->calvície
+camara->câmara
+camera->câmera
+caminhoes->caminhões, camiões
+camioes->camiões, caminhões
+campeao->campeão
+campeoes->campeões
+campiao->campeão
+campião->campeão
+campioes->campeões
+campiões->campeões
+campionato->campeonato
+campionatos->campeonatos
+cançao->canção
+cansão->canção
+capitão mor->capitão-mor
+capitulo->capítulo
+capitulos->capítulos
+caracteristica->característica
+caracteristicas->características
+caracteristico->característico
+caracteristicos->característicos
+carissimo->caríssimo
+cassar->caçar, casar, cassar
+catalizador->catalisador
+catalogo->catálogo
+catalogos->catálogos
+catequisador->catequizador
+catequisar->catequizar
+cazamento->casamento
+cazar->casar
+cazara->casara
+cazaram->casaram
+cazou->casou
+Ceara->Ceará
+celebro->cérebro
+cemiterio->cemitério
+cemiterios->cemitérios
+cenario->cenário
+cenarios->cenários
+cerebro->cérebro
+cerebros->cérebros
+chopp->chope
+ciclano->sicrano
+cidadães->cidadãos
+cidadões->cidadãos
+ciencia->ciência
+ciencias->ciências
+cientifica->científica
+cientificas->científicas
+cientifico->científico
+cientificos->científicos
+circulo->círculo
+circulos->círculos
+classica->clássica
+classicas->clássicas
+classico->clássico
+classicos->clássicos
+clinica->clínica
+cms->cm
+co-habitação->coabitação
+coalisão->coalizão
+côco->coco
+coerencia->coerência
+coerencias->coerências
+cohabitação->coabitação
+comcerteza->com certeza
+comecou->começou
+comedia->comédia
+comercio->comércio
+comercios->comércios
+comisão->comissão
+comisoes->comissões
+comisões->comissões
+comissao->comissão
+comnosco->connosco
+compôr->compor
+compreenção->compreensão
+compreenções->compreensões
+compreenssão->compreensão
+compreenssões->compreensões
+concerteza->com certeza
+conciderada->considerada
+concideradas->consideradas
+conciderado->considerado
+conciderados->considerados
+concluíndo->concluindo
+concretisar->concretizar
+condiçao->condição
+condissao->condição
+condissão->condição
+conseguírem->conseguirem
+constituia->constituía
+constituiam->constituíam
+constituiram->constituíram
+constroi->constrói
+construia->construía
+construida->construída
+construidas->construídas
+construido->construído
+construidos->construído
+contemporaneo->contemporâneo
+contemporaneos->contemporâneos
+contribue->contribui
+contrução->construção
+contruído->construído
+contruir->construir
+converçao->conversão
+converção->conversão
+conversao->conversão
+converssão->conversão
+côr->cor
+corçario->corsário
+côres->cores
+cornea->córnea
+corneas->córneas
+corografico->corográfico
+corograficos->corográficos
+correiro eletronico->correio electrónico, correio eletrônico
+corrijiam->corrigiam
+corrijir->corrigir
+corrijiram->corrigiram
+crâneo->crânio
+crâneos->crânios
+criaça->criança
+criacao->criação
+criaçao->criação
+criaças->crianças
+crianca->criança
+criancas->crianças
+cristianizacao->cristianização
+cristianizacão->cristianização
+cristianizacoes->cristianizações
+cristianizacões->cristianizações
+criticas->críticas
+critícas->críticas
+criticos->críticos
+critícos->críticos
+crueis->cruéis
+culinaria->culinária
+custuma->costuma
+custumava->costumava
+custumavam->costumavam
+custume->costume
+custumes->costumes
+decada->década
+decadas->décadas
+decadencia->decadência
+decadencias->decadências
+decer->descer
+deceram->desceram
+declinio->declínio
+declinios->declínios
+defeniçao->definição
+defenição->definição
+defenições->definições
+defenido->definido
+defenir->definir
+definitamente->definitivamente
+deiche->deixe
+deisponiveis->disponíveis
+deisponivel->disponível
+democratica->democrática
+demonio->demónio, demônio
+demonios->demónios, demônios
+depedente->dependente
+depedentes->dependentes
+deposito->depósito
+depositos->depósitos
+desagradaveis->desagradáveis
+desagradavel->desagradável
+descubrimento->descobrimento
+descubrimentos->descobrimentos
+descubrir->descobrir
+descubriram->descobriram
+descubrire->descobrire
+deseçeis->dezesseis
+desembro->Dezembro
+desesseis->dezesseis
+desnecessario->desnecessário
+despensaveis->dispensáveis
+despensáveis->dispensáveis
+despensavel->dispensável
+despensável->dispensável
+desprotejida->desprotegida
+desprotejidas->desprotegidas
+desprotejido->desprotegido
+desprotejidos->desprotegidos
+destruida->destruída
+devocao->devoção
+devocão->devoção
+devoçao->devoção
+diagnostico->diagnóstico
+diagnosticos->diagnósticos
+diaria->diária
+diáriamente->diariamente
+diario->diário
+dibre->drible
+diferencas->diferenças
+díficeis->difíceis
+dificil->difícil
+díficil->difícil
+dificulidade->dificuldade
+difusao->difusão
+dignatária->dignitária
+dignatárias->dignitárias
+dignatário->dignitário
+dignatários->dignitários
+dijita->digita
+dijitar->digitar
+dijitara->digitara
+dijitaram->digitaram
+dijitou->digitou
+diminue->diminui
+dinamico->dinâmico
+discuções->discussões
+discursso->discurso
+dispender->despender
+dispenderam->despenderam
+dispendio->dispêndio
+dispendios->dispêndios
+dispensaveis->dispensáveis
+dispensavel->dispensável
+disponiveis->disponíveis
+disponivel->disponível
+distribuida->distribuída
+distribuidas->distribuídas
+distribuido->distribuído
+distribuidos->distribuídos
+disturbio->distúrbio
+disturbios->distúrbios
+diverssas->diversas
+diverssos->diversos
+documentario->documentário
+documentarios->documentários
+dragao->dragão
+druída->druida
+druídas->druidas
+dsenho->desenho
+duvidas->dúvidas
+ecessão->exceção
+ecessões->exceções
+eciclopedia->enciclopédia
+eciclopédia->enciclopédia
+economica->económica, econômica
+ect->etc
+egipcios->egípcios
+egipsio->egípcio
+elacção->elação
+electrônica->electrónica, eletrônica
+electrônicas->electrónicas, eletrônicas
+electrônico->electrónico, eletrônico
+electrônicos->electrónicos, eletrônicos
+eletroima->eletroímã
+eletroimã->eletroímã
+eletronica->electrónica, eletrônica
+eletrónica->electrónica, eletrônica
+eletronicas->electrónicas, eletrônicas
+eletrónicas->electrónicas, eletrônicas
+eletronico->electrónico, eletrônico
+eletrónico->electrónico, eletrônico
+eletronicos->electrónicos, eletrônicos
+eletrónicos->electrónicos, eletrônicos
+elice->hélice
+emaili->e-mail, email, correio electrónico, correio eletrônico
+eminencia->eminência
+eminencias->eminências
+empresario->empresário
+empresarios->empresários
+enciclopedia->enciclopédia
+enciclopedias->enciclopédias
+enfase->ênfase
+enfases->ênfases
+entao->então
+entertido->entretido
+entitular->intitular
+entretando->entretanto
+entreteram->entretiveram
+entreterimento->entretenimento
+entreteu->entreteve
+epecial->especial
+epica->épica
+epicas->épicas
+epico->épico
+epicos->épicos
+eplepsia->epilepsia
+epoca->época
+epocas->épocas
+equilibrio->equilíbrio
+ernegia->energia
+erói->herói
+errupção->erupção
+escerda->esquerda
+escerdas->esquerdas
+esitaram->hesitaram
+esitou->hesitou
+especialisada->especializada
+especialisadas->especializadas
+especialisado->especializado
+especialisados->especializados
+espectativa->expectativa
+espectativas->expectativas
+esperanca->esperança
+esperancas->esperanças
+espetativa->expectativa
+espetativas->expectativas
+espirita->espírita
+espiritas->espíritas
+espirito->espírito
+espiritos->espíritos
+espulsou->expulsou
+esquesita->esquisita
+esquesitas->esquisitas
+esquesito->esquisito
+esquesitos->esquisitos
+estabelecimente->estabelecimento
+estabelecimentes->estabelecimentos
+estaçãoos->estações
+estadio->estádio
+estadios->estádios
+estao->estão
+esteje->esteja
+estinto->extinto
+estintos->extintos
+estorquir->extorquir
+estorquiram->extorquiram
+estorquiu->extorquiu
+estudio->estúdio
+estudios->estúdios
+esturquir->extorquir
+esturquiram->extorquiram
+esturquiu->extorquiu
+ethanol->etanol
+etica->ética
+eticas->éticas
+excavação->escavação
+excavar->escavar
+excessão->exceção
+exdrúxula->esdrúxula
+exdrúxulas->esdrúxulas
+exdrúxulo->esdrúxulo
+exdrúxulos->esdrúxulos
+exepto->excepto, exceto
+exercicio->exercício
+exercicios->exercícios
+exeto->exceto, excepto
+exijência->exigência
+exijências->exigências
+exitar->hesitar
+exitaram->hesitaram
+exitou->hesitou
+expectador->espectador
+expontânea->espontânea
+expontâneas->espontâneas
+expontâneo->espontâneo
+expontâneos->espontâneos
+extende-se->estende-se
+extender->estender
+extenderam->estenderam
+facil->fácil
+familia->família
+familias->famílias
+farmaceutica->farmacêutica
+farmaceuticas->farmacêuticas
+farmaceutico->farmacêutico
+farmaceuticos->farmacêuticos
+faser->fazer
+fecula->fécula
+fémea->fêmea
+femeninismo->femininismo
+femeninismos->femininismos
+femenino->feminino
+femeninos->femininos
+ferverosos->fervorosos
+fimeninismo->femininismo
+fimeninismos->femininismos
+fimenino->feminino
+fimeninos->femininos
+Finlandia->finlândia
+fisica->física
+fizestes->fizeste
+flôr->flor
+flôres->flores
+flôrs->flores
+fluído->fluido
+fluídos->fluidos
+forão->foram
+fortuíto->fortuito
+fortuítos->fortuitos
+fotografica->fotográfica
+frageis->frágeis
+fragil->frágil
+Frankstein->Frankenstein
+funeraria->funerária
+funerarias->funerárias
+funerario->funerário
+funerarios->funerários
+furá->furar
+furacao->furacão
+furacoes->furacões
+galaxia->galáxia
+gas->gás
+gaz->gás
+gáz->gás
+geito->jeito
+geneceu->gineceu
+generico->genérico
+genericos->genéricos
+genero->género
+generos->géneros
+genio->génio, gênio
+geometrica->geométrico
+geometricas->geométricos
+geometrico->geométrico
+geometricos->geométricos
+gipe->jipe
+gipes->jipes
+giria->gíria
+girias->gírias
+giroscopico->giroscópio
+giroscopio->giroscópio
+gorgeta->gorjeta
+gorgetas->gorjetas
+Grã Bretanha->Grã-Bretanha
+graca->graça
+gracas->graças
+grafico->gráfico
+graficos->gráficos
+grangear->granjear
+gratuíto->gratuito
+gratuítos->gratuitos
+grau centigrado->grau Celsius
+grau centígrado->grau Celsius
+grau centígrados->grau Celsius
+grau kelvin->kelvin
+guizar->guisar
+hà->há
+hambiente->ambiente
+hambientes->ambientes
+haviam muitos->havia muitos
+haviam poucos->havia poucos
+hectar->hectare
+heraldica->heráldica
+heraldico->heráldico
+heranca->herança
+Herodoto->Heródoto
+heróico->heroico
+hexa-campeão->hexacampeão
+hilariedade->hilaridade
+historia->história
+historica->histórica
+historicas->históricas
+historico->histórico
+historicos->históricos
+homosexual->homossexual
+homosexualidade->homossexualidade
+horario->horário
+horarios->horários
+hoxigenio->oxigênio
+hoxigênio->oxigênio
+humoristica->humorística
+humoristico->humorístico
+ideología->ideologia
+idolo->ídolo
+idolos->ídolos
+igiene->higiene
+igienico->higiênico
+iguasu->Iguaçu
+ilacção->ilação
+imenência->iminência
+imenente->iminente
+imoveis->imóveis
+imovel->imóvel
+imperio->império
+imperios->impérios
+importancia->importância
+importancias->importâncias
+impresa->empresa
+imuno-deficiência->imunodeficiência
+imuno-deficiências->imunodeficiências
+incluiam->incluíam
+inclusivé->inclusive
+indefenição->indefinição
+indefenições->indefinições
+indefenir->indefinir
+indentidade->identidade
+indentidades->identidades
+India->Índia
+indice->índice
+indigena->indígena
+indiguinação->indignação
+indiguinado->indignado
+indiguinar->indignar
+indioma->idioma
+indiomas->idiomas
+individada->endividada
+individadas->endividadas
+individado->endividado
+individados->endividados
+individuo->indivíduo
+individuos->indivíduos
+inedita->inédita
+ineditas->inéditas
+inedito->inédito
+ineditos->inéditos
+infancia->infância
+infelismente->infelizmente
+inflacção->inflação
+infra vermelho->infravermelho
+infra vermelhos->infravermelhos
+infra-vermelho->infravermelho
+infra-vermelhos->infravermelhos
+ingenuo->ingénuo
+ingles->inglês
+inglêsa->inglesa
+inglêsas->inglesas
+inglêses->ingleses
+ingreja->igreja
+inícia->inicia
+inicio->início
+inicios->inícios
+inteligencia->inteligência
+inteligencias->inteligências
+intensão->intenção
+intertido->entretido
+intervemos->intervimos
+intervi->intervim
+intervido->intervindo
+interviram->intervieram
+interviste->intervieste
+interviu->interveio
+intigração->integração
+intrumental->instrumental
+intrumento->instrumento
+inumeras->inúmeras
+inumeros->inúmeros
+invensivel->invencível
+invensível->invencível
+invenssível->invencível
+inves->invés
+invez->invés
+invéz->invés
+iorgute->iogurte
+iper->hiper
+ipopótamo->hipopótamo
+ipslon->ípslon
+irisar->irizar
+irmao->irmão
+irmaos->irmãos
+irupção->irrupção
+ispirar->inspirar
+ispirou->inspirou
+issu->isso
+jamelão->jamelada,rabada
+japones->japonês
+jeropiga->geropiga
+Joana d´Arc->Joana d'Arc
+judiciaria->judiciária
+judiciarias->judiciárias
+juíz->juiz
+juiza->juíza
+juizas->juízas
+juizes->juízes
+junior->júnior
+júniores->juniores
+juridica->jurídica
+juridição->jurisdição
+juridicas->jurídicas
+juridico->jurídico
+juridicos->jurídicos
+juz->jus
+kilo->quilograma
+kilômetro->quilômetro
+kilometro->quilómetro, quilômetro
+kilómetro->quilómetro, quilômetro
+kilometros->quilómetros, quilômetros
+kilómetros->quilómetros, quilômetros
+km2->km²
+largartixa->lagartixa
+largarto->lagarto
+leem->lêem
+leêm->lêem
+lêm->lêem
+lendaria->lendária
+lendarias->lendárias
+lendario->lendário
+lendarios->lendários
+leucémia->leucemia
+licenca->licença
+licencas->licenças
+licensa->licença
+lider->líder
+lideres->líderes
+lingua->língua
+linguas->línguas
+linguísta->linguista
+línguísta->linguista
+linguístas->linguistas
+línguístas->linguistas
+lisongea->lisonjeia
+lisongear->lisonjear
+lisongeara->lisonjeara
+lisongearam->lisonjearam
+lisongearou->lisonjearou
+lisonjea->lisonjeia
+logica->lógica
+lógicamente->logicamente
+logista->lojista
+logistas->lojistas
+lojica->lógica
+lójica->lógica
+lusofona->lusófona
+lusofonas->lusófonas
+lusofono->lusófono
+lusofonos->lusófonos
+magestade->majestade
+magestades->majestades
+magica->mágica
+magico->mágico
+mangerico->manjerico
+mangericos->manjericos
+manteram->mantiveram
+manteu->manteve
+maritima->marítima
+maritimas->marítimas
+maritimo->marítimo
+maritimos->marítimos
+massiça->maciça
+massiças->maciças
+massiço->maciço
+massiços->maciços
+meche->mexe
+mecher->mexer
+mecheram->mexeram
+mecheu->mexeu
+médico cirurgião->médico-cirurgião
+memoria->memória
+memorias->memórias
+menas->menos
+mercenaria->mercenária
+mercenarias->mercenárias
+mercenario->mercenário
+mercenarios->mercenários
+mêses->meses
+metereologia->meteorologia
+metodo->método
+metodos->métodos
+miceis->mísseis
+míceis->mísseis
+micil->míssil
+mícil->míssil
+minerio->minério
+minimo->mínimo
+missao->missão
+mistica->mística
+misticas->místicas
+mistico->místico
+misticos->místicos
+miticas->míticas
+molar->mol/L
+molaridade->concentração em quantidade de matéria
+muinto->muito
+muintos->muitos
+multi-uso-> multiúso
+multimedia->multimedia, multimídia
+multimedias->multimédias, multimídias
+multimidia->multimídia, multimédia
+multimidias-> multimídias, multimédias
+multiuso-> multiúso
+municipio->município
+munícipio->município
+munícípio->município
+municipios->municípios
+munícipios->municípios
+munícípios->municípios
+munto->muito
+muntos->muitos
+musica->música
+musicas->músicas
+musico->músico
+musicos->músicos
+ñ->não
+nanômetro->nanometro
+nao->não
+naum->não
+negocios->negócios
+nenum->nenhum
+neo darwinismo->neodarwinismo
+neo liberais->neoliberais
+neo liberal->neoliberal
+neo liberalismo->neoliberalismo
+neo zelandês->neozelandês
+neo zelandesa->neozelandesa
+neo-darwinismo->neodarwinismo
+neo-liberais->neoliberais
+neo-liberal->neoliberal
+neo-liberalismo->neoliberalismo
+neo-zelandês->neozelandês
+neo-zelandesa->neozelandesa
+nescessário->necessário
+ninguem->ninguém
+nivel->nível
+nonagesima->nonagésima
+nonagesimo->nonagésimo
+nonagessima->nonagésima
+nonagéssima->nonagésima
+nonagessimo->nonagésimo
+nonagéssimo->nonagésimo
+nostalgico->nostálgico
+nostalgicos->nostálgicos
+notávelmente->notavelmente
+númerais->numerais
+númeral->numeral
+número de Avogadro->constante de Avogadro
+número de moles->quantidade de matéria
+número de mols->quantidade de matéria
+numero->número
+numeros->números
+numismatica->numismática
+numismatico->numismático
+núvem->nuvem
+núvens->nuvens
+obrigatoria->obrigatória
+obrigatorias->obrigatórias
+obrigatorio->obrigatório
+obrigatorios->obrigatórios
+obtem->obtém, obtêm
+obteram->obtiveram
+obteu->obteve
+ºC->°C
+odio->ódio
+ºF->°F
+oje->hoje
+olimpico->olímpico
+olimpicos->olímpicos
+omem->homem
+optima->óptima, ótima
+optimo->óptimo, ótimo
+orta->horta
+otima->ótima, óptima
+otimisadas->otimizadas, optimizadas
+otimo->ótimo, óptimo
+oxido-redução->oxirredução
+pagaos->pagãos
+pagina->página
+paises->países
+paleolitica->paleolítica
+paleolitico->paleolítico
+papeis->papéis
+para mim fazer->para eu fazer
+paraiso->paraíso
+paraisos->paraísos
+paraizo->paraíso
+paraízo->paraíso
+paraizos->paraísos
+paraízos->paraísos
+paralização->paralisação
+paralizado->paralisado
+paralizar->paralisar
+paroco->pároco
+parocos->párocos
+pascais->pascals
+patria->pátria
+Paulinia->Paulínia
+pedigri->pedigree
+penta-campeão->pentacampeão
+percursora->precursora
+percursoras->precursoras
+periodo->período
+periodos->períodos
+periudo->período
+períudo->período
+periudos->períodos
+períudos->períodos
+permenor->pormenor
+permenores->pormenores
+perola->pérola
+perolas->pérolas
+personalisação->personalização
+personalisar->personalizar
+personalisou->personalizou
+pertubar->perturbar
+peso atômico->massa atômica
+peso molecular->massa molecular
+pesquiza->pesquisa
+picômetro->picometro
+plásticamente->plasticamente
+plasticas->plásticas
+plastico->plástico
+plasticos->plásticos
+poblema->problema
+pobrema->problema
+politica->política
+politicas->políticas
+politico->político
+politicos->políticos
+poluicao->poluição
+Portugual->Portugal
+posivel->possível
+possiveis->possíveis
+possivel->possível
+possue->possui
+pq->porque,porquê,por que,por quê
+praca->praça
+prefêrencias->preferências
+prescisa->precisa
+prestaçãões->prestações
+pretenção->pretensão
+pretenssão->pretensão
+previlegio->privilégio
+previlégio->privilégio
+previlegios->privilégios
+previlégios->privilégios
+primaria->primária
+primarias->primárias
+primario->primário
+primarios->primários
+primeiro ministro->primeiro-ministro
+princípalmente->principalmente
+príncipalmente->principalmente
+principios->princípios
+prisao->prisão
+prisoes->prisões
+privatizaçao->privatização
+privilegio->privilégio
+privilegios->privilégios
+proceço->processo
+proceços->processos
+proceso->processo
+procesos->processos
+producao->produção
+progama->programa
+progamas->programas
+proibe->proíbe
+proíbido->proibido
+propia->própria
+própia->própria
+propias->próprias
+propiedade->propriedade
+propio->próprio
+própio->próprio
+propios->próprios
+proposito->propósito
+prosceço->processo
+prosceços->processos
+prosceso->processo
+proscesos->processos
+proseço->processo
+proseços->processos
+prosseço->processo
+prosseços->processos
+protejida->protegida
+protejidas->protegidas
+protejido->protegido
+protejidos->protegidos
+prototipo->protótipo
+prototipos->protótipos
+provincia->província
+provincias->províncias
+proxima->próxima
+proximas->próximas
+proximo->próximo
+proximos->próximos
+pseudo-ciência->pseudociência
+publico->público
+publicos->públicos
+qeu->que
+questao->questão
+quilómetro->quilômetro
+quilometro->quilómetro, quilômetro
+quilometros->quilómetros, quilômetros
+quimica->química
+quimicas->químicas
+quimico->químico
+quimicos->químicos
+quizer->quiser
+quizesse->quisesse
+quizessem->quisessem
+radiaçao->radiação
+radio->rádio
+raíz->raiz
+raizes->raízes
+rarissimo->raríssimo
+rarissimos->raríssimos
+razao->razão
+razoes->razões
+récorde->recorde
+referencia->referência
+referencias->referências
+reibi->râguebi
+reinterar->reiterar
+reinvidicação->reivindicação
+reinvidicar->reivindicar
+renovaveis->renováveis
+repertorio->repertório
+repertorios->repertórios
+reportorio->reportório
+reportorios->reportórios
+requesito->requisito
+responsaveis->responsáveis
+responsavel->responsável
+retem->retém, retêm
+reteram->retiveram
+reteu->reteve
+reune->reúne
+reunem->reúnem
+reuniao->reunião
+reunioes->reuniões
+reuso-> reúso
+riquissimo->riquíssimo
+riquissimos->riquíssimos
+ritualistico->ritualístico
+rúbrica->rubrica
+rúbricas->rubricas
+sacerdocio->sacerdócio
+sacrificio->sacrifício
+saira->saíra, sairá
+santuario->santuário
+sao->são
+saude->saúde
+secudaria->secudária
+secudarias->secudárias
+secudario->secudário
+secudarios->secudários
+seculo->século
+seculos->séculos
+seissentos->seiscentos
+seje->seja
+semaforo->semáforo
+semaforos->semáforos
+semi círculo->semicírculo
+semi círculos->semicírculos
+semi finais->semifinais
+semi final->semifinal
+semi precioso->semiprecioso
+semi preciosos->semipreciosos
+semi presidencialismos->semipresidencialismos
+semi presidencialistas->semipresidencialistas
+semi-círculo->semicírculo
+semi-círculos->semicírculos
+semi-finais->semifinais
+semi-final->semifinal
+semi-precioso->semiprecioso
+semi-preciosos->semipreciosos
+semi-presidencialismos->semipresidencialismos
+semi-presidencialistas->semipresidencialistas
+sensiveis->sensíveis
+sensivel->sensível
+separaçoes->separações
+serie->série
+serio->sério, série, seriado
+setessentos->setecentos
+siclano->sicrano
+simbolo->símbolo
+simbolos->símbolos
+simplemente->simplesmente
+sindrome->síndrome
+sinonimo->sinónimo, sinônimo
+síntaze->síntaxe
+sistemico->sistémico
+sobrevivencia->sobrevivência
+sombrancelha->sobrancelha
+subdivisáo->subdivisão
+substituida->substituída
+substituidas->substituídas
+substituido->substituído
+substituidos->substituídos
+suçeso->sucesso
+suçesos->sucessos
+suçesso->sucesso
+suçessos->sucessos
+Suiça->Suíça
+suiço->suíço
+suino->suíno
+suseço->sucesso
+suseços->sucessos
+susseço->sucesso
+susseços->sucessos
+sussesso->sucesso
+sussessos->sucessos
+tambem->também
+támbem->também
+támbém->também
+tao->tão
+tb->também
+tbm->também
+tecnica->técnica
+tecnico->técnico
+têmporo-mandibular->temporomandibular
+tendencia->tendência
+tendencias->tendências
+tetra-hidrofurano->tetraidrofurano
+tipica->típica
+tipicas->típicas
+tipico->típico
+tipicos->típicos
+titulos->títulos
+tracao->tracção, tração
+tranformar->transformar
+transmissiveis->transmissíveis
+transmissivel->transmissível
+traser->trazer
+trasnporta->transporta
+trasnporte->transporte
+trasnportes->transportes
+tratrahidrofurano->tetraidrofurano
+tres->três
+treslagoense->três-lagoense
+tri-campeão->tricampeão
+trovao->trovão
+Tupí-guarani->Tupi-guarani
+turistico->turístico
+turisticos->turísticos
+u.m.a->u
+ultima->última
+ultimo->último
+ultimos->últimos
+um um->um
+úmidade->umidade, humidade
+unica->única
+unicas->únicas
+unico->único
+unicos->únicos
+univercidade->universidade
+univercidades->universidades
+universitaria->universitária
+universitarias->universitárias
+universitario->universitário
+universitarios->universitários
+uqe->que
+usuario->usuário, utilizador
+util->útil
+utilisador->utilizador, usuário
+uzada->usada
+uzadas->usadas
+uzado->usado
+uzados->usados
+uzar->usar
+uzo->uso
+uzou->usou
+váriados->variados
+varias->várias
+varios->vários
+vc->você
+veiculo->veículo
+veiculos->veículos
+verçao->versão
+verção->versão
+verçoes->versões
+verções->versões
+ves->vez, vês
+veses->vezes
+vestigio->vestígio
+vestigios->vestígios
+vezis->vezes
+viajem->viagem
+vice governador->vice-governador
+vice governadores->vice-governadores
+vice prefeito->vice-prefeito
+vice prefeitos->vice-prefeitos
+vice presidente->vice-presidente
+vice presidentes->vice-presidentes
+video game->videogame
+video->vídeo
+videoclip->videoclipe
+vigilancia->vigilância
+violencia->violência
+viros->vírus
+víros->vírus
+virus->vírus
+virús->vírus
+vírús->vírus
+vitoria->vitória
+vitorias->vitórias
+viuva->viúva
+voçe->você
+voçê->você
+Wikimapa->WikiMapia
+Wikimapia->WikiMapia
+xafariz->chafariz
+xuxu->chuchu
+yoga->ioga
+yôga->ioga
diff --git a/files/typos/typos-tr.txt b/files/typos/typos-tr.txt
new file mode 100644
index 0000000..4db11e7
--- /dev/null
+++ b/files/typos/typos-tr.txt
@@ -0,0 +1,604 @@
+# This file contains a number of common Turkish typos:
+andriod->android
+
+# The remainder of this file contains misspellings from
+# http://tr.wikipedia.org/wiki/Vikipedi:Yaygin_kelime_hatalari/makinalar_icin
+# plus some post-processing to fix invalid entries, remove duplicates, etc.
+#
+# The content is available under the
+# "Creative Commons Attribution-ShareAlike License"
+# http://creativecommons.org/licenses/by-sa/3.0/
+#
+# THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+# COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+# COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+# AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+#
+# BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+# TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+# BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+# CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+# CONDITIONS.
+#
+# *1. Definitions*
+#
+# 1. *"Adaptation"* means a work based upon the Work, or upon the Work
+# and other pre-existing works, such as a translation, adaptation,
+# derivative work, arrangement of music or other alterations of a
+# literary or artistic work, or phonogram or performance and includes
+# cinematographic adaptations or any other form in which the Work may
+# be recast, transformed, or adapted including in any form
+# recognizably derived from the original, except that a work that
+# constitutes a Collection will not be considered an Adaptation for
+# the purpose of this License. For the avoidance of doubt, where the
+# Work is a musical work, performance or phonogram, the
+# synchronization of the Work in timed-relation with a moving image
+# ("synching") will be considered an Adaptation for the purpose of
+# this License.
+# 2. *"Collection"* means a collection of literary or artistic works,
+# such as encyclopedias and anthologies, or performances, phonograms
+# or broadcasts, or other works or subject matter other than works
+# listed in Section 1(f) below, which, by reason of the selection and
+# arrangement of their contents, constitute intellectual creations, in
+# which the Work is included in its entirety in unmodified form along
+# with one or more other contributions, each constituting separate and
+# independent works in themselves, which together are assembled into a
+# collective whole. A work that constitutes a Collection will not be
+# considered an Adaptation (as defined below) for the purposes of this
+# License.
+# 3. *"Creative Commons Compatible License"* means a license that is
+# listed at http://creativecommons.org/compatiblelicenses that has
+# been approved by Creative Commons as being essentially equivalent to
+# this License, including, at a minimum, because that license: (i)
+# contains terms that have the same purpose, meaning and effect as the
+# License Elements of this License; and, (ii) explicitly permits the
+# relicensing of adaptations of works made available under that
+# license under this License or a Creative Commons jurisdiction
+# license with the same License Elements as this License.
+# 4. *"Distribute"* means to make available to the public the original
+# and copies of the Work or Adaptation, as appropriate, through sale
+# or other transfer of ownership.
+# 5. *"License Elements"* means the following high-level license
+# attributes as selected by Licensor and indicated in the title of
+# this License: Attribution, ShareAlike.
+# 6. *"Licensor"* means the individual, individuals, entity or entities
+# that offer(s) the Work under the terms of this License.
+# 7. *"Original Author"* means, in the case of a literary or artistic
+# work, the individual, individuals, entity or entities who created
+# the Work or if no individual or entity can be identified, the
+# publisher; and in addition (i) in the case of a performance the
+# actors, singers, musicians, dancers, and other persons who act,
+# sing, deliver, declaim, play in, interpret or otherwise perform
+# literary or artistic works or expressions of folklore; (ii) in the
+# case of a phonogram the producer being the person or legal entity
+# who first fixes the sounds of a performance or other sounds; and,
+# (iii) in the case of broadcasts, the organization that transmits the
+# broadcast.
+# 8. *"Work"* means the literary and/or artistic work offered under the
+# terms of this License including without limitation any production in
+# the literary, scientific and artistic domain, whatever may be the
+# mode or form of its expression including digital form, such as a
+# book, pamphlet and other writing; a lecture, address, sermon or
+# other work of the same nature; a dramatic or dramatico-musical work;
+# a choreographic work or entertainment in dumb show; a musical
+# composition with or without words; a cinematographic work to which
+# are assimilated works expressed by a process analogous to
+# cinematography; a work of drawing, painting, architecture,
+# sculpture, engraving or lithography; a photographic work to which
+# are assimilated works expressed by a process analogous to
+# photography; a work of applied art; an illustration, map, plan,
+# sketch or three-dimensional work relative to geography, topography,
+# architecture or science; a performance; a broadcast; a phonogram; a
+# compilation of data to the extent it is protected as a copyrightable
+# work; or a work performed by a variety or circus performer to the
+# extent it is not otherwise considered a literary or artistic work.
+# 9. *"You"* means an individual or entity exercising rights under this
+# License who has not previously violated the terms of this License
+# with respect to the Work, or who has received express permission
+# from the Licensor to exercise rights under this License despite a
+# previous violation.
+# 10. *"Publicly Perform"* means to perform public recitations of the Work
+# and to communicate to the public those public recitations, by any
+# means or process, including by wire or wireless means or public
+# digital performances; to make available to the public Works in such
+# a way that members of the public may access these Works from a place
+# and at a place individually chosen by them; to perform the Work to
+# the public by any means or process and the communication to the
+# public of the performances of the Work, including by public digital
+# performance; to broadcast and rebroadcast the Work by any means
+# including signs, sounds or images.
+# 11. *"Reproduce"* means to make copies of the Work by any means
+# including without limitation by sound or visual recordings and the
+# right of fixation and reproducing fixations of the Work, including
+# storage of a protected performance or phonogram in digital form or
+# other electronic medium.
+#
+# *2. Fair Dealing Rights.* Nothing in this License is intended to reduce,
+# limit, or restrict any uses free from copyright or rights arising from
+# limitations or exceptions that are provided for in connection with the
+# copyright protection under copyright law or other applicable laws.
+#
+# *3. License Grant.* Subject to the terms and conditions of this License,
+# Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+# perpetual (for the duration of the applicable copyright) license to
+# exercise the rights in the Work as stated below:
+#
+# 1. to Reproduce the Work, to incorporate the Work into one or more
+# Collections, and to Reproduce the Work as incorporated in the
+# Collections;
+# 2. to create and Reproduce Adaptations provided that any such
+# Adaptation, including any translation in any medium, takes
+# reasonable steps to clearly label, demarcate or otherwise identify
+# that changes were made to the original Work. For example, a
+# translation could be marked "The original work was translated from
+# English to Spanish," or a modification could indicate "The original
+# work has been modified.";
+# 3. to Distribute and Publicly Perform the Work including as
+# incorporated in Collections; and,
+# 4. to Distribute and Publicly Perform Adaptations.
+# 5.
+#
+# For the avoidance of doubt:
+#
+# 1. *Non-waivable Compulsory License Schemes*. In those
+# jurisdictions in which the right to collect royalties through
+# any statutory or compulsory licensing scheme cannot be waived,
+# the Licensor reserves the exclusive right to collect such
+# royalties for any exercise by You of the rights granted under
+# this License;
+# 2. *Waivable Compulsory License Schemes*. In those jurisdictions in
+# which the right to collect royalties through any statutory or
+# compulsory licensing scheme can be waived, the Licensor waives
+# the exclusive right to collect such royalties for any exercise
+# by You of the rights granted under this License; and,
+# 3. *Voluntary License Schemes*. The Licensor waives the right to
+# collect royalties, whether individually or, in the event that
+# the Licensor is a member of a collecting society that
+# administers voluntary licensing schemes, via that society, from
+# any exercise by You of the rights granted under this License.
+#
+# The above rights may be exercised in all media and formats whether now
+# known or hereafter devised. The above rights include the right to make
+# such modifications as are technically necessary to exercise the rights
+# in other media and formats. Subject to Section 8(f), all rights not
+# expressly granted by Licensor are hereby reserved.
+#
+# *4. Restrictions.* The license granted in Section 3 above is expressly
+# made subject to and limited by the following restrictions:
+#
+# 1. You may Distribute or Publicly Perform the Work only under the terms
+# of this License. You must include a copy of, or the Uniform Resource
+# Identifier (URI) for, this License with every copy of the Work You
+# Distribute or Publicly Perform. You may not offer or impose any
+# terms on the Work that restrict the terms of this License or the
+# ability of the recipient of the Work to exercise the rights granted
+# to that recipient under the terms of the License. You may not
+# sublicense the Work. You must keep intact all notices that refer to
+# this License and to the disclaimer of warranties with every copy of
+# the Work You Distribute or Publicly Perform. When You Distribute or
+# Publicly Perform the Work, You may not impose any effective
+# technological measures on the Work that restrict the ability of a
+# recipient of the Work from You to exercise the rights granted to
+# that recipient under the terms of the License. This Section 4(a)
+# applies to the Work as incorporated in a Collection, but this does
+# not require the Collection apart from the Work itself to be made
+# subject to the terms of this License. If You create a Collection,
+# upon notice from any Licensor You must, to the extent practicable,
+# remove from the Collection any credit as required by Section 4(c),
+# as requested. If You create an Adaptation, upon notice from any
+# Licensor You must, to the extent practicable, remove from the
+# Adaptation any credit as required by Section 4(c), as requested.
+# 2. You may Distribute or Publicly Perform an Adaptation only under the
+# terms of: (i) this License; (ii) a later version of this License
+# with the same License Elements as this License; (iii) a Creative
+# Commons jurisdiction license (either this or a later license
+# version) that contains the same License Elements as this License
+# (e.g., Attribution-ShareAlike 3.0 US)); (iv) a Creative Commons
+# Compatible License. If you license the Adaptation under one of the
+# licenses mentioned in (iv), you must comply with the terms of that
+# license. If you license the Adaptation under the terms of any of the
+# licenses mentioned in (i), (ii) or (iii) (the "Applicable License"),
+# you must comply with the terms of the Applicable License generally
+# and the following provisions: (I) You must include a copy of, or the
+# URI for, the Applicable License with every copy of each Adaptation
+# You Distribute or Publicly Perform; (II) You may not offer or impose
+# any terms on the Adaptation that restrict the terms of the
+# Applicable License or the ability of the recipient of the Adaptation
+# to exercise the rights granted to that recipient under the terms of
+# the Applicable License; (III) You must keep intact all notices that
+# refer to the Applicable License and to the disclaimer of warranties
+# with every copy of the Work as included in the Adaptation You
+# Distribute or Publicly Perform; (IV) when You Distribute or Publicly
+# Perform the Adaptation, You may not impose any effective
+# technological measures on the Adaptation that restrict the ability
+# of a recipient of the Adaptation from You to exercise the rights
+# granted to that recipient under the terms of the Applicable License.
+# This Section 4(b) applies to the Adaptation as incorporated in a
+# Collection, but this does not require the Collection apart from the
+# Adaptation itself to be made subject to the terms of the Applicable
+# License.
+# 3. If You Distribute, or Publicly Perform the Work or any Adaptations
+# or Collections, You must, unless a request has been made pursuant to
+# Section 4(a), keep intact all copyright notices for the Work and
+# provide, reasonable to the medium or means You are utilizing: (i)
+# the name of the Original Author (or pseudonym, if applicable) if
+# supplied, and/or if the Original Author and/or Licensor designate
+# another party or parties (e.g., a sponsor institute, publishing
+# entity, journal) for attribution ("Attribution Parties") in
+# Licensor's copyright notice, terms of service or by other reasonable
+# means, the name of such party or parties; (ii) the title of the Work
+# if supplied; (iii) to the extent reasonably practicable, the URI, if
+# any, that Licensor specifies to be associated with the Work, unless
+# such URI does not refer to the copyright notice or licensing
+# information for the Work; and (iv) , consistent with Ssection 3(b),
+# in the case of an Adaptation, a credit identifying the use of the
+# Work in the Adaptation (e.g., "French translation of the Work by
+# Original Author," or "Screenplay based on original Work by Original
+# Author"). The credit required by this Section 4(c) may be
+# implemented in any reasonable manner; provided, however, that in the
+# case of a Adaptation or Collection, at a minimum such credit will
+# appear, if a credit for all contributing authors of the Adaptation
+# or Collection appears, then as part of these credits and in a manner
+# at least as prominent as the credits for the other contributing
+# authors. For the avoidance of doubt, You may only use the credit
+# required by this Section for the purpose of attribution in the
+# manner set out above and, by exercising Your rights under this
+# License, You may not implicitly or explicitly assert or imply any
+# connection with, sponsorship or endorsement by the Original Author,
+# Licensor and/or Attribution Parties, as appropriate, of You or Your
+# use of the Work, without the separate, express prior written
+# permission of the Original Author, Licensor and/or Attribution Parties.
+# 4. Except as otherwise agreed in writing by the Licensor or as may be
+# otherwise permitted by applicable law, if You Reproduce, Distribute
+# or Publicly Perform the Work either by itself or as part of any
+# Adaptations or Collections, You must not distort, mutilate, modify
+# or take other derogatory action in relation to the Work which would
+# be prejudicial to the Original Author's honor or reputation.
+# Licensor agrees that in those jurisdictions (e.g. Japan), in which
+# any exercise of the right granted in Section 3(b) of this License
+# (the right to make Adaptations) would be deemed to be a distortion,
+# mutilation, modification or other derogatory action prejudicial to
+# the Original Author's honor and reputation, the Licensor will waive
+# or not assert, as appropriate, this Section, to the fullest extent
+# permitted by the applicable national law, to enable You to
+# reasonably exercise Your right under Section 3(b) of this License
+# (right to make Adaptations) but not otherwise.
+#
+# *5. Representations, Warranties and Disclaimer*
+#
+# UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+# OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+# KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+# INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+# FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+# LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+# WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
+# EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+#
+# *6. Limitation on Liability.* EXCEPT TO THE EXTENT REQUIRED BY
+# APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL
+# THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY
+# DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF
+# LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+#
+# *7. Termination*
+#
+# 1. This License and the rights granted hereunder will terminate
+# automatically upon any breach by You of the terms of this License.
+# Individuals or entities who have received Adaptations or Collections
+# from You under this License, however, will not have their licenses
+# terminated provided such individuals or entities remain in full
+# compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+# survive any termination of this License.
+# 2. Subject to the above terms and conditions, the license granted here
+# is perpetual (for the duration of the applicable copyright in the
+# Work). Notwithstanding the above, Licensor reserves the right to
+# release the Work under different license terms or to stop
+# distributing the Work at any time; provided, however that any such
+# election will not serve to withdraw this License (or any other
+# license that has been, or is required to be, granted under the terms
+# of this License), and this License will continue in full force and
+# effect unless terminated as stated above.
+#
+# *8. Miscellaneous*
+#
+# 1. Each time You Distribute or Publicly Perform the Work or a
+# Collection, the Licensor offers to the recipient a license to the
+# Work on the same terms and conditions as the license granted to You
+# under this License.
+# 2. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+# offers to the recipient a license to the original Work on the same
+# terms and conditions as the license granted to You under this License.
+# 3. If any provision of this License is invalid or unenforceable under
+# applicable law, it shall not affect the validity or enforceability
+# of the remainder of the terms of this License, and without further
+# action by the parties to this agreement, such provision shall be
+# reformed to the minimum extent necessary to make such provision
+# valid and enforceable.
+# 4. No term or provision of this License shall be deemed waived and no
+# breach consented to unless such waiver or consent shall be in
+# writing and signed by the party to be charged with such waiver or
+# consent.
+# 5. This License constitutes the entire agreement between the parties
+# with respect to the Work licensed here. There are no understandings,
+# agreements or representations with respect to the Work not specified
+# here. Licensor shall not be bound by any additional provisions that
+# may appear in any communication from You. This License may not be
+# modified without the mutual written agreement of the Licensor and You.
+# 6. The rights granted under, and the subject matter referenced, in this
+# License were drafted utilizing the terminology of the Berne
+# Convention for the Protection of Literary and Artistic Works (as
+# amended on September 28, 1979), the Rome Convention of 1961, the
+# WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms
+# Treaty of 1996 and the Universal Copyright Convention (as revised on
+# July 24, 1971). These rights and subject matter take effect in the
+# relevant jurisdiction in which the License terms are sought to be
+# enforced according to the corresponding provisions of the
+# implementation of those treaty provisions in the applicable national
+# law. If the standard suite of rights granted under applicable
+# copyright law includes additional rights not granted under this
+# License, such additional rights are deemed to be included in the
+# License; this License is not intended to restrict the license of any
+# rights under applicable law.
+acizane->âcizane
+alamanya->almanya
+aferim->aferin
+agrasif->agresif
+ağostos->ağustos
+ahret->ahiret
+ayle->aile
+alarım->alarm
+atmış->altmış
+alemiyon->alüminyum
+amarika->amerika
+anfi->amfi
+aparetif->aperitif
+arabeks->arabesk
+artiz->artist
+aşşağı->aşağı
+ahçı->aşçı
+avut->aut
+ayakıbı->ayakkabı
+azarbeycan->azerbaycan
+azerbeycan->azerbaycan
+avusturalya->avustralya
+bangledeş->bangladeş
+pıçak->bıçak
+bilmukavele->bilmukabele
+birşey->bir şey
+bir kaç->birkaç
+bir çok->birçok
+pisiklet->bisiklet
+püsküüt->bisküvi
+canbaz->cambaz
+çoçuk->çocuk
+çoşku->coşku
+cıplak->çıplak
+çiflik->çiftlik
+çünki->çünkü
+dekarasyon->dekorasyon
+debrem->deprem
+dohtor->doktor
+doktur->doktor
+doktör->doktor
+tiken->diken
+dinazor->dinozor
+diplamat->diplomat
+distibütör->distribütör
+dinayet->diyanet
+domat->domates
+domtiz->domates
+domatis->domates
+domatiz->domates
+döküman->doküman
+döndermek->döndürmek
+dükkan->dükkân
+tukkan->dükkân
+egsos->egzoz
+egsoz->egzoz
+egsozt->egzoz
+egzos->egzoz
+egzost->egzoz
+eksos->egzoz
+eksoz->egzoz
+eksozt->egzoz
+ekzos->egzoz
+ekzost->egzoz
+eşki->ekşi
+eylence->eğlence
+elenktirik->elektrik
+elenktrik->elektrik
+elektirik->elektrik
+entellektüel->entelektüel
+aşortman->eşofman
+eşortman->eşofman
+felan->falan
+filim->film
+formil->formül
+gardırop->gardrop
+gardolap->gardrop
+gaste->gazete
+goometri->geometri
+girişgen->girişken
+greyfirut->greyfurt
+greyfrut->greyfurt
+gürcüstan->gürcistan
+güzelgah->güzergâh
+güzergah->güzergâh
+harfiyat->hafriyat
+hastene->hastane
+havunç->havuç
+herhangibir->herhangi bir
+herşey->her şey,her şey
+haparlör->hoparlör
+hopollo->hoparlör
+hoporlör->hoparlör
+operlo->hoparlör
+operlor->hoparlör
+hakkari->hakkâri
+heralda->herhalde
+herkez->herkes
+#hiç bir->hiçbir
+hiç birşey->hiçbir şey
+hükümet->hükûmet
+holanda->hollanda
+istakoz->ıstakoz
+imkan->imkân
+imlâ->imla
+inkilap->inkılap
+insiyatif->inisiyatif
+iskan->iskân
+ıstanbul->istanbul
+istambul->istanbul
+istinâden->istinaden
+itibariyle->itibarıyla
+celatin->jelatin
+capon->Japon
+ceton->jeton
+jöton->jeton
+kağıt->kâğıt
+kağat->kâğıt
+kayfaltı->kahvaltı
+gahfe->kahve
+gayfe->kahve
+kaave->kahve
+kayfe->kahve
+kave->kahve
+gangren->kangren
+kankıran->kangren
+karekter->karakter
+kaysı->kayısı
+kebelek->kelebek
+keşki->keşke
+kırahatane->kıraathane
+kirbit->kibrit
+kipri->kirpi
+kiprik->kirpik,kirpik
+kokreç->kokoreç
+komonis->komünist
+komonist->komünist
+komonizm->komünizm
+kontür->kontör
+kopye->kopya
+kareografi->koreografi
+gipür->kupür
+küpür->kupür
+lahap->lakap
+leplepi->leblebi
+nalet->lanet
+leyen->leğen
+liğen->leğen
+liyen->leğen
+lüx->lüks
+makadonya->makedonya
+makina->makine
+maaşallah->maşallah
+matamatik->matematik
+menejer->menajer
+menapoz->menopoz
+mentalite->mantalite
+meraba->merhaba
+meyva->meyve
+mihendis->mühendis
+moğalistan->moğolistan
+müdehale->müdahale
+münübüs->minibüs
+müracat->müracaat
+mütahit->müteahhit
+mütevazi->mütevazı
+nacizane->naçizane
+laylon->naylon
+nufüs->nüfus
+nülüfer->nilüfer
+netekim->nitekim
+oce->oje
+okşizen->oksijen
+orjinal->orijinal
+otibis->otobüs
+#öğe->öge
+ötenazi->ötanazi
+palyanço->palyaço
+panaroma->panorama
+pantalon->pantolon
+pattes->patates
+pattis->patates
+peçeta->peçete
+penbe->pembe
+pelisilin->penilisin
+poaça->poğaça
+pohaça->poğaça
+poğçe->poğaça
+pırofösör->profesör
+prefesör->profesör
+profösör->profesör
+profütür->profiterol
+proğram->program
+promasyon->promosyon
+radyosyon->radyasyon
+romenya->romanya
+ruc->ruj
+sandaviç->sandviç
+sandeviç->sandviç
+sandoviç->sandviç
+sandöviç->sandviç
+sarmısak->sarımsak
+sarumsak->sarımsak
+satlık->satılık
+santranç->satranç
+santraç->satranç
+satraç->satranç
+skayner->scanner
+zebze->sebze
+seramoni->seremoni
+seromoni->seremoni
+sikorta->sigorta
+sinama->sinema
+siyasî->siyasi
+sıkandal->skandal
+sovan->soğan
+sosyel->sosyal
+sitretoskop->stetoskop
+siteteskop->stetoskop
+süpriz->sürpriz
+südyen->sütyen
+şartel->şalter
+şaltel->şalter
+şarz->şarj
+şindi->şimdi
+şöfer->şoför
+şöför->şoför
+tetbir->tedbir
+temis->temiz
+telafuz->telaffuz
+tenefüs->teneffüs
+tellik->terlik
+tranvay->tramvay
+törörist->terörist
+teşebüs->teşebbüs
+teşeppüs->teşebbüs
+tiskinmek->tiksinmek
+tos->tost
+tükrük->tükürük
+tüprük->tükürük
+traş->tıraş
+türkiya->türkiye
+ukele->ukala
+ükela->ukala
+ukranya->ukrayna
+ukrayin->ukrayna
+ünvan->unvan
+üçken->üçgen
+vucüt->vücut
+vucud->vücut
+vürüs->virüs
+fites->vites
+valeybol->voleybol
+veleybol->voleybol
+yada->ya da
+yanlız->yalnız
+yannış->yanlış
+yalnış->yanlış
+yimek->yemek
+yeni zellanda->yeni zelanda
+gine->yine
+zerafet->zarafet
diff --git a/lint/cli/src/com/android/tools/lint/HtmlReporter.java b/lint/cli/src/com/android/tools/lint/HtmlReporter.java
index e962fec..c3ed9d2 100644
--- a/lint/cli/src/com/android/tools/lint/HtmlReporter.java
+++ b/lint/cli/src/com/android/tools/lint/HtmlReporter.java
@@ -33,10 +33,10 @@ import com.google.common.base.Charsets;
import com.google.common.collect.Maps;
import com.google.common.io.ByteStreams;
import com.google.common.io.Closeables;
+import com.google.common.io.Files;
import java.io.BufferedWriter;
import java.io.File;
-import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.Writer;
@@ -86,7 +86,7 @@ public class HtmlReporter extends Reporter {
*/
public HtmlReporter(Main client, File output) throws IOException {
super(client, output);
- mWriter = new BufferedWriter(new FileWriter(output));
+ mWriter = new BufferedWriter(Files.newWriter(output, Charsets.UTF_8));
}
@Override
@@ -96,6 +96,7 @@ public class HtmlReporter extends Reporter {
mWriter.write(
"<html>\n" + //$NON-NLS-1$
"<head>\n" + //$NON-NLS-1$
+ "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>" + //$NON-NLS-1$
"<title>" + mTitle + "</title>\n"); //$NON-NLS-1$//$NON-NLS-2$
writeStyleSheet();
diff --git a/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoDetector.java b/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoDetector.java
index 5b50308..ad3b7a3 100644
--- a/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoDetector.java
+++ b/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoDetector.java
@@ -16,6 +16,7 @@
package com.android.tools.lint.checks;
+import static com.android.tools.lint.checks.TypoLookup.isLetter;
import static com.android.tools.lint.detector.api.LintConstants.TAG_STRING;
import static com.google.common.base.Objects.equal;
@@ -40,7 +41,6 @@ import org.w3c.dom.NodeList;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
/**
@@ -76,8 +76,11 @@ import java.util.List;
* </ul>
*/
public class TypoDetector extends ResourceXmlDetector {
- private TypoLookup mLookup;
- private String mLastLanguage;
+ private @Nullable TypoLookup mLookup;
+ private @Nullable String mLastLanguage;
+ private @Nullable String mLastRegion;
+ private @Nullable String mLanguage;
+ private @Nullable String mRegion;
/** The main issue discovered by this detector */
public static final Issue ISSUE = Issue.create(
@@ -101,36 +104,46 @@ public class TypoDetector extends ResourceXmlDetector {
return folderType == ResourceFolderType.VALUES;
}
- /** Look up the locale from the given parent folder name, or null if there isn't one */
- @Nullable
- private String getLocale(@NonNull String parent) {
+ /** Look up the locale and region from the given parent folder name and store it
+ * in {@link #mLanguage} and {@link #mRegion} */
+ private void initLocale(@NonNull String parent) {
+ mLanguage = null;
+ mRegion = null;
+
if (parent.equals("values")) { //$NON-NLS-1$
- return null;
+ return;
}
for (String qualifier : Splitter.on('-').split(parent)) {
- if (qualifier.length() == 2) {
+ int qualifierLength = qualifier.length();
+ if (qualifierLength == 2) {
char first = qualifier.charAt(0);
- char second = qualifier.charAt(0);
+ char second = qualifier.charAt(1);
if (first >= 'a' && first <= 'z' && second >= 'a' && second <= 'z') {
- return qualifier;
+ mLanguage = qualifier;
+ }
+ } else if (qualifierLength == 3 && qualifier.charAt(0) == 'r') {
+ char first = qualifier.charAt(1);
+ char second = qualifier.charAt(2);
+ if (first >= 'A' && first <= 'Z' && second >= 'A' && second <= 'Z') {
+ mRegion = new String(new char[] { first, second }); // Don't include the "r"
}
+ break;
}
}
-
- return null;
}
@Override
public void beforeCheckFile(@NonNull Context context) {
- String language = getLocale(context.file.getParentFile().getName());
- if (language == null) {
- language = "en"; //$NON-NLS-1$
+ initLocale(context.file.getParentFile().getName());
+ if (mLanguage == null) {
+ mLanguage = "en"; //$NON-NLS-1$
}
- if (!equal(mLastLanguage, language)) {
- mLastLanguage = language;
- mLookup = TypoLookup.get(context.getClient(), language);
+ if (!equal(mLastLanguage, mLanguage) || !equal(mLastRegion, mRegion)) {
+ mLookup = TypoLookup.get(context.getClient(), mLanguage, mRegion);
+ mLastLanguage = mLanguage;
+ mLastRegion = mRegion;
}
}
@@ -177,7 +190,6 @@ public class TypoDetector extends ResourceXmlDetector {
return;
}
int begin = index;
- index++;
while (index < max && Character.isLetter(text.charAt(index))) {
if (text.charAt(index) >= 0x80) {
// Switch to UTF-8 handling for this string
@@ -200,10 +212,9 @@ public class TypoDetector extends ResourceXmlDetector {
int end = index;
checkedTypos = true;
- Iterable<String> replacements = mLookup.getTypos(text, begin, end);
+ List<String> replacements = mLookup.getTypos(text, begin, end);
if (replacements != null) {
- String word = text.substring(begin, end);
- reportTypo(context, node, word, begin, end, replacements);
+ reportTypo(context, node, text, begin, replacements);
}
index = end + 1;
@@ -214,10 +225,10 @@ public class TypoDetector extends ResourceXmlDetector {
int byteStart, int byteEnd, String text, int charStart) {
int index = byteStart;
while (index < byteEnd) {
- byte b = utf8Text[index];
// Find beginning of word
while (index < byteEnd) {
- if (b != ' ' && b != '\t' && b != '\n' && b != '\r') {
+ byte b = utf8Text[index];
+ if (isLetter(b)) {
break;
}
index++;
@@ -232,12 +243,12 @@ public class TypoDetector extends ResourceXmlDetector {
}
int charEnd = charStart;
int begin = index;
- index++;
// Find end of word. Unicode has the nice property that even 2nd, 3rd and 4th
// bytes won't match these ASCII characters (because the high bit must be set there)
while (index < byteEnd) {
- if (b == ' ' || b == '\t' || b == '\n' || b == '\r') {
+ byte b = utf8Text[index];
+ if (!isLetter(b)) {
break;
}
index++;
@@ -248,56 +259,62 @@ public class TypoDetector extends ResourceXmlDetector {
}
int end = index;
- Iterable<String> replacements = mLookup.getTypos(utf8Text, begin, end);
+ List<String> replacements = mLookup.getTypos(utf8Text, begin, end);
if (replacements != null) {
- String word = text.substring(charStart, charEnd);
- reportTypo(context, node, word, charStart, end, replacements);
+ reportTypo(context, node, text, charStart, replacements);
}
- index = end + 1;
+ charStart = charEnd;
}
}
-
/** Report the typo found at the given offset and suggest the given replacements */
- private void reportTypo(XmlContext context, Node node,
- String word, int begin, int end, Iterable<String> replacements) {
+ private void reportTypo(XmlContext context, Node node, String text, int begin,
+ List<String> replacements) {
+ if (replacements.size() < 2) {
+ return;
+ }
+
+ String typo = replacements.get(0);
+ String word = text.substring(begin, begin + typo.length());
+
String first = null;
String message;
- Iterator<String> iterator = replacements.iterator();
- if (iterator.hasNext()) {
- boolean isCapitalized = Character.isUpperCase(word.charAt(0));
- StringBuilder sb = new StringBuilder();
- for (String replacement : replacements) {
- if (first == null) {
- first = replacement;
- }
- if (sb.length() > 0) {
- sb.append(" or ");
- }
- sb.append('"');
- if (isCapitalized) {
- sb.append(Character.toUpperCase(replacement.charAt(0))
- + replacement.substring(1));
- } else {
- sb.append(replacement);
- }
- sb.append('"');
- }
- if (first != null && first.equalsIgnoreCase(word)) {
- message = String.format(
- "\"%1$s\" is usually capitalized as \"%2$s\"",
- word, first);
+ boolean isCapitalized = Character.isUpperCase(word.charAt(0));
+ StringBuilder sb = new StringBuilder();
+ for (int i = 1, n = replacements.size(); i < n; i++) {
+ String replacement = replacements.get(i);
+ if (first == null) {
+ first = replacement;
+ }
+ if (sb.length() > 0) {
+ sb.append(" or ");
+ }
+ sb.append('"');
+ if (isCapitalized) {
+ sb.append(Character.toUpperCase(replacement.charAt(0))
+ + replacement.substring(1));
} else {
- message = String.format(
- "\"%1$s\" is a common misspelling; did you mean %2$s ?",
- word, sb.toString());
+ sb.append(replacement);
+ }
+ sb.append('"');
+ }
+
+ if (first != null && first.equalsIgnoreCase(word)) {
+ if (first.equals(word)) {
+ return;
}
+ message = String.format(
+ "\"%1$s\" is usually capitalized as \"%2$s\"",
+ word, first);
} else {
- message = String.format("\"%1$s\" is a common misspelling", word);
+ message = String.format(
+ "\"%1$s\" is a common misspelling; did you mean %2$s ?",
+ word, sb.toString());
}
+ int end = begin + word.length();
context.report(ISSUE, node, context.getLocation(node, begin, end), message, null);
}
diff --git a/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoLookup.java b/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoLookup.java
index 767a6ec..4a4591d 100644
--- a/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoLookup.java
+++ b/lint/libs/lint_checks/src/com/android/tools/lint/checks/TypoLookup.java
@@ -21,12 +21,12 @@ import static com.android.tools.lint.detector.api.LintUtils.assertionsEnabled;
import com.android.annotations.NonNull;
import com.android.annotations.Nullable;
+import com.android.annotations.VisibleForTesting;
import com.android.tools.lint.client.api.LintClient;
import com.android.tools.lint.detector.api.LintUtils;
import com.google.common.base.Charsets;
import com.google.common.base.Splitter;
import com.google.common.io.Files;
-import com.google.common.primitives.UnsignedBytes;
import java.io.File;
import java.io.FileOutputStream;
@@ -79,16 +79,32 @@ public class TypoLookup {
* originally passed in. In other words, this parameter may be
* ignored if the client created is not new.
* @param locale the locale to look up a typo database for (should be a
- * language code (ISO 639-1, two lowercase character names)
+ * language code (ISO 639-1, two lowercase character names)
+ * @param region the region to look up a typo database for (should be a two
+ * letter ISO 3166-1 alpha-2 country code in upper case) language
+ * code
* @return a (possibly shared) instance of the typo database, or null if its
* data can't be found
*/
@Nullable
- public static TypoLookup get(@NonNull LintClient client, @NonNull String locale) {
+ public static TypoLookup get(@NonNull LintClient client, @NonNull String locale,
+ @Nullable String region) {
synchronized (TypoLookup.class) {
- TypoLookup db = sInstanceMap.get(locale);
+ String key = locale;
+
+ if (region != null) {
+ // Allow for region-specific dictionaries. See for example
+ // http://en.wikipedia.org/wiki/American_and_British_English_spelling_differences
+ assert region.length() == 2
+ && Character.isUpperCase(region.charAt(0))
+ && Character.isUpperCase(region.charAt(1)) : region;
+ // Look for typos-en-rUS.txt etc
+ key = locale + 'r' + region;
+ }
+
+ TypoLookup db = sInstanceMap.get(key);
if (db == null) {
- String path = String.format(XML_FILE_PATH, locale);
+ String path = String.format(XML_FILE_PATH, key);
File file = client.findResource(path);
if (file == null) {
// AOSP build environment?
@@ -101,11 +117,16 @@ public class TypoLookup {
}
if (file == null || !file.exists()) {
+ if (region != null) {
+ // Fall back to the generic locale (non-region-specific) database
+ return get(client, locale, null);
+ }
db = NONE;
} else {
db = get(client, file);
+ assert db != null : file;
}
- sInstanceMap.put(locale, db);
+ sInstanceMap.put(key, db);
}
if (db == NONE) {
@@ -126,7 +147,8 @@ public class TypoLookup {
* @return a (possibly shared) instance of the typo database, or null
* if its data can't be found
*/
- public static TypoLookup get(LintClient client, File xmlFile) {
+ @Nullable
+ private static TypoLookup get(LintClient client, File xmlFile) {
if (!xmlFile.exists()) {
client.log(null, "The typo database file %1$s does not exist", xmlFile);
return null;
@@ -303,8 +325,12 @@ public class TypoLookup {
if (end == -1) {
end = line.trim().length();
}
- String typo = line.substring(0, end);
+ String typo = line.substring(0, end).trim();
String replacements = line.substring(end + WORD_SEPARATOR.length()).trim();
+ if (replacements.isEmpty()) {
+ // We don't support empty replacements
+ continue;
+ }
String combined = typo + (char) 0 + replacements;
words.add(combined);
@@ -398,36 +424,65 @@ public class TypoLookup {
// For debugging only
private String dumpEntry(int offset) {
if (DEBUG_SEARCH) {
- StringBuilder sb = new StringBuilder();
- for (int i = offset; i < mData.length; i++) {
- if (mData[i] == 0) {
- break;
- }
- char c = (char) UnsignedBytes.toInt(mData[i]);
- sb.append(c);
+ int end = offset;
+ while (mData[end] != 0) {
+ end++;
}
-
- return sb.toString();
+ return new String(mData, offset, end - offset, Charsets.UTF_8);
} else {
return "<disabled>"; //$NON-NLS-1$
}
}
/** Comparison function: *only* used for ASCII strings */
- private static int compare(byte[] data, int offset, byte terminator, CharSequence s,
+ @VisibleForTesting
+ static int compare(byte[] data, int offset, byte terminator, CharSequence s,
int begin, int end) {
int i = offset;
int j = begin;
- for (; j < end; i++, j++) {
+ for (; ; i++, j++) {
byte b = data[i];
+ if (b == ' ') {
+ // We've matched up to the space in a split-word typo, such as
+ // in German all zu=>allzu; here we've matched just past "all".
+ // Rather than terminating, attempt to continue in the buffer.
+ if (j == end) {
+ int max = s.length();
+ if (end < max && s.charAt(end) == ' ') {
+ // Find next word
+ for (; end < max; end++) {
+ char c = s.charAt(end);
+ if (!Character.isLetter(c)) {
+ if (c == ' ' && end == j) {
+ continue;
+ }
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ if (j == end) {
+ break;
+ }
+
+ if (b == '*') {
+ // Glob match (only supported at the end)
+ return 0;
+ }
char c = s.charAt(j);
byte cb = (byte) c;
int delta = b - cb;
if (delta != 0) {
cb = (byte) Character.toLowerCase(c);
- delta = b - cb;
- if (delta != 0) {
- return delta;
+ if (b != cb) {
+ // Ensure that it has the right sign
+ b = (byte) Character.toLowerCase(b);
+ delta = b - cb;
+ if (delta != 0) {
+ return delta;
+ }
}
}
}
@@ -436,22 +491,51 @@ public class TypoLookup {
}
/** Comparison function used for general UTF-8 encoded strings */
- private static int compare(byte[] data, int offset, byte terminator, byte[] s,
+ @VisibleForTesting
+ static int compare(byte[] data, int offset, byte terminator, byte[] s,
int begin, int end) {
int i = offset;
int j = begin;
- for (; j < end; i++, j++) {
+ for (; ; i++, j++) {
byte b = data[i];
+ if (b == ' ') {
+ // We've matched up to the space in a split-word typo, such as
+ // in German all zu=>allzu; here we've matched just past "all".
+ // Rather than terminating, attempt to continue in the buffer.
+ // We've matched up to the space in a split-word typo, such as
+ // in German all zu=>allzu; here we've matched just past "all".
+ // Rather than terminating, attempt to continue in the buffer.
+ if (j == end) {
+ int max = s.length;
+ if (end < max && s[end] == ' ') {
+ // Find next word
+ for (; end < max; end++) {
+ byte cb = s[end];
+ if (!isLetter(cb)) {
+ if (cb == ' ' && end == j) {
+ continue;
+ }
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ if (j == end) {
+ break;
+ }
+ if (b == '*') {
+ // Glob match (only supported at the end)
+ return 0;
+ }
byte cb = s[j];
int delta = b - cb;
if (delta != 0) {
- if (cb >= 'A' && cb <= 'Z') { // TODO: Generalize lower-casing here
- cb -= 'A' - 'a';
- delta = b - cb;
- if (delta != 0) {
- return delta;
- }
- } else {
+ cb = toLowerCase(cb);
+ b = toLowerCase(b);
+ delta = b - cb;
+ if (delta != 0) {
return delta;
}
}
@@ -465,17 +549,19 @@ public class TypoLookup {
}
/**
- * Look up whether this word is a typo, and if so, return one or more likely
- * meanings
+ * Look up whether this word is a typo, and if so, return the typo itself
+ * and one or more likely meanings
*
* @param text the string containing the word
* @param begin the index of the first character in the word
- * @param end the index of the first character after the word
- * @return an iterable of replacement strings if the word represents a typo,
- * and null otherwise
+ * @param end the index of the first character after the word. Note that the
+ * search may extend <b>beyond</b> this index, if for example the
+ * word matches a multi-word typo in the dictionary
+ * @return a list of the typo itself followed by the replacement strings if
+ * the word represents a typo, and null otherwise
*/
@Nullable
- public Iterable<String> getTypos(@NonNull CharSequence text, int begin, int end) {
+ public List<String> getTypos(@NonNull CharSequence text, int begin, int end) {
assert end <= text.length();
if (assertionsEnabled()) {
@@ -501,15 +587,36 @@ public class TypoLookup {
// Compare the word at the given index.
int compare = compare(mData, offset, (byte) 0, text, begin, end);
+
if (compare == 0) {
offset = mIndices[middle];
+ // Don't allow matching uncapitalized words, such as "enlish", when
+ // the dictionary word is capitalized, "Enlish".
+ if (mData[offset] != text.charAt(begin)
+ && Character.isLowerCase(text.charAt(begin))) {
+ return null;
+ }
+
// Make sure there is a case match; we only want to allow
// matching capitalized words to capitalized typos or uncapitalized typos
// (e.g. "Teh" and "teh" to "the"), but not uncapitalized words to capitalized
// typos (e.g. "enlish" to "Enlish").
- for (int i = begin; i < end; i++) {
+ String glob = null;
+ for (int i = begin; ; i++) {
byte b = mData[offset++];
+ if (b == 0) {
+ offset--;
+ break;
+ } else if (b == '*') {
+ int globEnd = i;
+ while (globEnd < text.length()
+ && Character.isLetter(text.charAt(globEnd))) {
+ globEnd++;
+ }
+ glob = text.subSequence(i, globEnd).toString();
+ break;
+ }
char c = text.charAt(i);
byte cb = (byte) c;
if (b != cb && i > begin) {
@@ -517,15 +624,7 @@ public class TypoLookup {
}
}
- assert mData[offset] == 0;
- offset++;
- int replacementEnd = offset;
- while (mData[replacementEnd] != 0) {
- replacementEnd++;
- }
- String replacements = new String(mData, offset, replacementEnd - offset,
- Charsets.UTF_8);
- return Splitter.on(',').omitEmptyStrings().trimResults().split(replacements);
+ return computeSuggestions(mIndices[middle], offset, glob);
}
if (compare < 0) {
@@ -542,17 +641,19 @@ public class TypoLookup {
}
/**
- * Look up whether this word is a typo, and if so, return one or more likely
- * meanings
+ * Look up whether this word is a typo, and if so, return the typo itself
+ * and one or more likely meanings
*
* @param utf8Text the string containing the word, encoded as UTF-8
* @param begin the index of the first character in the word
- * @param end the index of the first character after the word
- * @return an iterable of replacement strings if the word represents a typo,
- * and null otherwise
+ * @param end the index of the first character after the word. Note that the
+ * search may extend <b>beyond</b> this index, if for example the
+ * word matches a multi-word typo in the dictionary
+ * @return a list of the typo itself followed by the replacement strings if
+ * the word represents a typo, and null otherwise
*/
@Nullable
- public Iterable<String> getTypos(@NonNull byte[] utf8Text, int begin, int end) {
+ public List<String> getTypos(@NonNull byte[] utf8Text, int begin, int end) {
assert end <= utf8Text.length;
int low = 0;
@@ -562,36 +663,53 @@ public class TypoLookup {
int offset = mIndices[middle];
if (DEBUG_SEARCH) {
- System.out.println("Comparing string " + utf8Text +" with entry at " + offset
+ String s = new String(Arrays.copyOfRange(utf8Text, begin, end), Charsets.UTF_8);
+ System.out.println("Comparing string " + s +" with entry at " + offset
+ ": " + dumpEntry(offset));
+ System.out.println(" middle=" + middle + ", low=" + low + ", high=" + high);
}
// Compare the word at the given index.
int compare = compare(mData, offset, (byte) 0, utf8Text, begin, end);
+
+ if (DEBUG_SEARCH) {
+ System.out.println(" signum=" + (int)Math.signum(compare) + ", delta=" + compare);
+ }
+
if (compare == 0) {
offset = mIndices[middle];
+ // Don't allow matching uncapitalized words, such as "enlish", when
+ // the dictionary word is capitalized, "Enlish".
+ if (mData[offset] != utf8Text[begin] && isUpperCase(mData[offset])) {
+ return null;
+ }
+
// Make sure there is a case match; we only want to allow
// matching capitalized words to capitalized typos or uncapitalized typos
// (e.g. "Teh" and "teh" to "the"), but not uncapitalized words to capitalized
// typos (e.g. "enlish" to "Enlish").
- for (int i = begin; i < end; i++) {
+ String glob = null;
+ for (int i = begin; ; i++) {
byte b = mData[offset++];
+ if (b == 0) {
+ offset--;
+ break;
+ } else if (b == '*') {
+ int globEnd = i;
+ while (globEnd < utf8Text.length && isLetter(utf8Text[globEnd])) {
+ globEnd++;
+ }
+ glob = new String(utf8Text, i, globEnd - i, Charsets.UTF_8);
+ break;
+ }
byte cb = utf8Text[i];
if (b != cb && i > begin) {
return null;
}
}
- assert mData[offset] == 0;
- offset++;
- int replacementEnd = offset;
- while (mData[replacementEnd] != 0) {
- replacementEnd++;
- }
- String replacements = new String(mData, offset, replacementEnd - offset,
- Charsets.UTF_8);
- return Splitter.on(',').omitEmptyStrings().trimResults().split(replacements);
+ return computeSuggestions(mIndices[middle], offset, glob);
}
if (compare < 0) {
@@ -606,4 +724,62 @@ public class TypoLookup {
return null;
}
+
+ private List<String> computeSuggestions(int begin, int offset, String glob) {
+ String typo = new String(mData, begin, offset - begin, Charsets.UTF_8);
+
+ if (glob != null) {
+ typo = typo.replaceAll("\\*", glob); //$NON-NLS-1$
+ }
+
+ assert mData[offset] == 0;
+ offset++;
+ int replacementEnd = offset;
+ while (mData[replacementEnd] != 0) {
+ replacementEnd++;
+ }
+ String replacements = new String(mData, offset, replacementEnd - offset, Charsets.UTF_8);
+ List<String> words = new ArrayList<String>();
+ words.add(typo);
+
+ // The first entry should be the typo itself. We need to pass this back since due
+ // to multi-match words and globbing it could extend beyond the initial word range
+
+ for (String s : Splitter.on(',').omitEmptyStrings().trimResults().split(replacements)) {
+ if (glob != null) {
+ // Need to append the glob string to each result
+ words.add(s.replaceAll("\\*", glob)); //$NON-NLS-1$
+ } else {
+ words.add(s);
+ }
+ }
+
+ return words;
+ }
+
+ // "Character" handling for bytes. This assumes that the bytes correspond to Unicode
+ // characters in the ISO 8859-1 range, which is are encoded the same way in UTF-8.
+ // This obviously won't work to for example uppercase to lowercase conversions for
+ // multi byte characters, which means we simply won't catch typos if the dictionaries
+ // contain these. None of the currently included dictionaries do. However, it does
+ // help us properly deal with punctuation and spacing characters.
+
+ static final boolean isUpperCase(byte b) {
+ return Character.isUpperCase((char) b);
+ }
+
+ static final byte toLowerCase(byte b) {
+ return (byte) Character.toLowerCase((char) b);
+ }
+
+ static final boolean isSpace(byte b) {
+ return Character.isWhitespace((char) b);
+ }
+
+ static final boolean isLetter(byte b) {
+ // Assume that multi byte characters represent letters in other languages.
+ // Obviously, it could be unusual punctuation etc but letters are more likely
+ // in this context.
+ return Character.isLetter((char) b) || (b & 0x80) != 0;
+ }
}
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/AbstractCheckTest.java b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/AbstractCheckTest.java
index 90bb29b..da84ae1 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/AbstractCheckTest.java
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/AbstractCheckTest.java
@@ -408,6 +408,7 @@ public abstract class AbstractCheckTest extends TestCase {
File sdkDir = dir.getParentFile().getParentFile().getParentFile()
.getParentFile().getParentFile().getParentFile();
File file = new File(sdkDir, "sdk" + File.separator + "files"
+ + File.separator + "typos"
+ File.separator + base);
return file;
} catch (URISyntaxException e) {
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoDetectorTest.java b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoDetectorTest.java
index 646f032..864c065 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoDetectorTest.java
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoDetectorTest.java
@@ -63,10 +63,19 @@ public class TypoDetectorTest extends AbstractCheckTest {
lintProject("res/values-nb/typos.xml"));
}
+ public void testGerman() throws Exception {
+ // Test globbing and multiple word matching
+ assertEquals(
+ "typos.xml:10: Warning: \"zurck gefoobaren\" is a common misspelling; did you mean \"zurckgefoobaren\" ?\n" +
+ "typos.xml:6: Warning: \"befindet eine\" is a common misspelling; did you mean \"befindet sich eine\" ?\n" +
+ "typos.xml:9: Warning: \"Authorisierungscode\" is a common misspelling; did you mean \"Autorisierungscode\" ?",
+ lintProject("res/values-de/typos.xml"));
+ }
+
public void testOk() throws Exception {
assertEquals(
"No warnings.",
- lintProject("res/values/typos.xml=>res/values-de/strings.xml"));
+ lintProject("res/values/typos.xml=>res/values-xy/strings.xml"));
}
public void testGetReplacements() {
@@ -75,6 +84,5 @@ public class TypoDetectorTest extends AbstractCheckTest {
assertEquals("throught", TypoDetector.getTypo(s));
assertEquals(Arrays.asList("thought", "through", "throughout"),
TypoDetector.getSuggestions(s));
-
}
}
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoLookupTest.java b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoLookupTest.java
index 0f4e15a..e57b8ce 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoLookupTest.java
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/TypoLookupTest.java
@@ -16,47 +16,110 @@
package com.android.tools.lint.checks;
+import com.android.tools.lint.client.api.LintClient;
import com.android.tools.lint.detector.api.Detector;
import com.google.common.base.Charsets;
+import com.google.common.base.Splitter;
+import com.google.common.io.Files;
-import java.util.Iterator;
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.regex.Pattern;
@SuppressWarnings("javadoc")
public class TypoLookupTest extends AbstractCheckTest {
+ private static final String SEPARATOR = "->";
+
+ public void testCapitalization() throws Exception {
+ LintClient client = new TestLintClient();
+ // Make sure it can be read in
+ TypoLookup db = TypoLookup.get(client, "de", null);
+ assertNotNull(db);
+ assertNotNull(db.getTypos("Andriod".getBytes(Charsets.UTF_8), 0, "Andriod".length()));
+ }
+
+ public void testDictionary_English() throws Exception {
+ validateDictionary("en");
+ }
+
+ public void testDictionary_German() throws Exception {
+ validateDictionary("de");
+ }
+
+ public void testDictionary_Spanish() throws Exception {
+ validateDictionary("es");
+ }
+
+ public void testDictionary_Hungarian() throws Exception {
+ validateDictionary("hu");
+ }
+
+ public void testDictionary_Italian() throws Exception {
+ validateDictionary("it");
+ }
+
+ public void testDictionary_Norwegian() throws Exception {
+ validateDictionary("nb");
+ }
+
+ public void testDictionary_Portuguese() throws Exception {
+ validateDictionary("pt");
+ }
+
+ public void testDictionary_Turkish() throws Exception {
+ validateDictionary("tr");
+ }
public void test1() {
- TypoLookup db = TypoLookup.get(new TestLintClient(), "en");
+ TypoLookup db = TypoLookup.get(new TestLintClient(), "en", null);
assertNull(db.getTypos("hello", 0, "hello".length()));
assertNull(db.getTypos("this", 0, "this".length()));
assertNotNull(db.getTypos("wiht", 0, "wiht".length()));
assertNotNull(db.getTypos("woudl", 0, "woudl".length()));
- assertEquals("would", db.getTypos("woudl", 0, "woudl".length()).iterator().next());
- assertEquals("would", db.getTypos(" woudl ", 2, 7).iterator().next());
+ assertEquals("would", db.getTypos("woudl", 0, "woudl".length()).get(1));
+ assertEquals("would", db.getTypos(" woudl ", 2, 7).get(1));
assertNotNull(db.getTypos("foo wiht bar", 4, 8));
- Iterator<String> typos = db.getTypos("throught", 0, "throught".length()).iterator();
- assertEquals("thought", typos.next());
- assertEquals("through", typos.next());
- assertEquals("throughout", typos.next());
+ List<String> typos = db.getTypos("throught", 0, "throught".length());
+ assertEquals("throught", typos.get(0)); // the typo
+ assertEquals("thought", typos.get(1));
+ assertEquals("through", typos.get(2));
+ assertEquals("throughout", typos.get(3));
// Capitalization handling
assertNotNull(db.getTypos("Woudl", 0, "Woudl".length()));
assertNotNull(db.getTypos("Enlish", 0, "Enlish".length()));
assertNull(db.getTypos("enlish", 0, "enlish".length()));
+ assertNull(db.getTypos("enlish".getBytes(Charsets.UTF_8), 0, "enlish".length()));
assertNotNull(db.getTypos("ok", 0, "ok".length()));
assertNotNull(db.getTypos("Ok", 0, "Ok".length()));
assertNull(db.getTypos("OK", 0, "OK".length()));
}
+ public void testRegion() {
+ TypoLookup db = TypoLookup.get(new TestLintClient(), "en", "US");
+ assertNotNull(db.getTypos("wiht", 0, "wiht".length()));
+ db = TypoLookup.get(new TestLintClient(), "en", "GB");
+ assertNotNull(db.getTypos("wiht", 0, "wiht".length()));
+ }
+
public void test2() {
- TypoLookup db = TypoLookup.get(new TestLintClient(), "nb"); //$NON-NLS-1$
+ TypoLookup db = TypoLookup.get(new TestLintClient(), "nb", null); //$NON-NLS-1$
assertNull(db.getTypos("hello", 0, "hello".length()));
assertNull(db.getTypos("this", 0, "this".length()));
assertNotNull(db.getTypos("altid", 0, "altid".length()));
- assertEquals("alltid", db.getTypos("altid", 0, "altid".length()).iterator().next());
- assertEquals("alltid", db.getTypos(" altid ", 2, 7).iterator().next());
+ assertEquals("alltid", db.getTypos("altid", 0, "altid".length()).get(1));
+ assertEquals("alltid", db.getTypos(" altid ", 2, 7).get(1));
assertNotNull(db.getTypos("foo altid bar", 4, 9));
// Test utf-8 string which isn't ASCII
@@ -64,7 +127,392 @@ public class TypoLookupTest extends AbstractCheckTest {
byte[] sb = s.getBytes(Charsets.UTF_8);
assertNotNull(db.getTypos(sb, 0, sb.length));
- assertEquals("karrière", db.getTypos(sb, 0, sb.length).iterator().next());
+ assertEquals("karrière", db.getTypos(sb, 0, sb.length).get(1));
+ }
+
+ public void testMultiWords() {
+ // Some language dictionaries contain multi-word sequences (e.g. where there's a
+ // space on the left hand side). This needs some particular care in the lookup
+ // which is usually word oriented.
+ TypoLookup db = TypoLookup.get(new TestLintClient(), "de", "DE"); //$NON-NLS-1$
+
+ // all zu->allzu
+
+ // Text handling
+ String t = "all zu";
+ assertNotNull(db.getTypos(t, 0, t.length()));
+ assertEquals("allzu", db.getTypos(t, 0, t.length()).get(1));
+
+ // Byte handling
+ byte[] text = "all zu".getBytes(Charsets.UTF_8);
+ assertNotNull(db.getTypos(text, 0, text.length));
+ assertEquals("allzu", db.getTypos(text, 0, text.length).get(1));
+
+ // Test automatically extending search beyond current word
+ text = "all zu".getBytes(Charsets.UTF_8);
+ assertNotNull(db.getTypos(text, 0, 3));
+ assertEquals("allzu", db.getTypos(text, 0, text.length).get(1));
+
+
+ text = ") all zu (".getBytes(Charsets.UTF_8);
+ assertNotNull(db.getTypos(text, 2, 8));
+ assertEquals("allzu", db.getTypos(text, 2, 8).get(1));
+
+ text = "am einem".getBytes(Charsets.UTF_8);
+ assertNotNull(db.getTypos(text, 0, text.length));
+ assertEquals("an einem", db.getTypos(text, 0, text.length).get(1));
+ }
+
+ public void testGlobbing() {
+ TypoLookup db = TypoLookup.get(new TestLintClient(), "de", null);
+
+ // Authorisierung*->Autorisierung*
+ String text = "Authorisierungscode";
+ byte[] bytes = text.getBytes(Charsets.UTF_8);
+
+ assertNotNull(db.getTypos(text, 0, text.length()));
+ assertEquals("Autorisierungscode", db.getTypos(text, 0, text.length()).get(1));
+ assertEquals(text, db.getTypos(text, 0, text.length()).get(0));
+
+ assertNotNull(db.getTypos(bytes, 0, bytes.length));
+ assertEquals("Autorisierungscode", db.getTypos(bytes, 0, bytes.length).get(1));
+
+ // befindet ein*->befindet sich ein*
+ text = "wo befindet eine ip";
+ assertEquals("befindet sich eine", db.getTypos(text, 3, 16).get(1));
+
+ // zurück ge*->zurückge*
+ text = "zurück gefoobaren";
+ bytes = text.getBytes(Charsets.UTF_8);
+ assertNotNull(db.getTypos(bytes, 0, bytes.length));
+ assertEquals("zurückgefoobaren", db.getTypos(bytes, 0, bytes.length).get(1));
+ }
+
+ public void testComparisons() throws Exception {
+ // Ensure that the two comparison methods agree
+
+ LintClient client = new TestLintClient();
+ for (String locale : new String[] { "de", "nb", "es", "en", "pt", "hu", "it", "tr" }) {
+ File f = client.findResource(String.format("tools/support/typos-%1$s.txt", locale));
+ assertTrue(locale, f != null && f.exists());
+
+ Set<String> typos = new HashSet<String>(2000);
+ List<String> lines = Files.readLines(f, Charsets.UTF_8);
+ for (int i = 0, n = lines.size(); i < n; i++) {
+ String line = lines.get(i);
+ if (line.isEmpty() || line.trim().startsWith("#")) { //$NON-NLS-1$
+ continue;
+ }
+
+ int index = line.indexOf(SEPARATOR);
+ if (index == -1) {
+ continue;
+ }
+ String typo = line.substring(0, index).trim();
+ typos.add(typo);
+ }
+
+ List<String> words = new ArrayList<String>(typos);
+
+ // Make sure that the two comparison methods agree on all the strings
+ // (which should be in a semi-random order now that they're in a set ordered
+ // by their hash codes)
+
+ String prevText = words.get(0) + '\000';
+ byte[] prevBytes = prevText.getBytes(Charsets.UTF_8);
+
+ for (int i = 1; i < words.size(); i++) {
+ String text = words.get(i) + '\000';;
+ byte[] bytes = text.getBytes(Charsets.UTF_8);
+
+ int textCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, text, 0,
+ text.length());
+ int byteCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, bytes, 0,
+ bytes.length);
+ assertEquals("Word " + text + " versus prev " + prevText + " at " + i,
+ Math.signum(textCompare), Math.signum(byteCompare));
+ }
+ }
+ }
+
+ public void testComparison1() throws Exception {
+ String prevText = "heraus gebracht\u0000";
+ byte[] prevBytes = prevText.getBytes(Charsets.UTF_8);
+
+ String text = "Päsident\u0000";
+ byte[] bytes = text.getBytes(Charsets.UTF_8);
+
+
+ int textCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, text, 0,
+ text.length());
+ int byteCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, bytes, 0,
+ bytes.length);
+ assertTrue(byteCompare < 0);
+ assertTrue(textCompare < 0);
+ assertEquals("Word " + text + " versus prev " + prevText,
+ Math.signum(textCompare), Math.signum(byteCompare));
+ }
+
+ public void testComparison2() throws Exception {
+ String prevText = "intepretation\u0000";
+ byte[] prevBytes = prevText.getBytes(Charsets.UTF_8);
+
+ String text = "Woudl\u0000";
+ byte[] bytes = text.getBytes(Charsets.UTF_8);
+
+ int textCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, text, 0, text.length());
+ int byteCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, bytes, 0, bytes.length);
+ assertTrue(byteCompare < 0);
+ assertTrue(textCompare < 0);
+ assertEquals("Word " + text + " versus prev " + prevText,
+ Math.signum(textCompare), Math.signum(byteCompare));
+
+ // Reverse capitalization and ensure that it's still the same
+ prevText = "Intepretation\u0000";
+ prevBytes = prevText.getBytes(Charsets.UTF_8);
+
+ text = "woudl\u0000";
+ bytes = text.getBytes(Charsets.UTF_8);
+
+ textCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, text, 0, text.length());
+ byteCompare = TypoLookup.compare(prevBytes, 0, (byte) 0, bytes, 0, bytes.length);
+ assertTrue(byteCompare < 0);
+ assertTrue(textCompare < 0);
+ assertEquals("Word " + text + " versus prev " + prevText,
+ Math.signum(textCompare), Math.signum(byteCompare));
+ }
+
+ // Some dictionaries contain actual sentences regarding usage; these must be stripped out.
+ // They're just hardcoded here as we find them
+ private static final String[] sRemove = new String[] {
+ "- besser ganz darauf verzichten",
+ "oft fälschlich für \"angekündigt\"",
+ "hinausgehende* − insb. „darüber hinausgehende“",
+ " - besser ganz darauf verzichten",
+ "svw. bzw. so viel wie bzw. sprachverwandt"
+ };
+
+ private void validateDictionary(String locale) throws Exception {
+ // Check that all the typo files are well formed
+ LintClient client = new TestLintClient();
+ File f = client.findResource(String.format("tools/support/typos-%1$s.txt", locale));
+ assertTrue(locale, f != null && f.exists());
+
+ Set<String> typos = new HashSet<String>(2000);
+ List<Pattern> patterns = new ArrayList<Pattern>(100);
+
+ List<String> lines = Files.readLines(f, Charsets.UTF_8);
+ for (int i = 0, n = lines.size(); i < n; i++) {
+ String line = lines.get(i);
+ if (line.isEmpty() || line.trim().startsWith("#")) { //$NON-NLS-1$
+ continue;
+ }
+
+ assertTrue(msg(f, i, "Line should contain '->': %1$s", line),
+ line.contains(SEPARATOR));
+ int index = line.indexOf(SEPARATOR);
+ String typo = line.substring(0, index).trim();
+ String replacements = line.substring(index + SEPARATOR.length()).trim();
+
+ if (typo.contains("*") && !typo.endsWith("*")) {
+ fixDictionary(f);
+ fail(msg(f, i, "Globbing (*) not supported anywhere but at the tail: %1$s", line));
+ } else if (typo.contains("*") && !replacements.contains("*")) {
+ fail(msg(f, i, "No glob found in the replacements for %1$s", line));
+ }
+
+ if (replacements.indexOf(',') != -1) {
+ Set<String> seen = new HashSet<String>();
+ for (String s : Splitter.on(',').omitEmptyStrings().split(replacements)) {
+ if (seen.contains(s)) {
+ fixDictionary(f);
+ fail(msg(f, i, "For typo " + typo
+ + " there are repeated replacements (" + s + "): " + line));
+ }
+ }
+ }
+
+ assertTrue(msg(f, i, "Typo entry was empty: %1$s", line), !typo.isEmpty());
+ assertTrue(msg(f, i, "Typo replacements was empty: %1$s", line),
+ !replacements.isEmpty());
+
+ for (String blacklist : sRemove) {
+ if (replacements.contains(blacklist)) {
+ fail(msg(f, i, "Replacements for typo %1$s contain description: %2$s",
+ typo, replacements));
+ }
+ }
+ if (typo.equals("sólo") && locale.equals("es")) {
+ // sólo->solo
+ // This seems to trigger a lot of false positives
+ fail(msg(f, i, "Typo %1$s triggers a lot of false positives, should be omitted",
+ typo));
+ }
+ if (locale.equals("tr") && (typo.equals("hiç bir")|| typo.equals("öğe"))) {
+ // hiç bir->hiçbir
+ // öğe->öge
+ // According to a couple of native speakers these are not necessarily
+ // typos
+ fail(msg(f, i, "Typo %1$s triggers a lot of false positives, should be omitted",
+ typo));
+ }
+
+ if (typo.contains("*")) {
+ patterns.add(Pattern.compile(typo.replace("*", ".*")));
+ } else if (!patterns.isEmpty()) {
+ for (Pattern pattern : patterns) {
+ if (pattern.matcher(typo).matches()) {
+ fixDictionary(f);
+ fail(msg(f, i, "The typo " + typo + " matches an earlier glob: ignoring"));
+ continue;
+ }
+ }
+ }
+
+
+ if (typos.contains(typo)) {
+ fixDictionary(f);
+ fail(msg(f, i, "Typo appeared more than once on lhs: %1$s", typo));
+ }
+ typos.add(typo);
+ }
+
+ // Make sure it can be read in
+ TypoLookup db = TypoLookup.get(client, locale, null);
+ assertNotNull(db);
+ assertNull(db.getTypos("abcdefghijklmnopqrstuvxyz", 0, 25));
+ assertNull(db.getTypos("abcdefghijklmnopqrstuvxyz".getBytes(Charsets.UTF_8), 0, 25));
+ assertNotNull(db.getTypos("Andriod", 0, "Andriod".length()));
+ assertNotNull(db.getTypos("Andriod".getBytes(Charsets.UTF_8), 0, "Andriod".length()));
+ }
+
+ private void fixDictionary(File original) throws Exception {
+ File fixed = new File(original.getParentFile(), "fixed-" + original.getName());
+
+ Map<String, Integer> typos = new HashMap<String, Integer>(2000);
+ List<Pattern> patterns = new ArrayList<Pattern>(100);
+ List<String> lines = Files.readLines(original, Charsets.UTF_8);
+ List<String> output = new ArrayList<String>(lines.size());
+
+ wordLoop:
+ for (int i = 0, n = lines.size(); i < n; i++) {
+ String line = lines.get(i);
+ if (line.isEmpty() || line.trim().startsWith("#")) { //$NON-NLS-1$
+ output.add(line);
+ continue;
+ }
+
+ if (!line.contains(SEPARATOR)) {
+ System.err.println("Commented out line missing ->: " + line);
+ output.add("# " + line);
+ continue;
+ }
+ int index = line.indexOf(SEPARATOR);
+ String typo = line.substring(0, index).trim();
+ String replacements = line.substring(index + SEPARATOR.length()).trim();
+
+ if (typo.isEmpty()) {
+ System.err.println("Commented out line missing a typo on the lhs: " + line);
+ output.add("# " + line);
+ continue;
+ }
+ if (replacements.isEmpty()) {
+ System.err.println("Commented out line missing replacements on the rhs: " + line);
+ output.add("# " + line);
+ continue;
+ }
+
+ // Ensure that all the replacements are unique
+ if (replacements.indexOf(',') != -1) {
+ Set<String> seen = new HashSet<String>();
+ List<String> out = new ArrayList<String>();
+ boolean rewrite = false;
+ for (String s : Splitter.on(',').omitEmptyStrings().split(replacements)) {
+ if (seen.contains(s)) {
+ System.err.println("For typo " + typo
+ + " there are repeated replacements (" + s + "): " + line);
+ rewrite = true;
+ }
+ seen.add(s);
+ out.add(s);
+ }
+ if (rewrite) {
+ StringBuilder sb = new StringBuilder();
+ for (String s : out) {
+ if (sb.length() > 0) {
+ sb.append(",");
+ }
+ sb.append(s);
+ }
+ replacements = sb.toString();
+ line = typo + SEPARATOR + replacements;
+ }
+ }
+
+ if (typo.contains("*")) {
+ if (!typo.endsWith("*")) {
+ // Globbing not supported anywhere but the end
+ // Drop the whole word
+ System.err.println("Skipping typo " + typo
+ + " because globbing is only supported at the end of the word");
+ continue;
+ }
+ patterns.add(Pattern.compile(typo.replace("*", ".*")));
+ } else if (replacements.contains("*")) {
+ System.err.println("Skipping typo " + typo + " because unexpected " +
+ "globbing character found in replacements: "
+ + replacements);
+ continue;
+ } else if (!patterns.isEmpty()) {
+ for (Pattern pattern : patterns) {
+ if (pattern.matcher(typo).matches()) {
+ System.err.println("The typo " + typo
+ + " matches an earlier glob: ignoring");
+ continue wordLoop;
+ }
+ }
+ }
+
+ // TODO: Strip whitespace around ->, prefix of # etc such that reading in
+ // the databases needs to do less work at runtime
+
+ if (typos.containsKey(typo)) {
+ int l = typos.get(typo);
+ String prev = output.get(l);
+ assertTrue(prev.startsWith(typo));
+ // Append new replacements and put back into the list
+ // (unless they're already listed as replacements)
+ Set<String> seen = new HashSet<String>();
+ for (String s : Splitter.on(',').split(prev.substring(prev.indexOf(SEPARATOR)
+ + 2))) {
+ seen.add(s);
+ }
+ for (String s : Splitter.on(',').omitEmptyStrings().split(replacements)) {
+ if (!seen.contains(s)) {
+ prev = prev + "," + s;
+ }
+ seen.add(s);
+ }
+ output.set(l, prev);
+ } else {
+ typos.put(typo, output.size());
+ output.add(line);
+ }
+ }
+
+ Writer writer = new BufferedWriter(new FileWriter(fixed));
+ for (String line : output) {
+ writer.write(line);
+ writer.write('\n');
+ }
+ writer.close();
+
+ System.err.println("==> Wrote fixed typo file to " + fixed.getPath());
+ }
+
+ private static String msg(File file, int line, String message, Object... args) {
+ return file.getName() + ':' + Integer.toString(line + 1) + ':' + ' ' +
+ String.format(message, args);
}
@Override
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-de/typos.xml b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-de/typos.xml
new file mode 100644
index 0000000..9583fc7
--- /dev/null
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-de/typos.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="s1">
+
+ wo befindet eine ip
+
+ </string>
+ <string name="s2">(Authorisierungscode!)</string>
+ <string name="s3"> zurück gefoobaren!</string>
+
+</resources>
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-nb/typos.xml b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-nb/typos.xml
index d0f4a41..06cec0d 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-nb/typos.xml
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values-nb/typos.xml
@@ -16,5 +16,7 @@
<string name="s7">Midt-Østen midt-østen</string>
<!-- Non-ASCII UTF-8 string -->
<string name="s7">Koding er en spennende karriære</string>
+ <string name="internet">"Koble til Internett.</string>
+
</resources>
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values/typos.xml b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values/typos.xml
index a167e44..a94be49 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values/typos.xml
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/values/typos.xml
@@ -3,9 +3,9 @@
<!-- No typos -->
<string name="s1">Home Sample</string>
<!-- Plain typos -->
- <string name="s2">Andriod activites</string>
+ <string name="s2">Andriod activites!</string>
<!-- Make capitalization match typo -->
- <string name="s3"> Cmoputer </string>
+ <string name="s3"> (Cmoputer </string>
<!-- Markup indirection -->
<string name="s4"><b>throught</b></string>
<!-- Typo, match capitalized -->