Red de conocimiento informático - Material del sitio web - ¿Cómo programar un método de entrada Pinyin desde cero?

¿Cómo programar un método de entrada Pinyin desde cero?

Necesita aprender la API del marco del método de entrada; los marcos del método de entrada de diferentes sistemas son bastante diferentes y pueden involucrar algunos detalles subyacentes del sistema; la depuración del método de entrada de Windows se carga mediante DLL; inyección, que debe cargarse con anticipación Está registrado en el sistema y no se puede reemplazar en tiempo de ejecución (el intercambio en caliente Mac OS tiene control de tiempo de espera para el método de entrada, lo que dificulta el uso de puntos de interrupción para depurar en un solo paso); La sugerencia es escribir primero una lógica basada en la comprensión del principio de funcionamiento del método de entrada. Un prototipo de método de entrada puro que funcione en modo REPL (bucle de lectura-evaluación-impresión) en la línea de comando. Por ejemplo, primero ingrese una cadena de códigos, busque un diccionario y genere los resultados de la consulta. Si está utilizando el método de entrada Pinyin, puede completar aún más la conversión de frases y oraciones según la consulta del diccionario. Luego, agregue lógica de procesamiento para teclas de función como la selección y edición de palabras. Las claves que no se pueden mostrar como caracteres se pueden simular mediante secuencias de escape, como `rime_api_console`. Utilice los nombres de claves de IBus con llaves para representar cualquier clave: `shuruufa{Left}{Left}{BackSpace}{End}`/lotem/librime. /blob /master/tools/rime_api_console.cc#L144 La ventaja de hacer esto es que puede guardar la secuencia de claves para probar como texto y reproducir el escenario de prueba mediante la redirección de entrada: ```$ rime_api_consolelt; test_key_sequence.txt`` prototipo; ingresará Una vez que la lógica requerida por el método esté completamente implementada, se puede integrar en el marco del método de entrada real, mejorar la interfaz de usuario, etc. Finalmente, me gustaría aprovechar la oportunidad para promover RIME: RIME / Zhongzhouyun Input Method Engine es un marco de algoritmo de método de entrada multiplataforma que encapsula un conjunto de algoritmos y componentes lógicos comúnmente utilizados en métodos de entrada en la interfaz entre el método de entrada. y el sistema operativo Permite a los usuarios personalizar esquemas de entrada y tablas de códigos en formato de documento YAML y crear rápidamente métodos de entrada para Pinyin, Zhuyin, Wubi y formularios similares. Para los métodos de entrada que requieren una lógica especial, el marco se puede ampliar mediante programación, lo que permite a los desarrolladores centrarse únicamente en la lógica relevante. Las deficiencias actuales de este marco son que la interfaz aún no se ha finalizado por completo y falta documentación de desarrollo.