Detect the direction of text: left-to-right, right-to-left, or neutral.
- What is this?
- When should I use this?
- Install
- Use
- API
- CLI
- Types
- Compatibility
- Security
- Contribute
- License
This package detects whether text is written left-to-right or right-to-left.
This is a simple and fast algorithm.
It looks at the first strong left-to-right or right-to-left character (for
example, the letter a
is LTR, the letter ى
is RTL).
That’s often enough but might be too naïve as it doesn’t take percentages or so
into account.
This package is ESM only. In Node.js (version 14.14+, 16.0+), install with npm:
npm install direction
In Deno with esm.sh
:
import {direction} from 'https://esm.sh/direction@2'
In browsers with esm.sh
:
<script type="module">
import {direction} from 'https://esm.sh/direction@2?bundle'
</script>
import {direction} from 'direction'
direction('A') // => 'ltr'
direction('anglais') // => 'ltr'
direction('بسيطة') // => 'rtl'
direction('@') // => 'neutral'
This package exports the identifier direction
.
There is no default export.
Get the direction from a given value.
Value to check (string
, required).
Direction for value
('ltr'
, 'rtl'
, or 'neutral'
).
Usage: direction [options] <words...>
Detect the direction of text: left-to-right, right-to-left, or neutral
Options:
-h, --help output usage information
-v, --version output version number
Usage:
# output directionality
$ direction @
# neutral
# output directionality from stdin
$ echo 'الانجليزية' | direction
# rtl
This package is fully typed with TypeScript. It exports no additional types.
This package is at least compatible with all maintained versions of Node.js. As of now, that is Node.js 14.14+ and 16.0+. It also works in Deno and modern browsers.
This package is safe.
Yes please! See How to Contribute to Open Source.