KKeyboard Web

ម៉ាស៊ីនបញ្ចូលអក្សរខ្មែរដែលដំណើរការក្នុងឧបករណ៍ និង host adapters សម្រាប់ text fields និង structured editors លើវេប។ វាទទួល phonetic Latin អក្សរខ្មែរ prefix លំដាប់ Unicode និងគ្រោងព្យញ្ជនៈ ហើយតម្រៀបពាក្យខ្មែរ ដោយមិនផ្ញើអត្ថបទដែលបានវាយទៅសេវាណាមួយ។

ការដំណើរការ
Local browser runtime
ទម្រង់ input
Latin aliases, Khmer Unicode, prefixes និង skeletons
ប្រភព candidate
Exact, phonetic, prefix, fuzzy និង contextual
Completion
Current word ជាលំនាំដើម; next word ជាជម្រើស
Host contract
Range replacement និង lifecycle subscription
Adapters
React, Tiptap/ProseMirror និង Lexical/MDXEditor

ក្ដារចុចតែមួយ វាយបានច្រើនរបៀប

KKeyboard មិនមែនជាតារាងបម្លែងអក្សរដ៏តឹងរ៉ឹងនោះទេ។ វាយល់អ្វីដែលអ្នកវាយ — អក្សរឡាតាំង ឬខ្មែរ ពេញ ឬមិនពេញ — ហើយណែនាំពាក្យខ្មែរដែលត្រូវបំផុតពេលអ្នកកំពុងវាយ។

ចុចគ្រាប់តិចជាងមុន

វាយអក្សរពីរបី ចុច Enter ហើយពាក្យខ្មែរពេញលេញនឹងត្រូវបញ្ចូល។ ឧទាហរណ៍៖ ខ្ញុំស្រឡាញ់កម្ពុជា។

អក្សរកាត់ឡាតាំង
អក្សរកាត់ឡាតាំង១៣ គ្រាប់ជំនួសឱ្យ ១៩
គ្រោងព្យញ្ជនៈខ្មែរ
គ្រោងព្យញ្ជនៈខ្មែរ៧ គ្រាប់ជំនួសឱ្យ ១២

សូរសព្ទឡាតាំង

វាយភាសាខ្មែរតាមសំឡេងដោយប្រើអក្សរឡាតាំង។ មិនចាំបាច់រៀនប្រព័ន្ធរ៉ូម៉ាំងណាមួយឡើយ។

  • khnomខ្ញុំ
  • sousdeyសួស្តី

អក្ខរាវិរុទ្ធបត់បែន

បើខ្វះអក្សរ ឬសរសេរខុសបន្តិច ក៏នៅតែរកឃើញពាក្យត្រឹមត្រូវ។

  • knomខ្ញុំ

អក្សរកាត់ឡាតាំង

ទម្រង់ខ្លីៗដូចជា khm ឬ km ពង្រីកទៅជាពាក្យខ្មែរពេញលេញ។

  • khmខ្ញុំ
  • kmកម្ពុជា

គ្រោងព្យញ្ជនៈខ្មែរ

វាយតែព្យញ្ជនៈខ្មែរ មិនបាច់វាយជើង ឬស្រៈ — KKeyboard បំពេញឱ្យ។

  • ខញខ្ញុំ
  • កមពកម្ពុជា

ខ្មែរមិនពេញលេញ

ពាក្យមិនពេញ ឬលំដាប់ Unicode ខុស ត្រូវបានកែទៅជាទម្រង់ត្រឹមត្រូវ។

  • ខញុំខ្ញុំ

ការណែនាំស្វ័យប្រវត្តិ

ពាក្យណែនាំតាមលំដាប់បង្ហាញក្បែរទស្សន៍ទ្រនិច ដើម្បីបំពេញពាក្យបច្ចុប្បន្ន។ អាចបើកការទស្សន៍ទាយពាក្យបន្ទាប់បាន។

  • sous…សួស្តី
  • ខ្ញុំ …ពាក្យបន្ទាប់ (ជម្រើស)

