Fuzz a language by mixing up only few words.

Overview

afasi

license version downloads wheel supported-versions supported-implementations

Fuzz a language by mixing up only few words.

Status

Beta.

Note: The default branch is default.

Use

  • Examples
    • Version
    • General Help
    • Translate Help
    • Translate Dryrun
    • Translate
    • Example Translation Tables
  • Command Line API
  • afasi
    • afasi template
    • afasi translate
    • afasi version

Examples

Version

$ afasi version
Fuzz a language by mixing up only few words. version 2021.10.22

General Help

$ afasi
Usage: afasi [OPTIONS] COMMAND [ARGS]...

  Fuzz a language by mixing up only few words.

  The translation table entries are applied in order per line of input. So,
  with large translation tables the performance will obviously degrade with a
  power of two. The latter should be taken as a hint to maintain both language
  files in separate entities not as a patch task.

  The translation table is either an array of two element arrays provided as
  JSON and thus shall be in a shape like:

    [
      ["repl", "ace"],
      ["als", "othis"]
    ]

  Or the table is given as an object providing more detailed instructions
  constraining the translation rules like:

  * contra indicators - when given exempting a line from translation
  * pro indicators - when given marking a line for translation
  * flip_flop indicators - providing either stop-start (default) or start-stop state switching

  The JSON object format is best understood when executing the template
  command and adapting the resulting JSON object written to standard out.

  Default for input source is standard in and out per default is sent to
  standard out.

Options:
  -V, --version  Display the afasi version and exit
  -h, --help     Show this message and exit.

Commands:
  template   Write a template of a translation table JSON structure to...
  translate  Translate from a language to a 'langauge'.
  version    Display the afasi version and exit

Translate Help

$ afasi translate -h
Usage: afasi translate [OPTIONS] [SOURCE] [TARGET]

  Translate from a language to a 'langauge'.

Arguments:
  [SOURCE]  [default: STDIN]
  [TARGET]  [default: STDOUT]

Options:
  -i, --input 
   
            Path to input file (default is reading from
   
                                  standard in)
  -o, --output 
   
           Path to non-existing output file (default is
   
                                  writing to standard out)
  -t, --table 
   
                                  Path to translation table file in JSON
                                  format. Structure of table data is [["repl",
                                  "ace"], ["als", "othis"]]
  -n, --dryrun                    Flag to execute without writing the
                                  translation but a diff instead (default is
                                  False)
  -h, --help                      Show this message and exit.

Translate Dryrun

Rock' -> '>Lounge' 2. '>Track' -> '>Rock' * diff of source to target: --- SOURCE +++ TARGET @@ -6,12 +6,12 @@ Some Track Does not matter. - Track + Rock Some Rock Does not matter. - Rock + Lounge # --- ">
$ afasi translate minimal-in.xml --table minimal.json --dryrun
dryrun requested
# ---
* resources used:
  - input from:       "minimal-in.xml"
  - output to:        STDOUT
  - translation from: "minimal.json"
* translations (in order):
  1. '>Rock' -> '>Lounge'
  2. '>Track' -> '>Rock'
* diff of source to target:
--- SOURCE
+++ TARGET
@@ -6,12 +6,12 @@
         
   
             Some Track
             
   
    Does not matter.
   
-            
   
    Track
   
+            
   
    Rock
   
         
         
   
             Some Rock
             
   
    Does not matter.
   
-            
   
    Rock
   
+            
   
    Lounge
   
         
     
 
# ---

Translate

Some Track Does not matter. - Track + Rock Some Rock Does not matter. - Rock + Lounge ">
$ afasi translate --input minimal-in.xml --output minimal-out.xml --table minimal.json
$ afasi % diff -u minimal-*.xml
--- minimal-in.xml  2021-10-20 20:12:54.000000000 +0200
+++ minimal-out.xml 2021-10-20 20:14:45.000000000 +0200
@@ -6,12 +6,12 @@
         
   
             Some Track
             
   
    Does not matter.
   
-            
   
    Track
   
+            
   
    Rock
   
         
         
   
             Some Rock
             
   
    Does not matter.
   
-            
   
    Rock
   
+            
   
    Lounge
   
         
     
 

Example Translation Tables

Simple version (parallel arrays):

Rock", ">Lounge"], [">Track", ">Rock"] ] ">
[
  [">Rock", ">Lounge"],
  [">Track", ">Rock"]
]

