Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

[AHK 1.1]TypingAid v2.22.0 - Word AutoCompletion Utility


  • Please log in to reply
841 replies to this topic
kakarukeys
  • Members
  • 86 posts
  • Last active: Jul 18 2010 03:10 PM
  • Joined: 28 Sep 2009
Hi there,

It's been a busy week for me. Now I have some time to do some packaging for the new TypingAid.

To-do for me:
1. testing
2. create custom preference.ini for different languages
3. update pad files and website

testing revealed an issue as at now:
(v2.02 on WinXP 32bits, AHK 1.0.48.05 and Unicode AHK)

type 'thepanther thepanther\n' to trigger
alternatively type 'thepanther jumps over the road, thepanther\n'
with LearnMode On (Off is okay)
Posted Image
would ForceNewWordCharacters= new line character fix the issue?

EDIT:
Ah! it's related to the limitation maniac told me about, the max length of the word used in the wordlist is 80+ chars. When a wordlist with a very long phrase starting with 'the ......' is used, the bug can be triggered. It's better to mention this in the readme or let the program not read any phrase longer than the maximum from the wordlist.

Compilation without UPX yields a 500kb+ file, so I will use this to avoid false warnings by some antivirus software.
TypingAid autocompletion program made with AHK.

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009
Hey kakarukeys, I was surprised you hadn't posted yet :).

I have a small fix for the preferences file which I have not uploaded yet - SetTitleMatchMode is set to 1 which means it's going to match the beginning of the Window Title, not just that the Title contains the string. This causes problems for the "Title" parameter as the description is wrong. It should be set to 2 so it does a contains match.


As to your "thepanther\n" issue, could you give more explicit instructions? I'm having trouble replicating it.
Oh, I see, the word length limitation. Yes I think we should make mention of that in the ini file when reading from the wordlist.


Lastly, I am thinking of making some CPU usage changes. Currently the script is set to "SetBatchLines, 20ms" which causes the script to autosleep every 20 ms. This keeps the CPU usage below 67%. This is fine for loading and saving the wordlist, but I think it should be "SetBatchLines, -1" when fully loaded and running. I think this will help cut down on missed keys.
I'm also thinking the process priority should be set to "abovenormal" or "high" when the script is fully loaded and running. This will prevent high CPU usage tasks from interfering with the script when you are typing (ie if you are encoding a video or something while typing).

Please let me know what you think of the above changes, thanks!

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009
OK, I uploaded 2.03. I think that should address your issue kakarukeys. I added a note to the preferences.ini file (when a new one is created) and to the first post as well.

Also I included the CPU usage changes and the TitleMatch fix. Please see the changelog for more details.

Let me know if you see any issues.

kakarukeys
  • Members
  • 86 posts
  • Last active: Jul 18 2010 03:10 PM
  • Joined: 28 Sep 2009

Lastly, I am thinking of making some CPU usage changes. Currently the script is set to "SetBatchLines, 20ms" which causes the script to autosleep every 20 ms. This keeps the CPU usage below 67%. This is fine for loading and saving the wordlist, but I think it should be "SetBatchLines, -1" when fully loaded and running. I think this will help cut down on missed keys.


(v2.02) I do occasionally find that the first character is not deleted during auto-completion, thinking it could be my typo, is this the 'missed key' you were saying?

I'm also thinking the process priority should be set to "abovenormal" or "high" when the script is fully loaded and running. This will prevent high CPU usage tasks from interfering with the script when you are typing (ie if you are encoding a video or something while typing).


hmmm, so far I've never had a problem using the script while running CPU-intensive task. Just tested with CPU-burn, it's also working fine.
I'm using PIII 1GHz, do you have interference problem on your comp?
TypingAid autocompletion program made with AHK.

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009

(v2.02) I do occasionally find that the first character is not deleted during auto-completion, thinking it could be my typo, is this the 'missed key' you were saying?

That is the issue, yes. The script never sees that you type the key.

hmmm, so far I've never had a problem using the script while running CPU-intensive task. Just tested with CPU-burn, it's also working fine.
I'm using PIII 1GHz, do you have interference problem on your comp?


No, but I'm afraid it could cause missed keys. Setting the script to high should not cause any problems as it only operates when you are typing.


On a side note I just found a *big*, but rare, bug with the script. If you exit the script before the learned words from the wordlist are fully loaded, the script saves the new wordlist chopping off any learned words that weren't loaded. As this is a rare bug I just re-uploaded 2.03 rather than making a new version (since I just uploaded 2.03 anyway).

SoLong&Thx4AllTheFish
  • Members
  • 4999 posts
  • Last active:
  • Joined: 27 May 2007
