Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Easily remove Unicode combining marks from strings.
JavaScript HTML
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
scripts
src Update dependencies
tests Update dependencies
.gitattributes
.gitignore
.travis.yml Test in Node.js v0.12, io.js, and Rhino 1.7R5
Gruntfile.js
LICENSE-MIT.txt
README.md Update dependencies
bower.json Initial commit
component.json Initial commit
package.json Use Unicode v8.0.0 data
strip-combining-marks.js

README.md

strip-combining-marks Build status Dependency status

strip-combining-marks removes Unicode combining marks from strings. It leaves unmatched combining marks (i.e. marks that appear at the start of the string, and don’t belong to a symbol) intact.

Installation

Via npm:

npm install strip-combining-marks

Via Bower:

bower install strip-combining-marks

Via Component:

component install mathiasbynens/strip-combining-marks

In a browser:

<script src="strip-combining-marks.js"></script>

In Node.js, io.js, Narwhal, and RingoJS:

var stripCombiningMarks = require('strip-combining-marks');

In Rhino:

load('strip-combining-marks.js');

Using an AMD loader like RequireJS:

require(
  {
    'paths': {
      'strip-combining-marks': 'path/to/strip-combining-marks'
    }
  },
  ['strip-combining-marks'],
  function(stripCombiningMarks) {
    console.log(stripCombiningMarks);
  }
);

API

stripCombiningMarks.version

A string representing the semantic version number.

stripCombiningMarks.reverse(string)

This function takes a string and returns the stripped version of that string, where any combining marks that were applied to other symbols have been removed.

Usage example

stripCombiningMarks('Z͑ͫ̓ͪ̂ͫ̽͏̴̙̤̞͉͚̯̞̠͍A̴̵̜̰͔ͫ͗͢L̠ͨͧͩ͘G̴̻͈͍͔̹̑͗̎̅͛́Ǫ̵̹̻̝̳͂̌̌͘!͖̬̰̙̗̿̋ͥͥ̂ͣ̐́́͜͞');
'ZALGO!'

Support

strip-combining-marks has been tested in Chrome 27, Firefox 3, Safari 4, Opera 10, IE 6, Node.js v0.10.0, io.js v1.0.0, Narwhal 0.3.2, RingoJS 0.8, PhantomJS 1.9.1, and Rhino 1.7RC4.

Unit tests & code coverage

After cloning this repository, run npm install to install the dependencies needed for strip-combining-marks development and testing. You may want to install Istanbul globally using npm install istanbul -g.

Once that’s done, you can run the unit tests in Node using npm test or node tests/tests.js. To run the tests in Rhino, Ringo, Narwhal, and web browsers as well, use grunt test.

To generate the code coverage report, use grunt cover.

Author

twitter/mathias
Mathias Bynens

License

strip-combining-marks is available under the MIT license.

Something went wrong with that request. Please try again.