Augmented version (object):

", "" ], "pro": [ "translation" ] }, "foo": "bar", "translations": [ { "repl": ">Lock", "ace": ">Launch" }, { "repl": ">Track", "ace": ">Lock" }, { "repl": ">Autotrack", "ace": ">Autolock" }, { "repl": "lock r", "ace": "launch r" }, { "repl": "track r", "ace": "lock r" } ] } ">
{
  "table": {
    "description": "table level default constraints, row attributes do replace those if present.",
    "contra": [
      "extracomment",
      "source"
    ],
    "count": 0,
    "flip_is_stop": true,
    "flip_flop": [
      "
   
    \"
   SOME_TRACK\">",
      ""
    ],
    "pro": [
      "translation"
    ]
  },
  "foo": "bar",
  "translations": [
    {
      "repl": ">Lock",
      "ace": ">Launch"
    },
    {
      "repl": ">Track",
      "ace": ">Lock"
    },
    {
      "repl": ">Autotrack",
      "ace": ">Autolock"
    },
    {
      "repl": "lock r",
      "ace": "launch r"
    },
    {
      "repl": "track r",
      "ace": "lock r"
    }
  ]
}

Command Line API

  • afasi
    • afasi template
    • afasi translate
    • afasi version

afasi

Fuzz a language by mixing up only few words.

The translation table entries are applied in order per line of input. So, with large translation tables the performance will obviously degrade with a power of two. The latter should be taken as a hint to maintain both language files in separate entities not as a patch task.

The translation table is either an array of two element arrays provided as JSON and thus shall be in a shape like:

  [
    ["repl", "ace"],
    ["als", "othis"]
  ]

Or the table is given as an object providing more detailed instructions constraining the translation rules like:

  • contra indicators - when given exempting a line from translation
  • pro indicators - when given marking a line for translation
  • flip_flop indicators - providing either stop-start (default) or start-stop state switching

The JSON object format is best understood when executing the template command and adapting the resulting JSON object written to standard out.

Default for input source is standard in and out per default is sent to standard out.

Usage:

$ afasi [OPTIONS] COMMAND [ARGS]...

Options:

  • -V, --version: Display the afasi version and exit [default: False]
  • -h, --help: Show this message and exit.

Commands:

  • template: Write a template of a translation table JSON...
  • translate: Translate from a language to a 'langauge'.
  • version: Display the afasi version and exit

afasi template

Write a template of a translation table JSON structure to standard out and exit

Usage:

$ afasi template [OPTIONS]

Options:

  • -h, --help: Show this message and exit.

afasi translate

Translate from a language to a 'langauge'.

Usage:

$ afasi translate [OPTIONS] [SOURCE] [TARGET]

Arguments:

  • [SOURCE]: [default: STDIN]
  • [TARGET]: [default: STDOUT]

Options:

  • -i, --input : Path to input file (default is reading from standard in) [default: ]
  • -o, --output : Path to non-existing output file (default is writing to standard out) [default: ]
  • -t, --table : Path to translation table file in JSON format. Structure of table data is [["repl", "ace"], ["als", "othis"]] [default: ]
  • -n, --dryrun: Flag to execute without writing the translation but a diff instead (default is False) [default: False]
  • -h, --help: Show this message and exit.

afasi version

Display the afasi version and exit

Usage:

$ afasi version [OPTIONS]

Options:

  • -h, --help: Show this message and exit.
You might also like...
Build a translation program similar to Google Translate with Python programming language and QT library
Build a translation program similar to Google Translate with Python programming language and QT library

google-translate Build a translation program similar to Google Translate with Python programming language and QT library Different parts of the progra

Migrates translations to the REDCap native Multi-Language Management system

Automates much of the process of moving translations from the old Multilingual external module to the newer built-in Multi-Language Management (MLM) page.

 Few-NERD: Not Only a Few-shot NER Dataset
Few-NERD: Not Only a Few-shot NER Dataset

Few-NERD: Not Only a Few-shot NER Dataset This is the source code of the ACL-IJCNLP 2021 paper: Few-NERD: A Few-shot Named Entity Recognition Dataset.

Random-Word-Generator - Generates meaningful words from dictionary with given no. of letters and words.

Random Word Generator Generates meaningful words from dictionary with given no. of letters and words. This might be useful for generating short links

