<commit_before>### URLify

This node library simplifies converting utf8 strings to ASCII strings which can be used as readable URL-segments


## Usage

``` javascript
var urlify = require('urlify').urlify(options)
```

* ```options``` (optional) is a config map and can contain the following:
  * ```addEToUmlauts``` default: ```false```
    replaces 'ä', 'ö', and 'ü' with 'ae', 'oe', and 'ue' instead of 'a', 'o', and 'u'
  * ```szToSs``` default: ```true```
    if true replaces 'ß' with 'ss', otherwise with 'sz'
  * ```spaces``` default: ```"_"```
    replaces whitespace characters with this character.
  * ```nonPrintable``` default: ```"_"```
    replaces other non-ASCII characters with this character.
  * ```trim``` default: ```false```
    replaces multiple whitespaces/non-ASCII characters by one placeholder
  * ```extendString``` default: ```false```
    If true, extends String object with urlify method.
    So after calling the constructor, you can use ```"Hello World".urlify()```
* returns: a configured function: ``` function(string, options)```
  * ```string``` may a string to be urlified
  * ```options``` overwrite above options. ```extendString``` has no effect.

If ```extendString``` is is ```true```, you may also use ```"Hello World".urlify()```
to urlify strings.

## Example

``` javascript
var urlify = require('quotefm').urlify({addEToUmlauts:true, szToSs:false, spaces:"_", nonPrintable:"_", trim:true});

urlify("das eiskalte Händchen")
// das_eiskalte_Haendchen 

urlify("das eiskalte Händchen", { addEToUmlauts:false })
// das_eiskalte_Handchen 

urlify("Heiße Suppe")
// Heisze_Suppe

urlify("Heiße Suppe", { szToSs:true })
// Heisse_Suppe

urlify("Soon!")
// Soon

urlify("This is very important!!! Please read!!!")
// This_is_very_important_Please_read
```
<commit_msg>yet another typo<commit_after>### URLify

This node library simplifies converting utf8 strings to ASCII strings which can be used as readable URL-segments


## Usage

``` javascript
var urlify = require('urlify').urlify(options)
```

* ```options``` (optional) is a config map and can contain the following:
  * ```addEToUmlauts``` default: ```false```
    replaces 'ä', 'ö', and 'ü' with 'ae', 'oe', and 'ue' instead of 'a', 'o', and 'u'
  * ```szToSs``` default: ```true```
    if true replaces 'ß' with 'ss', otherwise with 'sz'
  * ```spaces``` default: ```"_"```
    replaces whitespace characters with this character.
  * ```nonPrintable``` default: ```"_"```
    replaces other non-ASCII characters with this character.
  * ```trim``` default: ```false```
    replaces multiple whitespaces/non-ASCII characters by one placeholder
  * ```extendString``` default: ```false```
    If true, extends String object with urlify method.
    So after calling the constructor, you can use ```"Hello World".urlify()```
* returns: a configured function: ``` function(string, options)```
  * ```string``` may a string to be urlified
  * ```options``` overwrite above options. ```extendString``` has no effect.

If ```extendString``` is ```true```, you may also use ```"Hello World".urlify()```
to urlify strings.

## Example

``` javascript
var urlify = require('quotefm').urlify({addEToUmlauts:true, szToSs:false, spaces:"_", nonPrintable:"_", trim:true});

urlify("das eiskalte Händchen")
// das_eiskalte_Haendchen 

urlify("das eiskalte Händchen", { addEToUmlauts:false })
// das_eiskalte_Handchen 

urlify("Heiße Suppe")
// Heisze_Suppe

urlify("Heiße Suppe", { szToSs:true })
// Heisse_Suppe

urlify("Soon!")
// Soon

urlify("This is very important!!! Please read!!!")
// This_is_very_important_Please_read
```

{'fraction_non_alphanumeric': 0.17292817679558012, 'fraction_numerical': 0.0005524861878453039, 'mean_word_length': 5.014950166112957, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3031510', 'n_tokens_mistral': 1218, 'n_tokens_neox': 1184, 'n_words': 367}