1
0
mirror of https://github.com/garraflavatra/alphabets.git synced 2024-11-23 17:07:29 +01:00

Updated the readme

This commit is contained in:
Romein van Buren 2023-08-08 21:32:11 +02:00
parent de32a0bf48
commit 66f6817a75
Signed by: romein
GPG Key ID: 0EFF8478ADDF6C49
2 changed files with 41 additions and 48 deletions

View File

@ -5,29 +5,23 @@ A tiny JS package that exports many different alphabets for many different use c
[![npm](https://img.shields.io/npm/v/alphabets)](https://www.npmjs.com/package/alphabets) [![npm](https://img.shields.io/npm/v/alphabets)](https://www.npmjs.com/package/alphabets)
[![Stand With Ukraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://stand-with-ukraine.pp.ua) [![Stand With Ukraine](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg)](https://stand-with-ukraine.pp.ua)
## Why ## Included alphabets
I have seen [code like this]: See below for [usage instructions](#how-to-use).
```js | Export name | Alphabet |
const alphabet = 'abcdefghijklmnopqrstuvwxyz'.split(''); |------------------|------------------|
``` | `danish` | [Danish](https://en.wikipedia.org/wiki/Danish_orthography), same as Norwegian |
| `faroese` | [Faroese](https://en.wikipedia.org/wiki/Faroese_orthography) |
Or [worse]: | `greek` | [Greek](https://en.wikipedia.org/wiki/Greek_alphabet) |
| `icelandic` | [Icelandic](https://en.wikipedia.org/wiki/Icelandic_orthography) |
```js | `latin` | [Latin](https://en.wikipedia.org/wiki/Latin_alphabet) (abcdefg etc.) |
const alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]; | `nato` | [NATO phonetic alphabet](https://en.wikipedia.org/wiki/NATO_phonetic_alphabet) |
``` | `norwegian` | [Norwegian](https://en.wikipedia.org/wiki/Danish_and_Norwegian_alphabet), same as Danish |
| `polish` | [Polish](https://en.wikipedia.org/wiki/Polish_alphabet) |
My opinion about this: it's ugly, and it pollutes your code. Instead, why not [do it like this](#how-to-use): | `russian` | [Russian](https://en.wikipedia.org/wiki/Russian_alphabet) |
| `swedish` | [Swedish](https://en.wikipedia.org/wiki/Swedish_alphabet) |
```js | `ukrainian` | [Ukrainian](https://en.wikipedia.org/wiki/Ukrainian_alphabet) |
import { latin } from 'alphabets';
doSomethingWithTheAlphabet(latin);
```
Much cleaner, right?
## Installation ## Installation
@ -37,27 +31,9 @@ Install the [alphabets npm module](https://www.npmjs.com/package/alphabets) usin
* Yarn: `yarn add alphabets` * Yarn: `yarn add alphabets`
* pnpm: `pnpm add alphabets` * pnpm: `pnpm add alphabets`
## Supported alphabets
See below for [usage instructions](#how-to-use).
| Alphabet | Export name |
|---------------------------|------------------|
| Danish | `danish` |
| Faroese | `faroese` |
| Greek (modern) | `greek` |
| Greek (ancient/polytonic) | `greekPolytonic` |
| Icelandic | `icelandic` |
| Latin (abcdefg etc.) | `latin` |
| [NATO phonetic alphabet] | `nato` |
| Norwegian | `norwegian` |
| Russian | `russian` |
| Swedish | `swedish` |
| Ukrainian | `ukrainian` |
## How to use ## How to use
Replace `<alphabetYouWantToUse>` with an alphabet identifier this package supports: Replace `<alphabetYouWantToUse>` with an [alphabet identifier](#included-alphabets) this package exports:
```js ```js
import { <alphabetYouWantToUse> } from 'alphabets'; import { <alphabetYouWantToUse> } from 'alphabets';
@ -70,13 +46,32 @@ const alphabets = require('alphabets');
console.log(alphabets.<alphabetYouWantToUse>); console.log(alphabets.<alphabetYouWantToUse>);
``` ```
## Why
I have seen [code like this](https://github.com/search?q=%27abcdefghijklmnopqrstuvwxyz%27.split%28%27%27%29+language%3AJavaScript&type=code&l=JavaScript):
```js
const alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('');
```
Or [even worse](https://github.com/search?q=%5B%22a%22%2C+%22b%22%2C+%22c%22%2C+%22d%22%2C+%22e%22%2C+%22f%22%2C+%22g%22%2C+%22h%22%2C+%22i%22%2C+%22j%22%2C+%22k%22%2C+%22l%22%2C+%22m%22%2C+%22n%22%2C+%22o%22%2C+%22p%22%2C+%22q%22%2C+%22r%22%2C+%22s%22%2C+%22t%22%2C+%22u%22%2C+%22v%22%2C+%22w%22%2C+%22x%22%2C+%22y%22%2C+%22z%22%5D+language%3AJavaScript&type=code&l=JavaScript):
```js
const alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
```
My opinion about this: it's ugly, and it pollutes your code. Instead, why not [do it like this](#how-to-use):
```js
import { latin } from 'alphabets';
for (const glyph of latin) {/* ... */}
```
This is much cleaner and more idiomatic.
## Copyright ## Copyright
(c) 2021-2023 Romein van Buren. Licensed under the MIT license. (c) 2021-2023 Romein van Buren. Licensed under the MIT license.
For the full copyright and license information, please view the [`LICENSE.md`](./LICENSE.md) file that was distributed with this source code. For the full copyright and license information, please see the [`LICENSE.md`](./LICENSE.md) file that was distributed with this source code.
[code like this]: https://github.com/search?q=%27abcdefghijklmnopqrstuvwxyz%27.split%28%27%27%29+language%3AJavaScript&type=code&l=JavaScript
[worse]: https://github.com/search?q=%5B%22a%22%2C+%22b%22%2C+%22c%22%2C+%22d%22%2C+%22e%22%2C+%22f%22%2C+%22g%22%2C+%22h%22%2C+%22i%22%2C+%22j%22%2C+%22k%22%2C+%22l%22%2C+%22m%22%2C+%22n%22%2C+%22o%22%2C+%22p%22%2C+%22q%22%2C+%22r%22%2C+%22s%22%2C+%22t%22%2C+%22u%22%2C+%22v%22%2C+%22w%22%2C+%22x%22%2C+%22y%22%2C+%22z%22%5D+language%3AJavaScript&type=code&l=JavaScript
[NATO phonetic alphabet]: https://en.wikipedia.org/wiki/NATO_phonetic_alphabet

View File

@ -8,8 +8,6 @@
"greek": ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"], "greek": ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"],
"greekPolytonic": ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"],
"icelandic": ["a", "á", "b", "d", "ð", "e", "é", "f", "g", "h", "i", "í", "j", "k", "l", "m", "n", "o", "ó", "p", "r", "s", "t", "u", "ú", "v", "x", "y", "ý", "þ", "æ", "ö"], "icelandic": ["a", "á", "b", "d", "ð", "e", "é", "f", "g", "h", "i", "í", "j", "k", "l", "m", "n", "o", "ó", "p", "r", "s", "t", "u", "ú", "v", "x", "y", "ý", "þ", "æ", "ö"],
"latin": ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"], "latin": ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"],