Word-Generator - Generates meaningful words from dictionary with given no. of letters and words.

Meaningful Word Generator Generates meaningful words from dictionary with given no. of letters and words. This might be useful for generating short li

Some Discord bot block bad words, with this simple hacking tool you will be able to bypass blacklisted words
Some Discord bot block bad words, with this simple hacking tool you will be able to bypass blacklisted words

DISCORD-BAD-WORD-BYPASS-2022 DISCORD BLACKLISTED WORDS HACKING/BYPASS (EDUCATIONAL PURPOSES ONLY) bypass discord blacklisted words. Description Some D

A wordlist generator tool, that allows you to supply a set of words, giving you the possibility to craft multiple variations from the given words, creating a unique and ideal wordlist to use regarding a specific target.
A wordlist generator tool, that allows you to supply a set of words, giving you the possibility to craft multiple variations from the given words, creating a unique and ideal wordlist to use regarding a specific target.

A wordlist generator tool, that allows you to supply a set of words, giving you the possibility to craft multiple variations from the given words, creating a unique and ideal wordlist to use regarding a specific target.

Fuzzy box is a quick program I wrote to fuzz a URL that is in the format https:// url 20characterstring.
Fuzzy box is a quick program I wrote to fuzz a URL that is in the format https:// url 20characterstring.

What is this? Fuzzy box is a quick program I wrote to fuzz a URL that is in the format https://url/20characterstring.extension. I have redacted th

This is the fuzzer I made to fuzz Preview on macOS and iOS like 8years back when I just started fuzzing things.

Fuzzing PDFs like its 1990s This is the fuzzer I made to fuzz Preview on macOS and iOS like 8years back when I just started fuzzing things. Some discl

Fuzz introspector for python
Fuzz introspector for python

Fuzz introspector High-level goals: Show fuzzing-relevant data about each function in a given project Show reachability of fuzzer(s) Integrate seamles

Generate a wordlist to fuzz amounts or any other numerical values.
Generate a wordlist to fuzz amounts or any other numerical values.

Generate a wordlist to fuzz amounts or any other numerical values. Based on Common Security Issues in Financially-Oriented Web Applications.

Fuzz introspector is a tool to help fuzzer developers to get an understanding of their fuzzer’s performance and identify any potential blockers.
Fuzz introspector is a tool to help fuzzer developers to get an understanding of their fuzzer’s performance and identify any potential blockers.

Fuzz introspector Fuzz introspector is a tool to help fuzzer developers to get an understanding of their fuzzer’s performance and identify any potenti

logmap: Log4j2 jndi injection fuzz tool
logmap: Log4j2 jndi injection fuzz tool

logmap - Log4j2 jndi injection fuzz tool Used for fuzzing to test whether there are log4j2 jndi injection vulnerabilities in header/body/path Use http

Log4j vuln fuzz/scan with python
Log4j vuln fuzz/scan with python

Log4jFuzz log4j vuln fuzz/scan USE // it's use localhost udp server to check target vuln. python3 log4jFuzz.py [option] optional arguments: -u URL,

style mixing for animation face
style mixing for animation face

An implementation of StyleGAN on Animation dataset. Install git clone https://github.com/MorvanZhou/anime-StyleGAN cd anime-StyleGAN pip install -r re

Unofficial implementation of Google's FNet: Mixing Tokens with Fourier Transforms
Unofficial implementation of Google's FNet: Mixing Tokens with Fourier Transforms

