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 Python, 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-Cy

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-Cy.git

Open project with Pycharm IDE

Steps for opening the cloned project:

  • Start IDE
  • Select File | Open from main menu
  • Choose TurkishDeasciifier-CY 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-Cy-1.0.8.tar.gz (231.3 kB view details)

Uploaded Source

File details

Details for the file NlpToolkit-Deasciifier-Cy-1.0.8.tar.gz.

File metadata

File hashes

Hashes for NlpToolkit-Deasciifier-Cy-1.0.8.tar.gz
Algorithm Hash digest
SHA256 df711b66c8536e0da20440ee4956feeed0b2fb365873e75a6f0f7be3f6512e56
MD5 d0c31008d8c74de579a9e148086a5cb8
BLAKE2b-256 1b8ec38a238b262a1c63611b4e7f07cd65415d29332043989279ff305382449d

See more details on using hashes here.

Supported by

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