utfu

Replaces busted characters carried over from legacy text encodings with the proper UTF-8 characters.

Usage no npm install needed!

<script type="module">
  import utfu from 'https://cdn.skypack.dev/utfu';
</script>

README

üŧ⨍û ➞ utfu

npm npm License: MIT Twitter: @selfagency_llc

Replaces busted characters carried over from legacy text encodings with the proper UTF-8 characters.

Install

yarn add utfu || npm install utfu

Usage

Say you've got a string that looks like this:

There’s no way I’m paying €30 for that!

Pass it to either method, hex, htx, or txt, and you'll hopefully get back:

There’s no way I’m paying €30 for that!

  • hex substitutes unicode hex values (ie., \u20ac)

  • htx substitutes the HTML escape sequence (ie., &#x20AC;)

  • txt substitutes the actual character (ie., )

  • See substitution chart here for mappings, more or less

import { hex, htx, txt } from 'utfu'

const dirty = 'On a certain level, it�s like shouting �fire� in a crowded theater.'

const cleanHex = hex(dirty)
// --> 'On a certain level, it\u2019s like shouting \u201Cfire\u201D in a crowded theater.'

const cleanHTML = htx(dirty)
// --> 'On a certain level, it&#x2019;s like shouting &#x201C;fire&#x201D; in a crowded theater.'

const cleanTxt = txt(dirty)
// --> 'On a certain level, it’s like shouting “fire” in a crowded theater.'

Run tests

yarn test

Author

👤 Daniel Sieradski hello@self.agency

Acknowledgements

Gracious thanks to Mathias Bynens, upon whose he and windows-1252 packages this project depends.

Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!