របៀប Auto ស្គាល់ការវាយឡាតាំង ឬខ្មែរដោយស្វ័យប្រវត្តិ។ អ្នកក៏អាចកំណត់ជា ឡាតាំង ខ្មែរ ឬគ្រោង និងជ្រើសរើសភាសាផ្លូវការ ឬធម្មតា។

ការភ្ជាប់ Tiptap ដែលកំពុងដំណើរការ

កម្មវិធីកែសម្រួលនេះប្រើទិន្នន័យភាសាខ្មែរ React controller និង Tiptap adapter។ ពាក្យដែលបានជ្រើសត្រូវបញ្ចូលតាម transaction របស់ editor ដើម្បីរក្សាទម្រង់ និងការមិនធ្វើវិញ។

អត្ថបទដែលអ្នកវាយនៅតែក្នុងកម្មវិធីរុករកនេះ។ កម្មវិធីសាកល្បងមិនផ្ញើអត្ថបទទៅ Somara ទេ។

ឥរិយាបថ runtime

ម៉ាស៊ីនគ្រប់គ្រងការបកស្រាយ query និងការតម្រៀប។ Host adapter គ្រប់គ្រងទីតាំង document, selection, editor events និងការជំនួសអត្ថបទ។

01

Query normalization

អក្សរឡាតាំងត្រូវបម្លែងទៅ phonetic lookup keys។ អក្សរខ្មែរត្រូវសម្រួលសម្រាប់ Unicode order, prefix និង consonant skeleton។

02

Candidate retrieval

ម៉ាស៊ីនរួមបញ្ចូល reviewed aliases, generated phonetics, exact និង prefix indexes, fuzzy matches និង skeleton matches។

03

Ranking context

ពិន្ទុអាចរួមបញ្ចូល frequency និង local context model។ Register អាចជា automatic, formal ឬ casual។

04

Commit semantics

ជំនួសតែ active composing range។ Tiptap និង Lexical ប្រើ editor transactions ជំនួសការកែ DOM ដោយផ្ទាល់។

05

Keyboard handling

Enter, Tab, លេខ ឬការចុច ជ្រើស candidate។ Escape បិទ suggestions ហើយ Space រក្សាអត្ថបទរបស់អ្នកប្រើ។

ការភ្ជាប់លើវេប

ប្រើ React input ដែលរៀបចំរួច ឬភ្ជាប់ headless controller ទៅ editor adapter។ ទិន្នន័យភាសាត្រូវរក្សាទុកក្នុងកម្មវិធីរុករក ហើយអត្ថបទដែលវាយមិនត្រូវបានផ្ញើទៅសេវាណាមួយទេ។

@kkeyboard/react

Input ដែលរៀបចំរួច headless hook និងផ្ទាំងបង្ហាញពាក្យជ្រើសរើស។

@kkeyboard/tiptap

បម្លែង text offsets ទៅទីតាំង ProseMirror និងបញ្ចូលតាម Tiptap transactions។

@kkeyboard/lexical

បញ្ចូលតាម Lexical updates និង selections ហើយអាចប្រើជាមួយ MDXEditor។

@kkeyboard/core

Matching, ranking, Unicode normalization and input sessions.

@kkeyboard/web

Browser controller, DOM suggestion list and cached runtime loader.

@kkeyboard/data-km

Versioned offline Khmer runtime bundle and context models.

$npm install @kkeyboard/react
khmer-input.tsxTSX
'use client';
import {useState} from 'react';
import {KKeyboardInput} from '@kkeyboard/react';
import '@kkeyboard/react/styles.css';

export function KhmerInput() {
  const [value, setValue] = useState('');
  return (
    <KKeyboardInput
      value={value}
      onChange={(e) => setValue(e.target.value)}
      placeholder="វាយជាខ្មែរ ឬ khnom"
    />
  );
}

ការចែកចាយ

KKeyboard អាចប្រើដោយឥតគិតថ្លៃ ប៉ុន្តែមិនទាន់ជា open source នៅឡើយទេ។ កញ្ចប់ភ្ជាប់ និងលក្ខខណ្ឌប្រើប្រាស់ អាចទទួលបានដោយផ្ទាល់ពី Somara។

ស្នើសុំការចូលប្រើកញ្ចប់ភ្ជាប់