I suggest to also apply the wlen + 2 logic to skip words from the wordlist.txt, so change line 765
IF ( StrLen(addword) <= LearnLength ) ; don't add the word if it's not longer than the minimum learnlength


In general 2.02/2.03 seems a bit unreliable in the beginning on my system where I seem to need to type a few enters + words before it starts showing the tooltip, dunno why.

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009

I suggest to also apply the wlen + 2 logic to skip words from the wordlist.txt, so change line 765

IF ( StrLen(addword) <= LearnLength ) ; don't add the word if it's not longer than the minimum learnlength


In general 2.02/2.03 seems a bit unreliable in the beginning on my system where I seem to need to type a few enters + words before it starts showing the tooltip, dunno why.


I was wondering if I wanted to change that, but I'm not sure yet. I'll think about it.
(edit) I think my worries are these:
A. if someone wants to put a wlen+1 word in the list, what's the problem?
B. if, such as in my case, someone has their non-learned words set to a specific set of words (such as keywords in a programming language), we would not want the program to filter out what should be a valid word.

I haven't had that issue... did you change the size of your wordlist or something? Remember it takes 5-10 seconds to load wordlists that are about 1 MB in size. Can you watch your CPU usage? AHK cpu usage will pretty much zero out when the list is loaded.

nitrox
  • Members
  • 6 posts
  • Last active: Feb 02 2010 09:44 AM
  • Joined: 15 Jan 2010
I tried this application and i was able to get suggesting but when i press tab key it doesn't enter the one for which i pressed. I have also tried number keys and also ctrl + enter. Any ideas? Other autohotkey scripts work without any problem. Typing aid 1.x works without any problem

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009

I tried this application and i was able to get suggesting but when i press tab key it doesn't enter the one for which i pressed. I have also tried number keys and also ctrl + enter. Any ideas? Other autohotkey scripts work without any problem. Typing aid 1.x works without any problem


The number keys don't even work? I have no idea what might be causing that.... When you hit the number key does the suggestion box disappear?

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009
2.04 is released:

*2.04 01/28/2010
** Lowered priority of the thread which checks for a changed window.
** Fixed bug causing tooltip to not appear above cursor when at the bottom of the screen.
** Added a new parameter to the preferences file to control the height of a line in the tooltip (in case you have changed the font size).
** Fixed bug causing the preferences file to be written to every time you exited when you had shown the Helper window once.
** Allow words with numbers and characters in ForceNewWordCharacters to be learned when you hit Ctrl-Shift-C.
** Implement full Unicode support for the UTF-8 character set when using AutoHotKeyU.
** Due to the UTF-8 support, learned words are now limited to 61 characters.

SoLong&Thx4AllTheFish
  • Members
  • 4999 posts
  • Last active:
  • Joined: 27 May 2007

I tried this application and i was able to get suggesting but when i press tab key it doesn't enter the one for which i pressed. I have also tried number keys and also ctrl + enter. Any ideas? Other autohotkey scripts work without any problem. Typing aid 1.x works without any problem

Could you try a few things

- start the script, exit it, start it again: does it work now?
- wait 10 seconds or so before typing to give it time to load the wordlist
- hitting the enter key a few times type something hit enter, sometimes it kicks in after a few enters/words

@maniac: I thought about using a traytip to show when the wordlist is entirely processed but didn't like it, perhaps use a small <!-- m -->http://www.autohotke... ... TextOn.htm<!-- m --> near the systray area for a second or so? Or you'd have to start use different icons to indicate the state of the script (not hard to do but you need icons)

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009
Hmm, I'll think about a notification for when the wordlist is loaded, seems like a good idea.

Are you still having issues with the script not working hugov?

SoLong&Thx4AllTheFish
  • Members
  • 4999 posts
  • Last active:
  • Joined: 27 May 2007
Haven't used it the last few days (trying to get the bloody caret position in FF and Thunderbird (see ask for help)) of course you can use a tooltip near the systray and not splashontext which would rely on winmove, silly of me to suggest splash (looks ugly too)...

Maniac
  • Members
  • 445 posts
  • Last active: Jan 06 2016 12:02 PM
  • Joined: 28 Aug 2009
I see, I hope you're able to figure out how to get that Caret position, thanks for trying to figure it out.

SoLong&Thx4AllTheFish
  • Members
  • 4999 posts
  • Last active:
  • Joined: 27 May 2007
Re: caret, getting closer with ACC <!-- m -->http://www.autohotke... ... 253#327253<!-- m --> it sees the dimensions of the control under the mouse cursor so it does see something, I only wish I knew what I was doing :-(