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.16.tar.gz (18.1 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: NlpToolkit-Deasciifier-1.0.16.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.16.tar.gz
Algorithm Hash digest
SHA256 cb81c2db0e417b0ff8aa6cc209af6110730a1853a328fe4b4ff5c2806012f930
MD5 29f5278f4cb1b8fc8252517bfba547bd
BLAKE2b-256 5aaede70676472c367f74e6522babc4dcb179db646c72adba3e09aa0619a5364

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