Skip to main content

Turkish Asciifier/Deasciifier Library

Project description

Turkish Deasciifier

This tool is used to turn Turkish text written in ASCII characters, which do not include some letters of the Turkish alphabet, into correctly written text with the appropriate Turkish characters (such as ı, ş, and so forth). It can also do the opposite, turning Turkish input into ASCII text, for the purpose of processing.

Video Lectures

For Developers

You can also see Cython, Java, C++, Swift, Js, or C# repository.

Requirements

Python

To check if you have a compatible version of Python installed, use the following command:

python -V

You can find the latest version of Python here.

Git

Install the latest version of Git.

Pip Install

pip3 install NlpToolkit-Deasciifier

Download Code

In order to work on code, create a fork from GitHub page. Use Git for cloning the code to your local or below line for Ubuntu:

git clone <your-fork-git-link>

A directory called Deasciifier will be created. Or you can use below link for exploring the code:

git clone https://github.com/starlangsoftware/TurkishDeasciifier-Py.git

Open project with Pycharm IDE

Steps for opening the cloned project:

  • Start IDE
  • Select File | Open from main menu
  • Choose TurkishDeasciifier-PY file
  • Select open as project option
  • Couple of seconds, dependencies will be downloaded.

Detailed Description

Using Asciifier

Asciifier converts text to a format containing only ASCII letters. This can be instantiated and used as follows:

  asciifier = SimpleAsciifier()
  sentence = Sentence("çocuk")
  asciified = asciifier.asciify(sentence)
  print(asciified)

Output:

cocuk      

Using Deasciifier

Deasciifier converts text written with only ASCII letters to its correct form using corresponding letters in Turkish alphabet. There are two types of Deasciifier:

  • SimpleDeasciifier

    The instantiation can be done as follows:

      fsm = FsmMorphologicalAnalyzer()
      deasciifier = SimpleDeasciifier(fsm)
    
  • NGramDeasciifier

    • To create an instance of this, both a FsmMorphologicalAnalyzer and a NGram is required.

    • FsmMorphologicalAnalyzer can be instantiated as follows:

        fsm = FsmMorphologicalAnalyzer()
      
    • NGram can be either trained from scratch or loaded from an existing model.

      • Training from scratch:

          corpus = Corpus("corpus.txt")
          ngram = NGram(corpus.getAllWordsAsArrayList(), 1)
          ngram.calculateNGramProbabilities(LaplaceSmoothing())
        

      There are many smoothing methods available. For other smoothing methods, check here.

      • Loading from an existing model:

              ngram = NGram("ngram.txt")
        

    For further details, please check here.

    • Afterwards, NGramDeasciifier can be created as below:

        deasciifier = NGramDeasciifier(fsm, ngram)
      

A text can be deasciified as follows:

sentence = Sentence("cocuk")
deasciified = deasciifier.deasciify(sentence)
print(deasciified)

Output:

çocuk

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

NlpToolkit-Deasciifier-1.0.17.tar.gz (18.1 kB view details)

Uploaded Source

File details

Details for the file NlpToolkit-Deasciifier-1.0.17.tar.gz.

File metadata

  • Download URL: NlpToolkit-Deasciifier-1.0.17.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.7.9

File hashes

Hashes for NlpToolkit-Deasciifier-1.0.17.tar.gz
Algorithm Hash digest
SHA256 b82d0747a6ffe37432d8cb1ad04ea3a99d4148e816e629da987c77f02f6b7aee
MD5 2d981f6835b25abd0af7613025dd9620
BLAKE2b-256 c80f94f19951e7e76d46fb3f88e9031fc2d43235ac09064e379d118e2589ce29

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page