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

Uploaded Source

File details

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

File metadata

File hashes

Hashes for NlpToolkit-Deasciifier-Cy-1.0.9.tar.gz
Algorithm Hash digest
SHA256 f625ca4b0eb3deb7089dc3be3639d4609c0ae81f06b67428697ec33f9b25b1f5
MD5 3925451210ddf3acec16e6c1d5c2b202
BLAKE2b-256 643acb36ad303e142e9c26d01c2dce80a1f7c66d796c5ad1f42f7f144f7e8259

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