{"id":15717898,"url":"https://github.com/laziu/node-kortype","last_synced_at":"2026-04-28T11:32:44.918Z","repository":{"id":70257539,"uuid":"328437151","full_name":"laziu/node-kortype","owner":"laziu","description":"JS로 한영타변환, 윈도우/맥 한글 변환 ","archived":false,"fork":false,"pushed_at":"2021-01-15T06:40:38.000Z","size":76,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-06T04:13:53.755Z","etag":null,"topics":["convert","english","fix","hangul","korean","macos","translate","typo"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/laziu.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-01-10T17:15:54.000Z","updated_at":"2024-05-13T08:10:37.000Z","dependencies_parsed_at":"2023-03-20T12:24:22.657Z","dependency_job_id":null,"html_url":"https://github.com/laziu/node-kortype","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laziu%2Fnode-kortype","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laziu%2Fnode-kortype/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laziu%2Fnode-kortype/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laziu%2Fnode-kortype/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/laziu","download_url":"https://codeload.github.com/laziu/node-kortype/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246385414,"owners_count":20768672,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["convert","english","fix","hangul","korean","macos","translate","typo"],"created_at":"2024-10-03T21:51:34.837Z","updated_at":"2026-04-28T11:32:39.716Z","avatar_url":"https://github.com/laziu.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-kortype\n\neng2kor and Hangul codepoint translation with Typescript support.  \n한영타변환기, 윈도우/맥 한글 변환기\n\n## Installation\n\n```sh\nnpm install kortype\n```\n\nThe package requires Node.js \u003e= 10.\n\n## Usage\n\n### Example\n\n```ts\nimport { KeyboardConverter, HangulConverter } from \"kortype\";\n\nconst mistyped = `rmsrj djqtsms sodyddmf rptlgkwl aktlqtldh.`;\nconst corrected = KeyboardConverter.set(mistyped, \"querty\").convert(\"dubeolsik\").get();\nconsole.log(corrected); // '근거 없는 내용을 게시하지 마십시오.'\n\nconst mactyped = `ㄱㄴㄷ보고서_최종_최종.pdf`;\nconst normalized = HangulConverter.set(mactyped, \"mac\").convert(\"complete\").get();\nconst keystrokes = HangulConverter.set(mactyped, \"mac\").convert(\"keystroke\").get();\nconsole.log(normalized); // 'ㄱㄴㄷ보고서_최종_최종.pdf'\nconsole.log(keystrokes); // 'ㄱㄴㄷㅂㅗㄱㅗㅅㅓ_ㅊㅗㅣㅈㅗㅇ_ㅊㅗㅣㅈㅗㅇ.pdf'\n```\n\n### Features\n\n- Convert mistyped string between Querty and Dubeolsik keyboard layout.\n- Convert Hangul codepoint between the standard string (U+AC00-D7AF) and macOS-style jamo string (U+1100-11FF).\n- Convert Hangul keystrokes to merged syllables.\n- Supports Typescript.\n\n## API\n\n### KeyboardConverter\n\n#### `KeyboardConverter.set(value: string, type: \"querty\" | \"dubeolsik\", { capsLock?: boolean })`\n\nCreate KeyboardConverter instance with the initial state.  \n`KeyboardConverter.set()` is same with `new KeyboardConverter()`.\n\n- `capsLock` - CapsLock status while typing. If `true`, the letter case will be inverted.\n\n#### `instance.convert(type: \"querty\" | \"dubeolsik\")`\n\nConvert string with the specified keyboard layout.\n\n#### `instance.get()`\n\nGet converted string value.  \n`instance.get()` is same with `instance.value`.\n\n### HangulConverter\n\n#### `HangulConverter.set(value: string, type: \"complete\" | \"mac\" | \"keystroke\")`\n\nCreate HangulConverter instance with the initial state.  \n`HangulConverter.set()` is same with `new KeyboardConverter()`.\n\n#### `instance.convert(type: \"complete\" | \"mac\" | \"keystroke\")`\n\nConvert string with specified codepoint type.\n\n- \"complete\" - Normal Hangul string consists of Hangul Syllables (U+AC00-D7AF) and Letters (U+3130-318F).\n- \"mac\" - macOS-style Hangul composite string consists of Hangul Jamo (U+1100-11FF) and Letters (U+3130-318F).\n- \"keystroke\" - Destructed Hangul Letters sequence only consists of Dubeolsik keys (U+3130-318F).\n\n#### `instance.get()`\n\nGet converted string value.  \n`instance.get()` is same with `instance.value`.\n\n## Contributing\n\nThank you for considering contributing to the project! ❤️  \nI'll accept your pull request if it:\n\n- **has tests**\n- looks reasonable\n- does not break backward compatibility\n- linted \u0026 formatted properly (use eslint and prettier)\n\nIf your change breaks backward compatibility, please clarify it in the pull request then we should discuss about it.\n\n## License\n\nThis repository is licensed under the MIT license. See [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaziu%2Fnode-kortype","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flaziu%2Fnode-kortype","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaziu%2Fnode-kortype/lists"}