__build_info:
  rime_version: 1.8.5
engine:
  filters:
    - simplifier
    - uniquifier
  processors:
    - ascii_composer
    - recognizer
    - key_binder
    - speller
    - punctuator
    - selector
    - navigator
    - express_editor
  segmentors:
    - ascii_segmentor
    - matcher
    - abc_segmentor
    - punct_segmentor
    - fallback_segmentor
  translators:
    - punct_translator
    - reverse_lookup_translator
    - script_translator
key_binder:
  bindings:
    - {accept: "Control+p", send: Up, when: composing}
    - {accept: "Control+n", send: Down, when: composing}
    - {accept: "Control+b", send: Left, when: composing}
    - {accept: "Control+f", send: Right, when: composing}
    - {accept: "Control+a", send: Home, when: composing}
    - {accept: "Control+e", send: End, when: composing}
    - {accept: "Control+d", send: Delete, when: composing}
    - {accept: "Control+k", send: "Shift+Delete", when: composing}
    - {accept: "Control+h", send: BackSpace, when: composing}
    - {accept: "Control+g", send: Escape, when: composing}
    - {accept: "Control+bracketleft", send: Escape, when: composing}
    - {accept: "Control+y", send: Page_Up, when: composing}
    - {accept: "Alt+v", send: Page_Up, when: composing}
    - {accept: "Control+v", send: Page_Down, when: composing}
    - {accept: ISO_Left_Tab, send: "Shift+Left", when: composing}
    - {accept: "Shift+Tab", send: "Shift+Left", when: composing}
    - {accept: Tab, send: "Shift+Right", when: composing}
    - {accept: minus, send: Page_Up, when: has_menu}
    - {accept: equal, send: Page_Down, when: has_menu}
    - {accept: comma, send: Page_Up, when: paging}
    - {accept: period, send: Page_Down, when: has_menu}
    - {accept: "Control+Shift+1", select: .next, when: always}
    - {accept: "Control+Shift+2", toggle: ascii_mode, when: always}
    - {accept: "Control+Shift+3", toggle: full_shape, when: always}
    - {accept: "Control+Shift+4", toggle: simplification, when: always}
    - {accept: "Control+Shift+5", toggle: extended_charset, when: always}
    - {accept: "Control+Shift+exclam", select: .next, when: always}
    - {accept: "Control+Shift+at", toggle: ascii_mode, when: always}
    - {accept: "Control+Shift+numbersign", toggle: full_shape, when: always}
    - {accept: "Control+Shift+dollar", toggle: simplification, when: always}
    - {accept: "Control+Shift+percent", toggle: extended_charset, when: always}
  import_preset: default
menu:
  page_size: 5
punctuator:
  full_shape:
    " ": {commit: "　"}
    "!": {commit: "！"}
    "\"": {pair: ["“", "”"]}
    "#": ["＃", "⌘"]
    "$": ["￥", "$", "€", "£", "¥", "¢", "¤"]
    "%": ["％", "°", "℃"]
    "&": "＆"
    "'": {pair: ["‘", "’"]}
    "(": "（"
    ")": "）"
    "*": ["＊", "·", "・", "×", "※", "❂"]
    "+": "＋"
    ",": {commit: "，"}
    "-": "－"
    .: {commit: "。"}
    "/": ["／", "÷"]
    ":": {commit: "："}
    ";": {commit: "；"}
    "<": ["《", "〈", "«", "‹"]
    "=": "＝"
    ">": ["》", "〉", "»", "›"]
    "?": {commit: "？"}
    "@": ["＠", "☯"]
    "[": ["「", "【", "〔", "［"]
    "\\": ["、", "＼"]
    "]": ["」", "】", "〕", "］"]
    "^": {commit: "……"}
    _: "——"
    "`": "｀"
    "{": ["『", "〖", "｛"]
    "|": ["·", "｜", "§", "¦"]
    "}": ["』", "〗", "｝"]
    "~": "～"
  half_shape:
    "!": {commit: "！"}
    "\"": {pair: ["“", "”"]}
    "#": "#"
    "$": ["￥", "$", "€", "£", "¥", "¢", "¤"]
    "%": ["%", "％", "°", "℃"]
    "&": "&"
    "'": {pair: ["‘", "’"]}
    "(": "（"
    ")": "）"
    "*": ["*", "＊", "·", "・", "×", "※", "❂"]
    "+": "+"
    ",": {commit: "，"}
    "-": "-"
    .: {commit: "。"}
    "/": ["、", "/", "／", "÷"]
    ":": {commit: "："}
    ";": {commit: "；"}
    "<": ["《", "〈", "«", "‹"]
    "=": "="
    ">": ["》", "〉", "»", "›"]
    "?": {commit: "？"}
    "@": "@"
    "[": ["「", "【", "〔", "［"]
    "\\": ["、", "\\", "＼"]
    "]": ["」", "】", "〕", "］"]
    "^": {commit: "……"}
    _: "——"
    "`": "`"
    "{": ["『", "〖", "｛"]
    "|": ["·", "|", "｜", "§", "¦"]
    "}": ["』", "〗", "｝"]
    "~": ["~", "～"]
  import_preset: default
