AlgTyper Tool

Lucas Garron

Premium Member
Joined
Jul 6, 2007
Messages
3,757
Location
California
WCA ID
2006GARR01
YouTube
Visit Channel
This is something I've wanted to do for a while, and it's complete enough for me to make public. (Seriously, I've been spending a lot of hours on this instead of starting homework.)

I can type an alg on the Heise sim faster than I can write down notation reliably (even if I'm decently fast at that). So, for a while I've wanted a tool that would take an alg I typed Heise-style and converted it to notation. After a lot of hacking and frustrating syntax-guessing:

http://cube.garron.us/tools/AlgTyper/

Don't rely on it for anything that it doesn't do for you, but feel free to use it as a convenience. I know I'll use it to find the notation for an alg after someone asks me for it.

Please tell me if anything doesn't work. (Except that a lot of typing will sometimes do wrong moves. I know that and don't know if I can fix it easily.)
And if there's something (simple) I can add that'll make this a more convenient tool for you, please tell me. :)
 
Please tell me if anything doesn't work. (Except that a lot of typing will sometimes do wrong moves. I know that and don't know if I can fix it easily.)
And if there's something (simple) I can add that'll make this a more convenient tool for you, please tell me. :)

Is your applet only for Java 1.6 and above? The applet doesn't load at my computer (Java 1.5):
Code:
11/30/08 2:27:16 PM [0x0-0x15015].com.apple.Safari[128] java.lang.UnsupportedClassVersionError: Bad version number in .class file
 
Time, I recompiled 3.5c21 with Java version 1.3, the lowest my javac supports right now. It's uploaded.
You should see "version LG 3.5c21" (once you do a move) if it loads correctly.

(By the way, does anyone know how to turn off the security warning in 1.6.0-rc? (which I needed to test Java in Chrome) It's absolutely stupid, annoying, and doesn't go away until I click "Run," anyhow. I had to click it EVERY time I tested this applet... :rolleyes:)
 
Move sequences such as RL'R'L, Rl'R'l, RxR'x', RyF'y', etc. should cancel into nothing, but remain in your simulator. This may be intentional, but if not, you may want to look into improving your cancellation algorithm. Everything else seems to be working out nicely.
 
Move sequences such as RL'R'L, Rl'R'l, RxR'x', RyF'y', etc. should cancel into nothing, but remain in your simulator. This may be intentional, but if not, you may want to look into improving your cancellation algorithm.
I decided that this should either be implemented post-applet, or be an option. What do you recommend, sorting consecutive per axis, or bubbling down any moves if still on the same axis?
R x L x ->
-R x2 L ?
-R L x2 ?
-L R x2 ? (alpha)

I'm leaning on the first, because it keeps the order of moves.

And I really don't know whether I want to cancel RyF'y'.

Also, does anyone have a good idea for slices? For now, "." does M', but I'm not sure if I should implement the others by cancellation. Same for u and d. Maybe I can use something like Ctrl...
 
Applet works fine with Version 1.6.0 (Build 1.6.0_01-b06). I didn't do any extensive testing on it, but it works fine for basic notation and whatnot.

By the way, does anyone know how to turn off the security warning in 1.6.0-rc?
I don't know if you can. Are you running an updated version of Java with all the patches?
 
What do you recommend, sorting consecutive per axis, or bubbling down any moves if still on the same axis?
R x L x ->
-R x2 L ?
-R L x2 ?
-L R x2 ? (alpha)

I'm leaning on the first, because it keeps the order of moves.
I think that is the best option as well, since it would stay closest in form to the original algorithm.

Also, does anyone have a good idea for slices? For now, "." does M', but I'm not sure if I should implement the others by cancellation. Same for u and d. Maybe I can use something like Ctrl...
By symmetry, "x" is the obvious counterpart to ".". As for the other slices, "z" / "/" and "c" / "," are possible choices because they are the remaining bottom row keys open on both the left and the right, but they are not very convenient or logical. Also, since the M slice is on the same axis as R and L, you may want to consider using "c" / "," for M moves instead of "." / "x".

On another note, why do t/y both do x and b/n both do x'? Perhaps two of those could be used for u/d moves instead of having a double mapping.
 
Time, I recompiled 3.5c21 with Java version 1.3, the lowest my javac supports right now. It's uploaded.
You should see "version LG 3.5c21" (once you do a move) if it loads correctly.

Thanks, it works fine now :).

Wow, even the key "ö" works, which doesn't for ryan's simulator (i always have to switch to american keyboard layout). Nice work.
 
Last edited:
Back
Top