quickbuttons plain text entry
Moderators: Dorian (MJT support), JRL
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Actually this is different to the quickbuttons issue. QuickButtons sends the text as all lower case - it is ignoring case. Macro Scheduler does NOT ignore case but what is sent will be effected by the caps lock. This is because Macro Scheduler simulates sending keystrokes and therefore it must do what would happen if a user typed those keys. Therefore if caps lock is OFF the text would be sent exactly as it is shown. If ON it would reverse case. So all you actually need to do is ensure you have a CapsOff statement at the start of the script. Then what is sent will appear exactly as written in the script.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
-
- Automation Wizard
- Posts: 1101
- Joined: Fri Jan 07, 2005 5:55 pm
- Location: Somewhere else on the planet
That's not my exactly experience, it appears to respect the caps key, and sends either all upper, or all lower case. Here are two pushes of the qbutton into notepad, one with caps lock off, one with caps lock on:mtettmar wrote:Actually this is different to the quickbuttons issue. QuickButtons sends the text as all lower case - it is ignoring case.
But hasn't the coder already simulated exactly what would happen if the user typed those keys by storing the text in the macro in the correct case?Macro Scheduler does NOT ignore case but what is sent will be effected by the caps lock. This is because Macro Scheduler simulates sending keystrokes and therefore it must do what would happen if a user typed those keys.
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Yes, that's what I meant - either all lower or all caps.Me_again wrote:That's not my exactly experience, it appears to respect the caps key, and sends either all upper, or all lower case. Here are two pushes of the qbutton into notepad, one with caps lock off, one with caps lock on:
Only if he/she has also considered the caps state and the status of the modifier keys.But hasn't the coder already simulated exactly what would happen if the user typed those keys by storing the text in the macro in the correct case?
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
-
- Automation Wizard
- Posts: 1101
- Joined: Fri Jan 07, 2005 5:55 pm
- Location: Somewhere else on the planet
OK, clearly you have something in mind from your global view of the use of the program that I've not run across in my personal use of it.
As a minumum could I suggest that the Help be updated to reflect this behavior and to include the full* work around code?
*By full I mean checking the caps status, and returning to that status at the end of the macro.
As a minumum could I suggest that the Help be updated to reflect this behavior and to include the full* work around code?
*By full I mean checking the caps status, and returning to that status at the end of the macro.
- Bob Hansen
- Automation Wizard
- Posts: 2475
- Joined: Tue Sep 24, 2002 3:47 am
- Location: Salem, New Hampshire, US
- Contact:
Maybe I am missing something, but I believe no change is needed in Macro Scheduler. It does exactly as expected, it simulates a keyboard operator.
If you press CapsLock or release it, then you get UPPERCASE or lowercase characters.
If you PRESS SHIFT key then you get UPPERCASE until you RELEASE SHIFT, then you will get lowercase.
And if you have pressed CAPSLOCK and forgot to check the status, then you will get UPPERCASE, you can then PRESS BACKSPACE, release capslock and reenter the text, just as an operator at the keyboard would do.
I see no need to modify Help, and don't understand why a "work around" is needed for a non-existent problem.
If you press CapsLock or release it, then you get UPPERCASE or lowercase characters.
If you PRESS SHIFT key then you get UPPERCASE until you RELEASE SHIFT, then you will get lowercase.
And if you have pressed CAPSLOCK and forgot to check the status, then you will get UPPERCASE, you can then PRESS BACKSPACE, release capslock and reenter the text, just as an operator at the keyboard would do.
I see no need to modify Help, and don't understand why a "work around" is needed for a non-existent problem.
Hope this was helpful..................good luck,
Bob
A humble man and PROUD of it!
Bob
A humble man and PROUD of it!
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
Use BlockInput and set the caps state in the script so that you know the outcome and can prevent the user interfering.
Or use the Ascii command. With the Ascii command you are outputting specific characters based on their ascii value, rather than sending keystrokes. Therefore you have complete control over the output. E.g. the following will always output "aAbYtT".
Ascii>97,65,98,89,116,84
Or use SetControlText to set the text of the control _directly_ and avoid mimicing user input altogether.
Or use the Ascii command. With the Ascii command you are outputting specific characters based on their ascii value, rather than sending keystrokes. Therefore you have complete control over the output. E.g. the following will always output "aAbYtT".
Ascii>97,65,98,89,116,84
Or use SetControlText to set the text of the control _directly_ and avoid mimicing user input altogether.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
I'm looking into the possibility of adding the suggested "SK_IGNORECAPS" option. I think we may have to briefly toggle shift state if caps is on and it must be ignored. BlockInput is still sensible since someone could hold down the shift key while the macro is running and effect the case.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
Hi Marcus,mtettmar wrote:I'm looking into the possibility of adding the suggested "SK_IGNORECAPS" option. I think we may have to briefly toggle shift state if caps is on and it must be ignored. BlockInput is still sensible since someone could hold down the shift key while the macro is running and effect the case.
Just wondering what you found with the "SK_IGNORECAPS" option? Was it workable? Did you go with briefly toggling shift state if caps is on and it must be ignored? Or did you do the equivalent, send the opposite case of the character instead? (advantage being that no toggling is required)
I'm quite hopeful on this one; we have lots of users that tend to leave their Caps Lock on so this would really simplify things.
Thanks
P.S. Greatly enjoying testing beta 9.0.023
jpuziano
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
- Marcus Tettmar
- Site Admin
- Posts: 7395
- Joined: Thu Sep 19, 2002 3:00 pm
- Location: Dorset, UK
- Contact:
It transparently toggles shift case if caps is on - which is the same thing as sending opposite case. Seems to work. Will be in beta 024 to try.
Marcus Tettmar
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
http://mjtnet.com/blog/ | http://twitter.com/marcustettmar
Did you know we are now offering affordable monthly subscriptions for Macro Scheduler Standard?
That's great, thanks....mtettmar wrote:It transparently toggles shift case if caps is on - which is the same thing as sending opposite case. Seems to work. Will be in beta 024 to try.
jpuziano
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Hi Marcus and everyone,
I installed 9.0.024 beta to test the new SK_IGNORECAPS system variable. The new Help text for "Send Character/Text (Send)" says:
I used this simple macro to output a continuous string of capital I's:
I set the macro to trigger on Hot Hey F11, opened up Notepad, hit F11 and while the I's streamed out, manually pressed and released the Shift and Caps Lock keys. I found out two interesting things:
1) When Caps Lock was manually switched from Off to On, some i's were produced, averaging between 20 to 30 on my system, then it compensated and the rest were all proper capital I's.
However, going the other way, when Caps Lock was manually switched from On to Off, it compensated instantly! All proper capital I's every time, I couldn't make it fail. I'm wondering if the routine could be tweaked to compensate for Off-to-On just as fast as On-to-Off seems to work?
2) The SHIFT key actually makes no difference. I removed the Let>SK_IGNORECAPS=1 line, ran the macro and manually pressed and released SHIFT while it ran. It always produced I's, rock solid. It seems that (under XP anyway) the output of the Send> command is unaffected by SHIFT so the Help text for Send>...
Also, I tried the free version of QuickButtons and I now see what webber123456 means. Its currently not possible to program a "QuickButton" to send mixed case text, just ALL UPPER or all lower depending on the current state of Caps Lock. This is too bad bad since players may want to send mixed case text in certain games, text containing Proper Names for instance. Ideally, it would output the text exactly as intended regardless of the state of Caps Lock; we all know that's possible, just look at what we can now do with Macro Scheduler and SK_IGNORECAPS.
Thanks again Marcus for providing the great new SK_IGNORECAPS solution so quickly and all the other helpful forum contributors.
I installed 9.0.024 beta to test the new SK_IGNORECAPS system variable. The new Help text for "Send Character/Text (Send)" says:
So I added...Note that this command sends keystrokes and therefore any keys sent will be subject to the current state of modifier keys and the caps lock key. To ignore the caps lock state and send the text as entered set SK_IGNORECAPS to 1. (Let>SK_IGNORECAPS=1).
- Let>SK_IGNORECAPS=1
- - check Caps Lock state
- save Caps Lock state
- then before macro ends, restoring Caps Lock state
- BlockInput>1
I used this simple macro to output a continuous string of capital I's:
Note: There are actually hundreds of I's in that one line but I shortened it here to avoid horizontal scrolling on this forum post.Let>SK_IGNORECAPS=1
Send Character/Text>IIIIIIIIIIIIIIIIIII
I set the macro to trigger on Hot Hey F11, opened up Notepad, hit F11 and while the I's streamed out, manually pressed and released the Shift and Caps Lock keys. I found out two interesting things:
1) When Caps Lock was manually switched from Off to On, some i's were produced, averaging between 20 to 30 on my system, then it compensated and the rest were all proper capital I's.
However, going the other way, when Caps Lock was manually switched from On to Off, it compensated instantly! All proper capital I's every time, I couldn't make it fail. I'm wondering if the routine could be tweaked to compensate for Off-to-On just as fast as On-to-Off seems to work?
2) The SHIFT key actually makes no difference. I removed the Let>SK_IGNORECAPS=1 line, ran the macro and manually pressed and released SHIFT while it ran. It always produced I's, rock solid. It seems that (under XP anyway) the output of the Send> command is unaffected by SHIFT so the Help text for Send>...
...may be missleading if SHIFT is considered a "modifier key" here.Note that this command sends keystrokes and therefore any keys sent will be subject to the current state of modifier keys and the caps lock key.
Also, I tried the free version of QuickButtons and I now see what webber123456 means. Its currently not possible to program a "QuickButton" to send mixed case text, just ALL UPPER or all lower depending on the current state of Caps Lock. This is too bad bad since players may want to send mixed case text in certain games, text containing Proper Names for instance. Ideally, it would output the text exactly as intended regardless of the state of Caps Lock; we all know that's possible, just look at what we can now do with Macro Scheduler and SK_IGNORECAPS.
Thanks again Marcus for providing the great new SK_IGNORECAPS solution so quickly and all the other helpful forum contributors.
jpuziano
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Hi Marcus,
I noticed a new version of QuickButtons, version 1.6, came out some time after the above post so I just tried it.
I was curious to see if it could now send MiXeD cAsE tExT and was glad to see it could.
If you add the following lines to a button...
Thanks for this new version Marcus.
I noticed a new version of QuickButtons, version 1.6, came out some time after the above post so I just tried it.
I was curious to see if it could now send MiXeD cAsE tExT and was glad to see it could.
If you add the following lines to a button...
- {shift+upper}
lower
Thanks for this new version Marcus.
Last edited by jpuziano on Sun Nov 12, 2006 9:31 am, edited 1 time in total.
jpuziano
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -
Note: If anyone else on the planet would find the following useful...
[Open] PlayWav command that plays from embedded script data
...then please add your thoughts/support at the above post -