recognizer:
  import_preset: default
  patterns:
    email: "^[A-Za-z][-_.0-9A-Za-z]*@.*$"
    reverse_lookup: "`[a-z]*'?$"
    uppercase: "[A-Z][-_+.'0-9A-Za-z]*$"
    url: "^(www[.]|https?:|ftp[.:]|mailto:|file:).*$|^[a-z]+[.].+$"
reverse_lookup:
  comment_format:
    - "xform/([nl])v/$1ü/"
  dictionary: stroke
  enable_completion: true
  preedit_format:
    - "xlit/hspnz/一丨丿丶乙/"
  prefix: "`"
  suffix: "'"
  tips: "〔筆畫〕"
schema:
  author:
    - "佛振 <chen.sst@gmail.com>"
  dependencies:
    - stroke
  description: |
    朙月拼音＋智能ABC雙拼方案。

  name: "智能ABC雙拼"
  schema_id: double_pinyin_abc
  version: 0.17
speller:
  algebra:
    - "erase/^xx$/"
    - "derive/^([jqxy])u$/$1v/"
    - "xform/^zh/A/"
    - "xform/^ch/E/"
    - "xform/^sh/V/"
    - "xform/^([aoe].*)$/O$1/"
    - "xform/ei$/Q/"
    - "xform/ian$/W/"
    - "xform/er$|iu$/R/"
    - "xform/[iu]ang$/T/"
    - "xform/ing$/Y/"
    - "xform/uo$/O/"
    - "xform/uan$/P/"
    - "xform/i?ong$/S/"
    - "xform/[iu]a$/D/"
    - "xform/en$/F/"
    - "xform/eng$/G/"
    - "xform/ang$/H/"
    - "xform/an$/J/"
    - "xform/iao$/Z/"
    - "xform/ao$/K/"
    - "xform/in$|uai$/C/"
    - "xform/ai$/L/"
    - "xform/ie$/X/"
    - "xform/ou$/B/"
    - "xform/un$/N/"
    - "xform/[uv]e$|ui$/M/"
    - "xlit/QWERTYOPASDFGHJKLZXCVBNM/qwertyopasdfghjklzxcvbnm/"
  alphabet: zyxwvutsrqponmlkjihgfedcba
  delimiter: " '"
switches:
  - name: ascii_mode
    reset: 0
    states: ["中文", "西文"]
  - name: full_shape
    states: ["半角", "全角"]
  - name: simplification
    states: ["漢字", "汉字"]
  - name: ascii_punct
    states: ["。，", "．，"]
translator:
  dictionary: luna_pinyin
  preedit_format:
    - "xform/o(\\w)/0$1/"
    - "xform/(\\w)q/$1ei/"
    - "xform/(\\w)n/$1un/"
    - "xform/(\\w)g/$1eng/"
    - "xform/(\\w)w/$1ian/"
    - "xform/([dtnljqx])r/$1iu/"
    - "xform/0r/0er/"
    - "xform/([nljqx])t/$1iang/"
    - "xform/(\\w)t/$1uang/"
    - "xform/(\\w)y/$1ing/"
    - "xform/([dtnlgkhaevrzcs])o/$1uo/"
    - "xform/(\\w)p/$1uan/"
    - "xform/([jqx])s/$1iong/"
    - "xform/(\\w)s/$1ong/"
    - "xform/([gkhaevrzcs])d/$1ua/"
    - "xform/(\\w)d/$1ia/"
    - "xform/(\\w)f/$1en/"
    - "xform/(\\w)h/$1ang/"
    - "xform/(\\w)j/$1an/"
    - "xform/(\\w)k/$1ao/"
    - "xform/(\\w)l/$1ai/"
    - "xform/(\\w)z/$1iao/"
    - "xform/(\\w)x/$1ie/"
    - "xform/([gkhaev])c/$1uai/"
    - "xform/(\\w)c/$1in/"
    - "xform/(\\w)b/$1ou/"
    - "xform/([nl])m/$1ve/"
    - "xform/([jqxy])m/$1ue/"
    - "xform/(\\w)m/$1ui/"
    - "xform/(^|[ '])a/$1zh/"
    - "xform/(^|[ '])e/$1ch/"
    - "xform/(^|[ '])v/$1sh/"
    - "xform/0(\\w)/$1/"
    - "xform/([nl])v/$1ü/"
    - "xform/([jqxy])v/$1u/"
  prism: double_pinyin_abc