-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy patharabic.schema.yaml
86 lines (78 loc) · 2.19 KB
/
arabic.schema.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# Rime schema
# vim: set sw=2 sts=2 et:
# encoding: utf-8
schema:
schema_id: arabic
name: "阿拉伯字母國際"
version: "20161125"
author:
- polyhedron<biopolyhedron@gmail.com>
description: |
形碼原則,qwerty鍵盤。
字母性上標(或取消上標)以'/'先導;
字母性下標(或取消下標)以'\\'先導;
雙橫點上標直接寫'"';
hamza上標直接寫'\'';
三點上標直接寫'^';
alif madda直接寫'a~';
少量變形字母以'C'後綴;
向下三點上下標寫/c或\c;
hamza及阿拉伯系一些符号(如分号؛)以'v'先導;
阿拉伯數字以'v'先導再加相應數字的上檔鍵;
獨立unicode附屬上標以'x'爲先導;獨立unicode附屬下標以'X'先導;
unicode獨立上標以'v/'爲先導;
unicode獨立下標以'v\'爲先導;
部分鍵位有衝突的ascii字符本體(拉丁系)用';'先導,如【^ ' " ` , ; / : \ ~】。 先導:x X v ; \ /;後標:C ^ ' " ~。
switches:
- name: ascii_mode
reset: 0
states: [ 阿拉伯文, 西文 ]
engine:
processors:
- ascii_composer
- speller
- selector # 有特殊數字時selector要在punctuator前
- punctuator # 先於 editor 才會使空格作符號上屏
- navigator
- express_editor
segmentors:
- ascii_segmentor
- abc_segmentor
- punct_segmentor
- fallback_segmentor
translators:
- punct_translator
- table_translator
menu:
alternative_select_keys: "123456789"
speller:
alphabet: 'abcdefghijklmnopqrstuvwxyzACDEGHIKNOSTUWXY;!"#$%^()'',-.<=>*/\~'
delimiter: ''
auto_select: true
translator:
dictionary: arabic
enable_user_dict: false
enable_sentence: true
comment_format:
- xform/^~(.*)$/$1/
punctuator: # 只須定義空格一個符號
use_space: true
half_shape: &punct
' ' : { commit: ' ' }
"1": "١"
"2": "٢"
"3": "٣"
"4": "٤"
"5": "٥"
"6": "٦"
"7": "٧"
"8": "٨"
"9": "٩"
"0": "٠"
"_": "ـ"
"{": "{"
"}": "}"
"[": "["
"]": "]"
"?": "؟"
# full_shape: *punct