The interactive file manager requires Javascript. Please enable it or use sftp or scp.
You may still browse the files here.
| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| minimum_keyboard.tar.bz2 | 2013-03-24 | 2.0 MB | |
| README.TXT | 2013-03-24 | 3.7 kB | |
| Totals: 2 Items | 2.0 MB | 0 | |
License: ======== This product is licensed under the GNU Public License 2.0 For more details see LICENSE.TXT or gpl-2.0.pdf Included in this package are some free books from http://gutenberg.org Requirements: ============= - Webserver (i.e. Apache) - SQL-Server (i.e. MySQL) - PHP-interpreter Installation: ============= Make sure you checked the requirements-section first! 1) Unzip the package: # tar -xvjf minimum_keyboard.tar.bz2 2) Move the package somewhere to your htdocs folder (i.e. /var/www/htdocs) Check your Webserver manual for further instructions 3) Switch to the project root (adjust the next command to your needs!) # cd /var/www/htdocs/minimum_keyboard 4) Import the database structure (console or whatever you like ...) # mysql < database/minimum_keyboard.sql 5) Adjust the settings to your needs in config.inc.php Especially check the database settings! 6) Import some bookes into the database (feel free to add some more books to the directory "en_books") # php en_import.php 7) Open up a webbrowser and navigate to this project root Example: http://localhost/minimum_keyboard/ How it works: ============= First of all: This piece of software is not perfect. It is not meant to be. I just hacked this together for fun within a few hours, to prove a friend of mine, i could implement a minimal-keyboard within a few hours - right after we watched a promotion video for project "minuum", which is not released at the time of writing this. This project should only give you some ideas how to implement a custom keyboard. So, now let's get started: 1) a lot of text is needed to let the system see, how the language works. I use some freely available books from the "gutenberg project". 2) remove everything unwanted form those books and only use the words (seperated by spaces). 3) Insert each word into the database, but hash it afterwards. That means that every character of the word is considered and given a number - this is done according to the keyboard split. 4) Take the context into consideration. Insert into the database, which word came before the current word and score this accordingly. This is very important! We collapse a normal keyboard into less keys, so there is a chance that there will be multiple possible words for a given hash. The context ensures, that a good match will be suggested first. After that, the database is complete. 5) Present the user an interface with collapsed keys. In this example we collapse 3 characters of the keyboard in one row into a single item: i.e.: "QAZ", "WSX", "EDC" etc. 6) Each of these items is assigned a number, for example "QAZ" gets the "0", "WSX" gets the "1" and so on. 7) Each time the user clicks on one item, the number is appended to the hash and the database is checked for matching words. Those are sorted by length and the context. 8) If the user clicks an a sugested word, it is inserted into the output textfield, if he clicks on the space-item (SPC) the first word (best match) in the suggest bar will be used. Of course, this program can easily be improved (i.e. use user-input to further) enhance the context, use better books etc. but this is up to you. This software is only intended to teach you how to implement your own keyboard ------------------------------------------------------------------------------- This program was developed by David Tahir (kadrim1983@users.sourceforge.net) PLEASE NOTE THAT YOU WILL BE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR OR ANY OTHER COMPUTER SYSTEM OR LOSS OF DATA THAT RESULTS FROM USING THIS SOFTWARE.