text: ;;; braille-input.el --- A simple input method for braille
  
  ;; Copyright (C) 2013 Swiss Library for the Blind, Visually Impaired and Print Disabled 
  
  ;; This file is free software: you can redistribute it and/or modify
  ;; it under the terms of the GNU General Public License as published
  ;; by the Free Software Foundation, either version 3 of the License,
  ;; or (at your option) any later version.
  
  ;; This file is distributed in the hope that it will be useful, but
  ;; WITHOUT ANY WARRANTY; without even the implied warranty of
  ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  ;; General Public License for more details.
  
  ;; You should have received a copy of the GNU General Public License
  ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
  
  ;;; Commentary:
  
  
  ;;; Code:
  
  ;; This code is inspired by Vim unicode braille () and http://benizi.com/vim/braille.vim
  (require 'robin)
  
  (robin-define-package "braille-numerical"
    "A simple input method for braille."
  
    ("b0" ?⠀)
    ("b1" ?⠁)
    ("b2" ?⠂)
    ("b12" ?⠃)
    ("b3" ?⠄)
    ("b13" ?⠅)
    ("b23" ?⠆)
    ("b123" ?⠇)
    ("b4" ?⠈)
    ("b14" ?⠉)
    ("b24" ?⠊)
    ("b124" ?⠋)
    ("b34" ?⠌)
    ("b134" ?⠍)
    ("b234" ?⠎)
    ("b1234" ?⠏)
    ("b5" ?⠐)
    ("b15" ?⠑)
    ("b25" ?⠒)
    ("b125" ?⠓)
    ("b35" ?⠔)
    ("b135" ?⠕)
    ("b235" ?⠖)
    ("b1235" ?⠗)
    ("b45" ?⠘)
    ("b145" ?⠙)
    ("b245" ?⠚)
    ("b1245" ?⠛)
    ("b345" ?⠜)
    ("b1345" ?⠝)
    ("b2345" ?⠞)
    ("b12345" ?⠟)
    ("b6" ?⠠)
    ("b16" ?⠡)
    ("b26" ?⠢)
    ("b126" ?⠣)
    ("b36" ?⠤)
    ("b136" ?⠥)
    ("b236" ?⠦)
    ("b1236" ?⠧)
    ("b46" ?⠨)
    ("b146" ?⠩)
    ("b246" ?⠪)
    ("b1246" ?⠫)
    ("b346" ?⠬)
    ("b1346" ?⠭)
    ("b2346" ?⠮)
    ("b12346" ?⠯)
    ("b56" ?⠰)
    ("b156" ?⠱)
    ("b256" ?⠲)
    ("b1256" ?⠳)
    ("b356" ?⠴)
    ("b1356" ?⠵)
    ("b2356" ?⠶)
    ("b12356" ?⠷)
    ("b456" ?⠸)
    ("b1456" ?⠹)
    ("b2456" ?⠺)
    ("b12456" ?⠻)
    ("b3456" ?⠼)
    ("b13456" ?⠽)
    ("b23456" ?⠾)
    ("b123456" ?⠿)
    ("b7" ?⡀)
    ("b17" ?⡁)
    ("b27" ?⡂)
    ("b127" ?⡃)
    ("b37" ?⡄)
    ("b137" ?⡅)
    ("b237" ?⡆)
    ("b1237" ?⡇)
    ("b47" ?⡈)
    ("b147" ?⡉)
    ("b247" ?⡊)
    ("b1247" ?⡋)
    ("b347" ?⡌)
    ("b1347" ?⡍)
    ("b2347" ?⡎)
    ("b12347" ?⡏)
    ("b57" ?⡐)
    ("b157" ?⡑)
    ("b257" ?⡒)
    ("b1257" ?⡓)
    ("b357" ?⡔)
    ("b1357" ?⡕)
    ("b2357" ?⡖)
    ("b12357" ?⡗)
    ("b457" ?⡘)
    ("b1457" ?⡙)
    ("b2457" ?⡚)
    ("b12457" ?⡛)
    ("b3457" ?⡜)
    ("b13457" ?⡝)
    ("b23457" ?⡞)
    ("b123457" ?⡟)
    ("b67" ?⡠)
    ("b167" ?⡡)
    ("b267" ?⡢)
    ("b1267" ?⡣)
    ("b367" ?⡤)
    ("b1367" ?⡥)
    ("b2367" ?⡦)
    ("b12367" ?⡧)
    ("b467" ?⡨)
    ("b1467" ?⡩)
    ("b2467" ?⡪)
    ("b12467" ?⡫)
    ("b3467" ?⡬)
    ("b13467" ?⡭)
    ("b23467" ?⡮)
    ("b123467" ?⡯)
    ("b567" ?⡰)
    ("b1567" ?⡱)
    ("b2567" ?⡲)
    ("b12567" ?⡳)
    ("b3567" ?⡴)
    ("b13567" ?⡵)
    ("b23567" ?⡶)
    ("b123567" ?⡷)
    ("b4567" ?⡸)
    ("b14567" ?⡹)
    ("b24567" ?⡺)
    ("b124567" ?⡻)
    ("b34567" ?⡼)
    ("b134567" ?⡽)
    ("b234567" ?⡾)
    ("b1234567" ?⡿)
    ("b8" ?⢀)
    ("b18" ?⢁)
    ("b28" ?⢂)
    ("b128" ?⢃)
    ("b38" ?⢄)
    ("b138" ?⢅)
    ("b238" ?⢆)
    ("b1238" ?⢇)
    ("b48" ?⢈)
    ("b148" ?⢉)
    ("b248" ?⢊)
    ("b1248" ?⢋)
    ("b348" ?⢌)
    ("b1348" ?⢍)
    ("b2348" ?⢎)
    ("b12348" ?⢏)
    ("b58" ?⢐)
    ("b158" ?⢑)
    ("b258" ?⢒)
    ("b1258" ?⢓)
    ("b358" ?⢔)
    ("b1358" ?⢕)
    ("b2358" ?⢖)
    ("b12358" ?⢗)
    ("b458" ?⢘)
    ("b1458" ?⢙)
    ("b2458" ?⢚)
    ("b12458" ?⢛)
    ("b3458" ?⢜)
    ("b13458" ?⢝)
    ("b23458" ?⢞)
    ("b123458" ?⢟)
    ("b68" ?⢠)
    ("b168" ?⢡)
    ("b268" ?⢢)
    ("b1268" ?⢣)
    ("b368" ?⢤)
    ("b1368" ?⢥)
    ("b2368" ?⢦)
    ("b12368" ?⢧)
    ("b468" ?⢨)
    ("b1468" ?⢩)
    ("b2468" ?⢪)
    ("b12468" ?⢫)
    ("b3468" ?⢬)
    ("b13468" ?⢭)
    ("b23468" ?⢮)
    ("b123468" ?⢯)
    ("b568" ?⢰)
    ("b1568" ?⢱)
    ("b2568" ?⢲)
    ("b12568" ?⢳)
    ("b3568" ?⢴)
    ("b13568" ?⢵)
    ("b23568" ?⢶)
    ("b123568" ?⢷)
    ("b4568" ?⢸)
    ("b14568" ?⢹)
    ("b24568" ?⢺)
    ("b124568" ?⢻)
    ("b34568" ?⢼)
    ("b134568" ?⢽)
    ("b234568" ?⢾)
    ("b1234568" ?⢿)
    ("b78" ?⣀)
    ("b178" ?⣁)
    ("b278" ?⣂)
    ("b1278" ?⣃)
    ("b378" ?⣄)
    ("b1378" ?⣅)
    ("b2378" ?⣆)
    ("b12378" ?⣇)
    ("b478" ?⣈)
    ("b1478" ?⣉)
    ("b2478" ?⣊)
    ("b12478" ?⣋)
    ("b3478" ?⣌)
    ("b13478" ?⣍)
    ("b23478" ?⣎)
    ("b123478" ?⣏)
    ("b578" ?⣐)
    ("b1578" ?⣑)
    ("b2578" ?⣒)
    ("b12578" ?⣓)
    ("b3578" ?⣔)
    ("b13578" ?⣕)
    ("b23578" ?⣖)
    ("b123578" ?⣗)
    ("b4578" ?⣘)
    ("b14578" ?⣙)
    ("b24578" ?⣚)
    ("b124578" ?⣛)
    ("b34578" ?⣜)
    ("b134578" ?⣝)
    ("b234578" ?⣞)
    ("b1234578" ?⣟)
    ("b678" ?⣠)
    ("b1678" ?⣡)
    ("b2678" ?⣢)
    ("b12678" ?⣣)
    ("b3678" ?⣤)
    ("b13678" ?⣥)
    ("b23678" ?⣦)
    ("b123678" ?⣧)
    ("b4678" ?⣨)
    ("b14678" ?⣩)
    ("b24678" ?⣪)
    ("b124678" ?⣫)
    ("b34678" ?⣬)
    ("b134678" ?⣭)
    ("b234678" ?⣮)
    ("b1234678" ?⣯)
    ("b5678" ?⣰)
    ("b15678" ?⣱)
    ("b25678" ?⣲)
    ("b125678" ?⣳)
    ("b35678" ?⣴)
    ("b135678" ?⣵)
    ("b235678" ?⣶)
    ("b1235678" ?⣷)
    ("b45678" ?⣸)
    ("b145678" ?⣹)
    ("b245678" ?⣺)
    ("b1245678" ?⣻)
    ("b345678" ?⣼)
    ("b1345678" ?⣽)
    ("b2345678" ?⣾)
    ("b12345678" ?⣿))
  
  (register-input-method
   "braille-numerical"
   "braille"
   'robin-use-package
   "braille"
   "A simple numerical braille input method")
  
  