Definitely. Your feedback reminded me on what we had worked on back in late
2014 -- making specific part of Keyboard app more modular than before. It's
definitely a possibility to utilize these bits beyond a touch keyboard,
like extracting the word suggestion/correction part of the code into
separate program here hopefully it would be more useful than Hunspell.

How to do it would depend on what we want to do specifically though.


Tim


On Sun, Feb 28, 2016 at 4:34 AM, Min-Zhong "John" Lu / 呂敏中 <
[email protected]> wrote:

> It's really encouraging to see such discussions being brought up. To echo
> Tim's opinion on [1], I am also in the deep belief that Gaia's Keyboard is
> one of those which have its merits even as an individual
> module/library/tool. As webby as it is, people can quickly prototype,
> develop, and let others try, interesting/innovative (touchscreen) keyboard
> layouts and IMEs without going through cumbersome deployment processes. I
> believe this enables developers to experiment with more advanced predictive
> engines [*] and gather feedback, building from the foundations on what we
> already have.
>
> [*] such as predicting for agglutinative languages like Hungarian, or
> context-aware predictions from n-gram models, possibly with a
> dynamically-fed text corpus.
>
> - John [:mnjul]
>
> 2016-02-25 0:48 GMT-05:00 Tim Guan-tin Chien <[email protected]>:
>
>> Hi all,
>>
>> TL;DR: This is a separate "transition plan" for the Gaia Keyboard alone,
>> attempt to utilize it beyond a FxOS smartphone. Contribution and feedback
>> welcome.
>>
>> ===
>>
>> With the state of the Firefox OS smartphone project, it is unclear to me
>> if any future Firefox OS project will continue to be benefited from a
>> touchscreen keyboard.
>>
>> However, it is point out to me in various private conversations that Gaia
>> Keyboard is valuable in it's own way:
>>
>> * It's the easiest free software touchscreen keyboard to contributor --
>> all you need is a layout described in JSON and optionally a dictionary, as
>> documented in [1]
>> * Thus, the keyboard code base has collected various contributions of
>> layouts from many languages, some of them are minority languages of the
>> world with no any other keyboard available.
>>
>> [1]
>> https://wiki.mozilla.org/Gaia/System/Keyboard/IME/Latin/Prediction_%26_Auto_Correction
>>
>> == Projects ==
>>
>> It would be heart broken to throw away all of these we have accomplished.
>> I therefore would like to call for contribution of these spin-off projects:
>>
>> 1. Gaia Keyboard Demo on the Web and a Web library
>>
>> URL: https://github.com/timdream/gaia-keyboard-demo
>>
>> I've been maintaining this from time to time -- just to make sure people
>> without a Firefox OS phone and without a build environment could test out
>> his/her keyboard layout. With suggestion from Prof. Derek Lackaff from Elon
>> University, I've created a version of it that can be embedded into any
>> website that wish to offer it's own keyboard [2].
>>
>> [2] Can be tested in http://timdream.org/gaia-keyboard-demo/lib.html
>>
>> I would love any contribution on this project to prefect the interaction
>> needed this usable and pleasant.
>>
>> 2. Gaia Keyboard on iOS
>>
>> URL: https://github.com/timdream/gaia-keyboard-ios
>>
>> I have only hours of Swift experience, and most of them are counted
>> toward this project. The Web Demo has proven that the Gaia Keyboard can be
>> shimmed and usable on WebKit/Blink, so it's only reasonable to wrap it in
>> WKWebView and offer it as a iOS Custom Keyboard. I've also done the part
>> that re-implements mozInputMethod API and hook it up to TextDocumentProxy
>> exposed by iOS. The only thing prevented this from working is to figure out
>> how iOS layout works and make the WebView tappable.
>>
>> 3. Gaia Keyboard on Android
>>
>> Same as above, but nothing started yet!
>>
>> == Implementations ==
>>
>> All of the above projects runs Gaia Keyboard with code directly from
>> source tree, with some of the re-implementation of moz- APIs shared. Depend
>> on # of contributors interested in these projects, it's definitely possible
>> to dive into the keyboard code itself and not to run Gaia Keyboard as a
>> whole; but it's important (IMHO, for now) to keep Gaia Keyboard on Gaia
>> master working as we do this and keep the demo page deploy-able as a GitHub
>> Pages (no build step and only pull external code with submodules).
>>
>> If there are more contributors, I am open to re-implement native UIs in
>> iOS/Android -- that's definitely possible and a way for us to stop fighting
>> with the DOM.
>>
>> == Fork? ==
>>
>> Projects above do not keep it's own copy of the Gaia Keyboard. It was
>> done intentionally so we don't fork the Gaia Keyboard. It's sad to pull 4GB
>> of data just to work on a directory, but IMHO (for now, again) copy the
>> code to various projects and try to uplift from the upstream will be harder.
>>
>> As Gaia involves (especially when it's necessary from testing/continuous
>> integration  point of view), it might be something needed to work on, but I
>> would avoid that especially if there isn't enough interest. It would be sad
>> if people had spent the time build the house but no one come to the party.
>>
>> == Productization? ==
>>
>> To be clear, I do not think Gaia Keyboard alone is a product that would
>> compete with native, built-in keyboard on other OSes. Gaia Keyboard is
>> usable in the places where it has the strength, so it's probably not worthy
>> to plan more features on it. It would also be hard to polish the new
>> features without support from full time employees in Mozilla Corp.
>>
>> As you can see on Bugzilla, we still accept layout and dictionary changes
>> -- so please submit yours if your language is missing.
>>
>> == Conclusion ==
>>
>> I would like to thank Prof. Lanckaff and Ehsan (CC'd) for the some ideas
>> around these plans.
>>
>> Special shout out to Prof. Kevin Scannell on providing us with word lists
>> for various languages over the years, which really made a difference
>> between us and the Android open sourced keyboard.
>>
>> Let's get to work -- if you would like to make it happen!
>>
>>
>> Tim
>>
>> _______________________________________________
>> dev-fxos mailing list
>> [email protected]
>> https://lists.mozilla.org/listinfo/dev-fxos
>>
>>
>
_______________________________________________
dev-fxos mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-fxos

Reply via email to