{"id":14031941,"url":"https://github.com/sillsdev/khmer-normalizer","last_synced_at":"2025-12-30T06:05:56.285Z","repository":{"id":252514178,"uuid":"840661430","full_name":"sillsdev/khmer-normalizer","owner":"sillsdev","description":"Normalize Khmer strings according to https://www.unicode.org/L2/L2022/22290-khmer-encoding.pdf","archived":false,"fork":false,"pushed_at":"2024-08-10T10:16:54.000Z","size":55,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-08-10T11:30:31.584Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sillsdev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2024-08-10T09:49:33.000Z","updated_at":"2024-08-10T11:30:38.838Z","dependencies_parsed_at":"2024-08-10T11:30:37.044Z","dependency_job_id":"1a85dec9-ef2c-4213-8d2e-9fd1c82cb0ef","html_url":"https://github.com/sillsdev/khmer-normalizer","commit_stats":null,"previous_names":["sillsdev/khmer-normalizer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fkhmer-normalizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fkhmer-normalizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fkhmer-normalizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sillsdev%2Fkhmer-normalizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sillsdev","download_url":"https://codeload.github.com/sillsdev/khmer-normalizer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":214789312,"owners_count":15785046,"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":[],"created_at":"2024-08-12T00:01:00.418Z","updated_at":"2025-12-30T06:05:56.274Z","avatar_url":"https://github.com/sillsdev.png","language":"TypeScript","readme":"# khmer-normalizer\n\nThis module normalizes Khmer text according to the proposed normal encoding structure at https://www.unicode.org/L2/L2022/22290-khmer-encoding.pdf.\n\nIt does not attempt to identify faulty text, merely to ensure that two strings that would have rendered the same are output as the same string.\n\nA live online version is available at https://convert.ភាសាខ្មែរ.com/ (see https://ភាសាខ្មែរ.com for related tools).\n\n## Example\n\nខែ្មរ is corrected to ខ្មែរ:\n\n* Input: ខ `U+1781` ែ `U+17C2` ្ `U+17D2` ម `U+1798` រ `U+179A`\n* Output: ខ `U+1781` ្ `U+17D2` ម `U+1798` ែ `U+17C2` រ `U+179A`\n\n## Installation\n\n```\nnpm install khmer-normalizer\n```\n\n## API Usage\n\n```ts\n\nimport { khnormal } from 'khmer-normalizer';\n\n// Normal use -- Modern Khmer\nconst cleanKhmer = khnormal(inputKhmer);\n\n// Specifying the Modern Khmer language tag is optional\nconst cleanKhmer = khnormal(inputKhmer, 'km');\n\n// For Middle Khmer, use the language tag 'xhm'\nconst cleanMiddleKhmerText = khnormal(inputMiddleKhmerText, 'xhm');\n\n```\n\n## Command line usage\n\n```\nkhnormal [options] [inputFile...]\n\nIf no input files are specified, reads from stdin, utf-8\n\n# Options\n\n--outfile, -o   Write concatenated output to file; if not specified, writes to stdout, utf-8\n--fail, -f      Highlight places where khnormal was unable to regularize text\n--lang, -l      Specify processing language, km (Modern Khmer, default) or xhm (Middle Khmer)\n--help, -h      Print this help\n```","funding_links":[],"categories":["Awesome Khmer Language"],"sub_categories":["2. Toolkit"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsillsdev%2Fkhmer-normalizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsillsdev%2Fkhmer-normalizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsillsdev%2Fkhmer-normalizer/lists"}