Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laziu/node-kortype
JS로 한영타변환, 윈도우/맥 한글 변환
https://github.com/laziu/node-kortype
convert english fix hangul korean macos translate typo
Last synced: about 2 months ago
JSON representation
JS로 한영타변환, 윈도우/맥 한글 변환
- Host: GitHub
- URL: https://github.com/laziu/node-kortype
- Owner: laziu
- License: mit
- Created: 2021-01-10T17:15:54.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2021-01-15T06:40:38.000Z (about 4 years ago)
- Last Synced: 2024-11-24T13:21:10.923Z (2 months ago)
- Topics: convert, english, fix, hangul, korean, macos, translate, typo
- Language: TypeScript
- Homepage:
- Size: 74.2 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# node-kortype
eng2kor and Hangul codepoint translation with Typescript support.
한영타변환기, 윈도우/맥 한글 변환기## Installation
```sh
npm install kortype
```The package requires Node.js >= 10.
## Usage
### Example
```ts
import { KeyboardConverter, HangulConverter } from "kortype";const mistyped = `rmsrj djqtsms sodyddmf rptlgkwl aktlqtldh.`;
const corrected = KeyboardConverter.set(mistyped, "querty").convert("dubeolsik").get();
console.log(corrected); // '근거 없는 내용을 게시하지 마십시오.'const mactyped = `ㄱㄴㄷ보고서_최종_최종.pdf`;
const normalized = HangulConverter.set(mactyped, "mac").convert("complete").get();
const keystrokes = HangulConverter.set(mactyped, "mac").convert("keystroke").get();
console.log(normalized); // 'ㄱㄴㄷ보고서_최종_최종.pdf'
console.log(keystrokes); // 'ㄱㄴㄷㅂㅗㄱㅗㅅㅓ_ㅊㅗㅣㅈㅗㅇ_ㅊㅗㅣㅈㅗㅇ.pdf'
```### Features
- Convert mistyped string between Querty and Dubeolsik keyboard layout.
- Convert Hangul codepoint between the standard string (U+AC00-D7AF) and macOS-style jamo string (U+1100-11FF).
- Convert Hangul keystrokes to merged syllables.
- Supports Typescript.## API
### KeyboardConverter
#### `KeyboardConverter.set(value: string, type: "querty" | "dubeolsik", { capsLock?: boolean })`
Create KeyboardConverter instance with the initial state.
`KeyboardConverter.set()` is same with `new KeyboardConverter()`.- `capsLock` - CapsLock status while typing. If `true`, the letter case will be inverted.
#### `instance.convert(type: "querty" | "dubeolsik")`
Convert string with the specified keyboard layout.
#### `instance.get()`
Get converted string value.
`instance.get()` is same with `instance.value`.### HangulConverter
#### `HangulConverter.set(value: string, type: "complete" | "mac" | "keystroke")`
Create HangulConverter instance with the initial state.
`HangulConverter.set()` is same with `new KeyboardConverter()`.#### `instance.convert(type: "complete" | "mac" | "keystroke")`
Convert string with specified codepoint type.
- "complete" - Normal Hangul string consists of Hangul Syllables (U+AC00-D7AF) and Letters (U+3130-318F).
- "mac" - macOS-style Hangul composite string consists of Hangul Jamo (U+1100-11FF) and Letters (U+3130-318F).
- "keystroke" - Destructed Hangul Letters sequence only consists of Dubeolsik keys (U+3130-318F).#### `instance.get()`
Get converted string value.
`instance.get()` is same with `instance.value`.## Contributing
Thank you for considering contributing to the project! ❤️
I'll accept your pull request if it:- **has tests**
- looks reasonable
- does not break backward compatibility
- linted & formatted properly (use eslint and prettier)If your change breaks backward compatibility, please clarify it in the pull request then we should discuss about it.
## License
This repository is licensed under the MIT license. See [LICENSE](LICENSE).