im2016発表資料
https://gyazo.com/648245adc6252b716db7af9f7b2022ab.gif
増井俊之
よろずユーザインタフェースハード/ソフト開発
ガラケーの予測入力システム開発
iPhoneのフリック入力開発
IoT方面の開発いろいろ
自前のIMEしか使ってません
Mac, Android, Emacs, (Windows)
Gyazo
http://Gyazo.com https://gyazo.com/42336e36559b014cf3939232fe4e9e8c
Scrapbox
http://ScrapBox.io/ https://gyazo.com/1b129045fcb1ea47afbbec786582d3b1
SoftwareDesignでの連載
増井の入力システムの特徴
シンプルで実用的
特殊キーなどを使わない
幅広い機器で動く
自然言語処理を使わない
曖昧さやら操作ミスを許す
日々ドッグフーディング
Gyaim
単純な予測変換
e.g. MacRuby, RubyCocoa
アプリケーションと同じようにビルド
Cocoaの謎APIをRubyから使う
コードも辞書もオープンソース
コードは1000行以下
利用しているIMEのAPIはひとつだけ
InputMethodKit
デモ: Gyaim
https://gyazo.com/648245adc6252b716db7af9f7b2022ab.gif
画像入力
パスワード入力
クレカ番号とか
接続辞書
「さんびゃくさんじゅうさん」
単語登録
Slime
コードも辞書もオープンソース
モード切り替えなし
ビデオ: Slime
https://www.youtube.com/watch?v=Ldyl5UbbSA8
https://www.youtube.com/watch?v=LCkD4-BGljg
正確な入力が必要
IoT時代向けでない
必ず訂正が必要
e.g. 「きょうはいしゃにいった」「うさぎをかいたい」「ここではきものをぬいでください」
曖昧入力アルゴリズムを適用しにくい
辞書や文法の管理が大変
大阪弁変換が作れるか?
「行かはる」
様々な機器で共通に利用できない
辞書
https://gyazo.com/1dc0cb464c30feb5f7f1804daf591407
https://gyazo.com/5cfd9ad48552a9d4ba2e9bb0173be0ba
GyaimもSlimeも共通
「接続辞書」をWiki上で編集
単語の前と後のカテゴリを指定
品詞の登録はしない
あらゆる言語で利用可能?
変換アルゴリズム
「接続辞書」にもとづいて可能なものを並べる
単純なのでどこでも動く
e.g. Ruby / Java / JS
みつからないときはググる
確定した単語は先頭に持ってくる
Slimeの状態遷移
https://gyazo.com/e24f6009a20e69ce366ffe12792c7edc
単語登録
未登録の単語を選択して読みを入力するとその単語が候補に出る
選択して確定すると登録される
쌈장
ᕦ( ͡° ͜ʖ ͡°)ᕤ
入力と検索と登録を融合
教えてください!
SwiftでIMEを作る方法
Windows版を作る方法
おまけ