Giter Club home page Giter Club logo

typeover's People

Contributors

owenmcgirr avatar tnantais avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

ijdoc tnantais

typeover's Issues

Default behaviour for automatic switching to the words page

We don't currently go to the words page automatically after the first letter typed. Is this by design? It seems like a good idea, but we should probably give users the option to choose how many letters of a word they want to type before automatically going to the words page. The default would be two and the range would probably run from 1 to 4 inclusive.

Remove OpenEars support from prototype

We're not 100% sold on including OpenEars in the program. Before we install TypeOver on outside testers' devices, I think we should remove OpenEars from the project, at least until we're a little more familiar with its characteristics, stability, etc. The speak button can be greyed out, or pop up a message box saying "coming soon".

Default user settings

I have a question about the code that runs on startup to check whether this is the first time running the app, and if so, saves some default settings. I thought that the default for a non-existent boolean setting would be false, in which case, this if statement would evaluate to false, meaning the code would never run:

  • if ([[NSUserDefaults standardUserDefaults] boolForKey:@"first_run"]) {
  • [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"first_run"];

"Words" and "letters" button labels should be images

We need to modify the visual style of the words and letters command buttons to set them apart from the letter groups and word predictions. Right now they kind of melt in (especially if your word starts with the letter "L").

Need a setting for within-key scan frequency

We need to make it possible to change the rate at which the letters scan by after selecting a letter group. These discrete time choices should match the times used by the Shield, which are (approximate values in milliseconds): 5000, 4170, 3470, 2890, 2410, 2000, 1670, 1400, 1160, 970, 810, 670, 560, 480, 390, 320, 270.

Ideally, we would have the same green progress indicator as on the main page to show you exactly what your current setting gets you.

Need a read-write data structure for user-specific words and a UI for explicitly adding

We should probably have a second SQL database for user-added words and a way for the user to add those words. One possibility for adding them is to wait for the user to hit space after typing a word that isn't in the main database. We could change the label from "space" to "add" to permit the user to take an explicit action to add the new word if desired. We'll have to have a way of then including these words in the prediction keys at an appropriate frequency -- chances are they will be words that the user wants to use often. They should be predicted relatively readily.

Combining bigram-based word prediction with unigram-based

There are four prediction situations that we need to respond to:
-no previous word, no context -- list blank
-no previous word, some context -- unigram only
-previous word, no context -- bigram only
-previous word, some context -- mix of unigram and bigram

This last situation requires an algorithm e.g., first fill the array with matching bigram words. If there aren't enough matching bigram words, fill the remaining spaces with unigram words, but don't duplicate any of the words that are already there.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.