This is pretty nifty!
I made a similar thing a while back, it might be easier than using an analog stick for accuracy. There is a mode that allows you to enter any ASCII character (I never bothered uploading it though, because nobody replied :I) http://love2d.org/forums/viewtopic.php?f=10&t=13581
To create characters in this scheme, you hold zero, one, or two of the ABXY buttons and press either up, down, left, or right on the d-pad.
The layout is based off the Elian script: http://www.ccelian.com/concepca.html
The reason I made this was because of the thrill of installing linux onto my dingoo. I wanted to be able to use the full terminal, browse the web (when plugged into usb) without having a keyboard. I didn't know how to program it to work as a part of OpenDingux at the time (and I still don't) but I really think it would be a lot of fun.
EDIT: I attached a version with the ASCII input. It uses PC configuration by default. (edit settings.lua if you want to try on a Dingoo!) Pretending your keyboard is a Dingoo, use the following controls:
ESDF = Up,Left,Down,Right
IJKL = X,Y,B,A
GH = Select,Start
WO = L,R
In the quick input mode, all the letters are on an imaginary grid (ABXY) with four levels (Down,Left,Up,Right):
Combining ABXY selects a spot on the grid: (still thinking in dingoo mapping)
(X+Y) (X) (X+A)
(Y) none (A)
(B+Y) (B) (B+A)
While holding a grid spot, press a direction to create the character:
Down: Left: Up: Right:
C F I L O R U X \n ! - ?
B E H K N Q T W Z . >
A D G J M P S V Y / < !
Other things include R for backspace, L for shift/extra symbols, SEL for ASCII.
Hold L,R and press d-pad to move the cursor.
I also attached the typing tutor. To change it to dingoo mode, in main.lua
controls = InputSchemes.PC
controls = InputSchemes.Dingoo
Here's what the tutor looks like:
After trying it out on the computer, I really recommend that you try it on a handheld, if at all possible! I'll even upload a Xbox360 controller version if anyone's interested! The keyboard doesn't really give it the feel of a real Dingoo. Also, there is a bit of memorization to do, but it's nothing compared to this awesome input method: https://www.youtube.com/watch?v=v7yZi45F8cE
If you don't want to try it because there isn't any "practical application," then try it out inside my impractical game maker for the Dingoo! (Press R to edit the name of an entity or condition!)https://www.love2d.org/forums/viewtopic.php?f=5&t=27862&p=93902
(My bad if it seems like I'm advertising, it's just that I worked so hard on these and nobody really cared D;)