FNet: Mixing Tokens with Fourier Transforms Pytorch implementation of Fnet : Mixing Tokens with Fourier Transforms. Citation: @misc{leethorp2021fnet,

An implementation of
An implementation of "MixHop: Higher-Order Graph Convolutional Architectures via Sparsified Neighborhood Mixing" (ICML 2019).

MixHop and N-GCN ⠀ A PyTorch implementation of "MixHop: Higher-Order Graph Convolutional Architectures via Sparsified Neighborhood Mixing" (ICML 2019)

Implementation of Token Shift GPT - An autoregressive model that solely relies on shifting the sequence space for mixing

Token Shift GPT Implementation of Token Shift GPT - An autoregressive model that relies solely on shifting along the sequence dimension and feedforwar

SnapMix: Semantically Proportional Mixing for Augmenting Fine-grained Data (AAAI 2021)
SnapMix: Semantically Proportional Mixing for Augmenting Fine-grained Data (AAAI 2021)

SnapMix: Semantically Proportional Mixing for Augmenting Fine-grained Data (AAAI 2021) PyTorch implementation of SnapMix | paper Method Overview Cite

Releases(v2021.10.28)
  • v2021.10.28(Dec 28, 2021)

    afasi

    license version downloads wheel supported-versions supported-implementations

    Fuzz a language by mixing up only few words.

    v2021.10.28

    • Happy linter, happy winter

    Installation

    Preferred way to install is as usual (for testing or in isolation):

    $ pipx install afasi
    

    For production use (well, ahem, ...) or within a virtual python env:

    $ pip install afasi
    

    Use

    Examples

    Version

    $ afasi version
    Fuzz a language by mixing up only few words. version 2021.10.28
    

    General Help

    $ afasi
    Usage: afasi [OPTIONS] COMMAND [ARGS]...
    
      Fuzz a language by mixing up only few words.
    
      The translation table entries are applied in order per line of input. So,
      with large translation tables the performance will obviously degrade with a
      power of two. The latter should be taken as a hint to maintain both language
      files in separate entities not as a patch task.
    
      The translation table is either an array of two element arrays provided as
      JSON and thus shall be in a shape like:
    
        [
          ["repl", "ace"],
          ["als", "othis"]
        ]
    
      Or the table is given as an object providing more detailed instructions
      constraining the translation rules like:
    
      * contra indicators - when given exempting a line from translation
      * pro indicators - when given marking a line for translation
      * flip_flop indicators - providing either stop-start (default) or start-stop state switching
    
      The JSON object format is best understood when executing the template
      command and adapting the resulting JSON object written to standard out.
    
      Default for input source is standard in and out per default is sent to
      standard out.
    
    Options:
      -V, --version  Display the afasi version and exit
      -h, --help     Show this message and exit.
    
    Commands:
      template   Write a template of a translation table JSON structure to...
      translate  Translate from a language to a 'langauge'.
      version    Display the afasi version and exit
    

    Translate Help

    $ afasi translate -h
    Usage: afasi translate [OPTIONS] [SOURCE] [TARGET]
    
      Translate from a language to a 'langauge'.
    
    Arguments:
      [SOURCE]  [default: STDIN]
      [TARGET]  [default: STDOUT]
    
    Options:
      -i, --input <sourcepath>        Path to input file (default is reading from
                                      standard in)
      -o, --output <targetpath>       Path to non-existing output file (default is
                                      writing to standard out)
      -t, --table <translation table path>
                                      Path to translation table file in JSON
                                      format. Structure of table data is [["repl",
                                      "ace"], ["als", "othis"]]
      -n, --dryrun                    Flag to execute without writing the
                                      translation but a diff instead (default is
                                      False)
      -h, --help                      Show this message and exit.
    

    Translate Dryrun

    $ afasi translate minimal-in.xml --table minimal.json --dryrun
    dryrun requested
    # ---
    * resources used:
      - input from:       "minimal-in.xml"
      - output to:        STDOUT
      - translation from: "minimal.json"
    * translations (in order):
      1. '>Rock' -> '>Lounge'
      2. '>Track' -> '>Rock'
    * diff of source to target:
    --- SOURCE
    +++ TARGET
    @@ -6,12 +6,12 @@
             <message id="SOME_TRACK">
                 <source>Some Track</source>
                 <extracomment>Does not matter.</extracomment>
    -            <translation>Track</translation>
    +            <translation>Rock</translation>
             </message>
             <message id="SOME_ROCK">
                 <source>Some Rock</source>
                 <extracomment>Does not matter.</extracomment>
    -            <translation>Rock</translation>
    +            <translation>Lounge</translation>
             </message>
         </context>
     </TS>
    # ---
    

    Translate

    $ afasi translate --input minimal-in.xml --output minimal-out.xml --table minimal.json
    $ afasi % diff -u minimal-*.xml
    --- minimal-in.xml  2021-10-20 20:12:54.000000000 +0200
    +++ minimal-out.xml 2021-10-20 20:14:45.000000000 +0200
    @@ -6,12 +6,12 @@
             <message id="SOME_TRACK">
                 <source>Some Track</source>
                 <extracomment>Does not matter.</extracomment>
    -            <translation>Track</translation>
    +            <translation>Rock</translation>
             </message>
             <message id="SOME_ROCK">
                 <source>Some Rock</source>
                 <extracomment>Does not matter.</extracomment>
    -            <translation>Rock</translation>
    +            <translation>Lounge</translation>
             </message>
         </context>
     </TS>
    

    Example Translation Tables

    Simple version (parallel arrays):

    [
      [">Rock", ">Lounge"],
      [">Track", ">Rock"]
    ]
    

    Augmented version (object):

    {
      "table": {
        "description": "table level default constraints, row attributes do replace those if present.",
        "contra": [
          "extracomment",
          "source"
        ],
        "count": 0,
        "flip_is_stop": true,
        "flip_flop": [
          "<message id=\"SOME_TRACK\">",
          "</message>"
        ],
        "pro": [
          "translation"
        ]
      },
      "foo": "bar",
      "translations": [
        {
          "repl": ">Lock",
          "ace": ">Launch"
        },
        {
          "repl": ">Track",
          "ace": ">Lock"
        },
        {
          "repl": ">Autotrack",
          "ace": ">Autolock"
        },
        {
          "repl": "lock r",
          "ace": "launch r"
        },
        {
          "repl": "track r",
          "ace": "lock r"
        }
      ]
    }
    

    Checksums

    md5:a6699fc2205027e98c910d7bda724ce5  dist/afasi-2021.10.28.tar.gz
    sha1:db320403cf64e7992d888f2c7b816556dbc27bf0  dist/afasi-2021.10.28.tar.gz
    sha256:d265c63f635fd1c6efb91fd11b0fde95e7c3db1f5589cd654f1cd3e6a048ef87  dist/afasi-2021.10.28.tar.gz
    sha384:c0e30b2aa465134ebb9b3f1f754243956b310242f405a4aacf4c3ad9fc8977a450df97c4361c44280c95372c8b8ffac3  dist/afasi-2021.10.28.tar.gz
    sha512:e39ce973257e8c0dd554a62e396427a45fb12fff07d2481d04213ea1202a5aa64831cdd3b35d271d8433403076866f5158914b99a369231a21126decd760c500  dist/afasi-2021.10.28.tar.gz
    dist/afasi-2021.10.28.tar.gz.md5:a6699fc2205027e98c910d7bda724ce5  dist/afasi-2021.10.28.tar.gz
    dist/afasi-2021.10.28.tar.gz.sha1:db320403cf64e7992d888f2c7b816556dbc27bf0  dist/afasi-2021.10.28.tar.gz
    dist/afasi-2021.10.28.tar.gz.sha256:d265c63f635fd1c6efb91fd11b0fde95e7c3db1f5589cd654f1cd3e6a048ef87  dist/afasi-2021.10.28.tar.gz
    dist/afasi-2021.10.28.tar.gz.sha384:c0e30b2aa465134ebb9b3f1f754243956b310242f405a4aacf4c3ad9fc8977a450df97c4361c44280c95372c8b8ffac3  dist/afasi-2021.10.28.tar.gz
    dist/afasi-2021.10.28.tar.gz.sha512:e39ce973257e8c0dd554a62e396427a45fb12fff07d2481d04213ea1202a5aa64831cdd3b35d271d8433403076866f5158914b99a369231a21126decd760c500  dist/afasi-2021.10.28.tar.gz
    

    Status

    Beta.

    Note: The default branch is default.

    Source code(tar.gz)
    Source code(zip)
    afasi-2021.10.28-py2.py3-none-any.whl(13.74 KB)
    afasi-2021.10.28.tar.gz(12.72 KB)
  • v2021.10.22(Oct 21, 2021)

    afasi

    Fuzz a language by mixing up only few words.

    The translation table entries are applied in order per line of input. So, with large translation tables the performance will obviously degrade with a power of two. The latter should be taken as a hint to maintain both language files in separate entities not as a patch task.

    The translation table is either

    • an array or two element arrays provided as JSON and thus shall be in a shape like:
      [
        ["repl", "ace"],
        ["als", "othis"]
      ]
      
    • or an object allowing for pro, contra replace indications, flip-flop behavior and more (see help for more info).

    Default for input source is standard in and out per default is sent to standard out.

    Packaging:

    pypi.org/project/afasi/

    Installation

    $ pip install afasi==2021.10.22
    

    Changelog

    v2021.10.22

    • Resolved feedback from friendly users
    • Added new command template to ease use of augmented translation table syntax
    • Simplified internal operation and reduced warning noise
    • Documented new features and data structures
    • Outer test line coverage again complete
    • New: Contra indicators - when given exempting a line from translation
    • New: Pro indicators - when given marking a line for translation
    • New: Flip-Flop indicators - providing either stop-start (default) or start-stop state switching
    • Refactored tests to use pytest tmp_path fixture to stabilize the tests
    • Removed prototype data and tests from table implemenbtation

    v2021.10.21

    • Resolved feedback from friendly users
    • Created initial documentation set covering API and examples of use
    • Fixed python version dependency to be consistently 3.8, 3.9, and 3.10

    v2021.10.20

    • Initial release to pypi

    Checksums

    md5:6dbf5fc2da3c68e277976e754a02e6d1  dist/afasi-2021.10.22.tar.gz
    sha1:b547a553545686d82b8f5100959d039c13c8412f  dist/afasi-2021.10.22.tar.gz
    sha256:7e31edbbfcfb0cd02948830dd82aef9c274935aeb80de121679a1af1c481a3c5  dist/afasi-2021.10.22.tar.gz
    sha384:7360545ec1afb88b27cb9fae0c594812624fb69b7b56e6834cba2a4b712c9ab954dc6d0a585d12bf859ede19bc807eeb  dist/afasi-2021.10.22.tar.gz
    sha512:fa80b7bf1a223da9a519839ae519fe7e08ba9ad0ee6885ca1e88f48f59cccdf21b318b759452308415dfa8da388933d7a9360050b8326f2b1cf24dc3fe674325  dist/afasi-2021.10.22.tar.gz
    dist/afasi-2021.10.22.tar.gz.md5:6dbf5fc2da3c68e277976e754a02e6d1  dist/afasi-2021.10.22.tar.gz
    dist/afasi-2021.10.22.tar.gz.sha1:b547a553545686d82b8f5100959d039c13c8412f  dist/afasi-2021.10.22.tar.gz
    dist/afasi-2021.10.22.tar.gz.sha256:7e31edbbfcfb0cd02948830dd82aef9c274935aeb80de121679a1af1c481a3c5  dist/afasi-2021.10.22.tar.gz
    dist/afasi-2021.10.22.tar.gz.sha384:7360545ec1afb88b27cb9fae0c594812624fb69b7b56e6834cba2a4b712c9ab954dc6d0a585d12bf859ede19bc807eeb  dist/afasi-2021.10.22.tar.gz
    dist/afasi-2021.10.22.tar.gz.sha512:fa80b7bf1a223da9a519839ae519fe7e08ba9ad0ee6885ca1e88f48f59cccdf21b318b759452308415dfa8da388933d7a9360050b8326f2b1cf24dc3fe674325  dist/afasi-2021.10.22.tar.gz
    
    Source code(tar.gz)
    Source code(zip)
    afasi-2021.10.22-py2.py3-none-any.whl(13.71 KB)
    afasi-2021.10.22-py2.py3-none-any.whl.md5(77 bytes)
    afasi-2021.10.22-py2.py3-none-any.whl.sha1(85 bytes)
    afasi-2021.10.22-py2.py3-none-any.whl.sha256(109 bytes)
    afasi-2021.10.22-py2.py3-none-any.whl.sha384(141 bytes)
    afasi-2021.10.22-py2.py3-none-any.whl.sha512(173 bytes)
    afasi-2021.10.22.tar.gz(13.67 KB)
    afasi-2021.10.22.tar.gz.md5(63 bytes)
    afasi-2021.10.22.tar.gz.sha1(71 bytes)
    afasi-2021.10.22.tar.gz.sha256(95 bytes)
    afasi-2021.10.22.tar.gz.sha384(127 bytes)
    afasi-2021.10.22.tar.gz.sha512(159 bytes)
  • v2021.10.21(Oct 20, 2021)

    afasi

    Fuzz a language by mixing up only few words.

    The translation table entries are applied in order per line of input. So, with large translation tables the performance will obviously degrade with a power of two. The latter should be taken as a hint to maintain both language files in separate entities not as a patch task.

    The translation table is an array or two element arrays provided as JSON and thus shall be in a shape like:

    [
      ["repl", "ace"],
      ["als", "othis"]
    ]
    

    Default for input source is standard in and out per default is sent to standard out.

    Packaging:

    pypi.org/project/afasi/

    Installation

    $ pip install afasi==2021.10.21
    

    Changelog

    v2021.10.21

    • Resolved feedback from friendly users
    • Created initial documentation set covering API and examples of use
    • Fixed python version dependency to be consistently 3.8, 3.9, and 3.10

    v2021.10.20

    • Initial release to pypi

    Checksums

    md5:30b68466efc06882ffa708f0928487b1  dist/afasi-2021.10.21.tar.gz
    sha1:6011eed2fe6d1311b648a6394001b63a16077c11  dist/afasi-2021.10.21.tar.gz
    sha256:06eeed95d9df877cf89af18eca08bb59fba00b4973c58492839432d94b7e3bb5  dist/afasi-2021.10.21.tar.gz
    sha384:bb60cdd316bb809a764be88683dcd9df615fcbc9119daf40211e8b35cc950248f48b84a75ef0c42f54ee7dd4602656a4  dist/afasi-2021.10.21.tar.gz
    sha512:5fb82de73375f05436a543d457046b767094d89d68eed008e2b627d842f7c73492f4ebb8796928582792e26115eae1d1e6071b93ae3547d1472e5858930a05b5  dist/afasi-2021.10.21.tar.gz
    
    Source code(tar.gz)
    Source code(zip)
    afasi-2021.10.21.tar.gz(9.99 KB)
    afasi-2021.10.21.tar.gz.md5(63 bytes)
    afasi-2021.10.21.tar.gz.sha1(71 bytes)
    afasi-2021.10.21.tar.gz.sha256(95 bytes)
    afasi-2021.10.21.tar.gz.sha384(127 bytes)
    afasi-2021.10.21.tar.gz.sha512(159 bytes)
  • v2021.10.20(Oct 20, 2021)

    afasi

    Fuzz a language by mixing up only few words.

    The translation table entries are applied in order per line of input. So, with large translation tables the performance will obviously degrade with a power of two. The latter should be taken as a hint to maintain both language files in separate entities not as a patch task.

    The translation table is an array or two element arrays provided as JSON and thus shall be in a shape like:

    [
      ["repl", "ace"],
      ["als", "othis"]
    ]
    

    Default for input source is standard in and out per default is sent to standard out.

    Packaging:

    pypi.org/project/afasi/

    Installation

    $ pip install afasi==2021.10.20
    

    Changelog

    v2021.10.20

    • Initial release to pypi

    Checksums

    md5:8fbd0eb4ea15af8bd4e60240d4cc15d4  dist/afasi-2021.10.20.tar.gz
    sha1:1805e99835c36ad7e5708dbdbbacd81e28e0dbb2  dist/afasi-2021.10.20.tar.gz
    sha256:0148214ceb5a69cb74bb4c85099eefc395c45552af4cbecaa4f2b290ef354dd5  dist/afasi-2021.10.20.tar.gz
    sha384:5abbfedbd7fe64c85e31f54ea83de158989eaf89e141f7e475f525d01f5fcf7e37b6ef9e056cac9c05061bc15c17f831  dist/afasi-2021.10.20.tar.gz
    sha512:935b009f79cd274a748c26c6b20c87fbad8bbbda8a4d7e4179b5ea7f2aa76d85c6f4ec165cca618b200781c3eec119e34c376e54ac5d731f753745a83c29b7ae  dist/afasi-2021.10.20.tar.gz
    
    Source code(tar.gz)
    Source code(zip)
    afasi-2021.10.20.tar.gz(7.28 KB)
    afasi-2021.10.20.tar.gz.md5(63 bytes)
    afasi-2021.10.20.tar.gz.sha1(71 bytes)
    afasi-2021.10.20.tar.gz.sha256(95 bytes)
    afasi-2021.10.20.tar.gz.sha384(127 bytes)
    afasi-2021.10.20.tar.gz.sha512(159 bytes)
Owner
Stefan Hagen
Working with teams, changing things and the way we work. Any personal contribution of this user is MIT licensed. Opinions expressed on behalf of himself only.
Stefan Hagen
Search for terms(word / table / field name or any) under Snowflake schema names

snowflake-search-terms-in-ddl-views Search for terms(word / table / field name or any) under Snowflake schema names Version : 1.0v How to use ? Run th

Igal Emona 1 Dec 15, 2021
A python Tk GUI that creates, writes text and attaches images into a custom spreadsheet file

A python Tk GUI that creates, writes text and attaches images into a custom spreadsheet file

Mirko Simunovic 13 Dec 09, 2022
This script has been created in order to find what are the most common demanded technologies in Data Engineering field.

This is a Python script that given a whole corpus of job descriptions and a file with keywords it extracts the number of number of ocurrences of these keywords and write it to a file. This script it

Antonio Bri Pérez 0 Jul 17, 2022
Repositori untuk belajar pemrograman Python dalam bahasa Indonesia

Python Repositori ini berisi kumpulan dari berbagai macam contoh struktur data, algoritma dan komputasi matematika yang diimplementasikan dengan mengg

Bellshade 111 Dec 19, 2022
A slugifier that works in unicode

Unicode Slugify Unicode Slugify is a slugifier that generates unicode slugs. It was originally used in the Firefox Add-ons web site to generate slugs

Mozilla 315 Nov 21, 2022
Word and phrase lists in CSV

Word Lists Word and phrase lists in CSV, collected from different sources. Oxford Word Lists: oxford-5k.csv - Oxford 3000 and 5000 oxford-opal.csv - O

Anton Zhiyanov 14 Oct 14, 2022
Compute distance between sequences. 30+ algorithms, pure python implementation, common interface, optional external libs usage.

TextDistance TextDistance -- python library for comparing distance between two or more sequences by many algorithms. Features: 30+ algorithms Pure pyt

Life4 3k Jan 02, 2023
Python flexible slugify function

awesome-slugify Python flexible slugify function PyPi: https://pypi.python.org/pypi/awesome-slugify Github: https://github.com/dimka665/awesome-slugif

Dmitry Voronin 471 Dec 20, 2022
ChirpText is a collection of text processing tools for Python 3.

ChirpText is a collection of text processing tools for Python 3. It is not meant to be a powerful tank like the popular NTLK but a small package which

Le Tuan Anh 5 Nov 30, 2022
text-to-speach bot - You really do NOT have time for read a newsletter? Now you can listen to it

NewsletterReader You really do NOT have time for read a newsletter? Now you can listen to it The Newsletter of Filipe Deschamps is a great place to re

ItanuRomero 8 Sep 18, 2021
A generator library for concise, unambiguous and URL-safe UUIDs.

Description shortuuid is a simple python library that generates concise, unambiguous, URL-safe UUIDs. Often, one needs to use non-sequential IDs in pl

Stavros Korokithakis 1.8k Dec 31, 2022
Extract price amount and currency symbol from a raw text string

price-parser is a small library for extracting price and currency from raw text strings.

Scrapinghub 252 Dec 31, 2022
A Python3 script that simulates the user typing a text on their keyboard.

A Python3 script that simulates the user typing a text on their keyboard. (control the speed, randomness, rate of typos and more!)

Jose Gracia Berenguer 3 Feb 22, 2022
You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

8 Dec 20, 2022
An online markdown resume template project, based on pywebio

An online markdown resume template project, based on pywebio

极简XksA 5 Nov 10, 2022
PyNews 📰 Simple newsletter made with python 🐍🗞️

PyNews 📰 Simple newsletter made with python Install dependencies This project has some dependencies (see requirements.txt) that are not included in t

Luciano Felix 4 Aug 21, 2022
This is an AI that is supposed to say you if your text is formal or not

This is an AI that is supposed to say you if your text is formal or not. It's written in Python 3 and has some german examples (because I'm german yk) in the text.json file. This file contains the te

1 Jan 12, 2022
StealBit1.1 and earlier strings and config extraction scripts

StealBit1.1 and earlier scripts Use strings_decryptor.py to extract RC4 encrypted strings from a StealBit1.1 sample(s). Use config_extractor.py to ext

Soolidsnake 5 Dec 29, 2022
Convert ebooks with few clicks on Telegram!

E-Book Converter Bot A bot that converts e-books to various formats, powered by calibre! It currently supports 34 input formats and 19 output formats.

Youssif Shaaban Alsager 45 Jan 05, 2023
Split large XML files into smaller ones for easy upload

Split large XML files into smaller ones for easy upload. Works for WordPress Posts Import and other XML files.

Joseph Adediji 1 Jan 30, 2022