# Learning Vision

学習機能の性能向上は重要です。

## 今後実現したい機能

### プライバシー

キーボード上から「新たな学習を停止（プライベートモード）」「これまでの学習を利用しない（ゲストモード）」を有効化できることにより、ユーザがプライバシーを守りやすくなる可能性がある。

この機能の技術的な課題はキーボードからの設定の上書きである。上書きそのものは、設定の構造を次のようにすることで対応できる。

- アプリ側：App Groupの共有領域に「(設定内容, 更新日時)」のデータを保存
- キーボード側：Private領域に「(設定内容, 更新日時)」のデータを保存
- 読み出し：更新日時の新しい方を利用

しかし、キーボード側から上書きした場合にアプリ側の設定の表示を更新する方法が存在しない（フルアクセスがある場合は表示を更新できる）。これが実際の使用感にどれほど悪影響を与えるかは不明であり、おそらくあまり気にしなくて良いと思う。

また「ゲストモードの解除をキーボード上で可能にするか」という論点がある。ゲストがゲストモードを解除できたら意味がないかもしれないが、これは今後に回しても問題ないと思う。

### バックアップ

学習のバックアップを定期的に取り、そこから過去の学習を復元できるようにすることが考えられる。

この機能の課題は、「復元」をどのようなUIで実現するかと、実際に「定期的に」は取れないのをどう解決するかである。

### 修正の自動検出

誤変換をユーザが「修正」したことを自動的に検出し、その候補の学習を変更することができると良い。

### 仕様の再検討

- 現在の学習は、特に長い候補において強すぎるため、弱くした方が良いかもしれない。