change emoji key to ctrl in Microsoft designer keyboard with autohotkey - keyboard

A few days ago I bought Microsoft designer keyboard
https://www.microsoft.com/en-us/d/microsoft-designer-compact-keyboard/8zhrtr7zcswq?activetab=pivot:overviewtab
it has emoji key but it's not useful at all... so I decide to change it to ctrl and the only application that I think can do it is AutoHotkey
When I check view -> key history and script info and I press emoji key I can see all these lines added:
A2 01D d 3.08 LControl
A0 02A d 0.00 LShift
A4 038 d 0.00 LAlt
5B 15B d 0.02 LWin
20 039 d 0.00 Space
20 039 u 0.09 Space
A2 01D u 0.00 LControl
A0 02A u 0.00 LShift
A4 038 u 0.00 LAlt
5B 15B u 0.00 LWin
so I wrote this script but it's not working properly...
$~*<^<+<!<#space:: ; this line means: LControl+LShift+LAlt+LWin+Space
Send,{ctrl}
return
After running this script, every time I press the emoji key, Microsoft Office will be open. so this script is not working...
help me to get rid of this emoji key... I need the ctrl key.
please write if you know any other application or any other way that I can convert emoji key to ctrl`.

This looks like something you would be able to edit from Microsoft's Mouse and Keyboard software.
I personally have used it to remap the special keys on my Microsoft Comfort Curve Keyboard- it should be very similar for the other models of keyboards they manufacture.
Feel free to let me know if you need more specific instructions to change the function of the emoji keys to fit your needs.

Ok, seems your emoji key is implemented via sending Office Key+Space.
And the office key is implemented via the key combination LCtrl+LShift+LAlt+LWin.
Pressing (and releasing without any other keypress in-between) the office key alone takes you to https://www.office.com/?from=OfficeKey. You want to disable this behavior. Otherwise that website will get launched every time. Would make your remap pretty bad.
According to this answer, you can disable it via a registry change.
After that, you should be able to remap Office Key+Space to something better:
^+!#Space::MsgBox, % "Hello!"
To properly remap to Ctrl, you need to take the down & up events into consideration.
This might do it:
^+!#Space::SendInput, {Ctrl Down}
^+!#Space Up::SendInput, {Ctrl Up}
But really I'm not sure. I don't have an office key, so I'm reluctant to make that registry change and try go figure it out more.

for future visitors, I want to put the correct answer here because the correct answer is the combination of the two above answers thanks to 0x464e and spyre I can't say one the answers is the correct so I just vote up both posts.
first, we should download Microsoft's Mouse and Keyboard software and remap emoji key to application key (what is application key)
after that, we should add these lines of code to AutoHotKey
AppsKey::SendInput, {Ctrl Down}
AppsKey Up::SendInput, {Ctrl Up}
and now emoji key works exactly like ctrl and the combination like ctrl + a will select all the text.
thank the StackOverflow community. I can't imagine life without YOU.

I read all the answers and all the comments but the only thing that helped me to disable my Emoji key was this code:
AppsKey::SendInput, {Ctrl Down}
AppsKey Up::SendInput, {Ctrl Up}

Related

Keyboard key releasing on long press

recently I bought a wireless keyboard from Lidl:
SilverCrest
IAN 377704_2101 SPCC 2 A1
Model Nr.: HG08233A
Everything works great, but there's some setting that releases the button after it was being pressed for 22 sec. I know it's a time-related setting because I was playing with the key repetition setting and no matter how fast/slow it was typing(repeating the same key over and over), it stopped after 22.XX sec. (measured on my watch, so that's why .XX).
Has someone any idea how to turn that off, so the button stays pressed till I release it? It's making the keyboard useless for gaming.
Filter keys: OFF
Sticky keys: OFF
Toggle keys: OFF
I have one more wireless keyboard from ConnectIt and it doesn't have that issue, so it must be something drivers/settings related.
I wanted to use it as a replacement for my current ConnectIt keyboard, but the purpose is development (which is great for) and gaming (which is impossible due to key releases).
I've tried to look into registry, but I wasn't able to find anything.
Have a nice evening, and thanks for any ideas ;)

Applesoft Basic, how to hide the flashing cursor?

I’ve finally decided to build a monthly budget program for an Apple //e, coming along nicely. Right now I’m using the AppleWin emulator.
Anyone know how to hide the cursor in Applesoft Basic? I was thinking of either hiding it using a Poke or change the cursor character to a blank space?
I know that VisiCalc does this, when you load the program, there is no flashing cursor until you begin editing. I want to do this same feature in my program.
Note: I don’t want to do it through the emulator as I will eventually move this to Apple hardware.
I found a solution for this here. Terminal control/Hiding the cursor.
I was able to hide the cursor using the WAIT command, then grab the next character with GET.
WAIT 49152, 128
GET I$
More examples here: Applesoft Basic Examples
VisiCalc is written in assembly language, and so is Applesoft BASIC - and so is the firmware routine that Applesoft calls to get a key while flashing the cursor. You can read the keyboard without flashing the cursor from Applesoft or assembly language, but you need to learn the underlying soft-switches used to do this.
Name Hex Decimal Negative
KBD $C000 49152 -16384
KBDSTRB $C010 49168 -16368
In summary, you read KBD to get the value of the last key pressed. Bit 8 of that value (the 'strobe') will be set if it's a new key - in which case you need to subtract 128 to get the key value. You then access KBDSTRB to clear the strobe bit of KBD. For more details I refer you to page 5 of the Apple II Reference Manual or page 12 of the Apple IIe Technical Reference Manual.
Another good book which talks about this and many other things is The New Apple II User's Guide.
Here's a simple example of how to use these soft-switches:
10 KEY = PEEK (-16384) : REM READ KEY
20 IF KEY >= 128 THEN PRINT PEEK (-16368) : REM CLEAR STROBE
30 GOTO 10
Finally, consider visiting Retrocomputing for these kinds of questions.
Original answer:
There is a undocumented way to do this on Apple IIe
POKE 2043, ASC(" ") + 128
More info: https://www.atarimagazines.com/compute/issue90/Feedback_Custom_Cursor.php
Update
As #Nick Westgate said. This works for Apple IIc and not for Apple IIe.
More info: https://github.com/AppleWin/AppleWin/issues/135

Converting my Keyboards Hotkeys for Email, Browser, etc... into Media Control Keys

The new keyboard doesn't have keys for media control (the image on Amazon was small). I want to re-purpose the keys for e-mail, sleep, calculator, etc... into media control keys.
This is my keyboard:
Keyboard-Amazon
I've researched AutoHotKey and found that this is possible; however, I am not sure how to fully implement it. I cannot find any way to identify these keys to the program. I would be happy if you could tell me how to identify these keys to the program and how to get it to respond in the correct way. That is, next track and previous track selection.
Autohotkey has built in support for some multimedia keys.
Browser_Back
Browser_Forward
Browser_Refresh
Browser_Stop
Browser_Search
Browser_Favorites
Browser_Home
Volume_Mute
Volume_Down
Volume_Up
Media_Next
Media_Prev
Media_Stop
Media_Play_Pause
Launch_Mail
Launch_Media
Launch_App1
Launch_App2
Use them with a send command, example:
F11::Send,{Media_Play_Pause}
If you keyboard had special keys you will have to consult the documentation on that.

How do I write a simple program to show a notification when CAPS LOCK is pressed?

Forgive me if this is a silly question but I am a novice programmer, and I'm hoping there is a novice solution to this.
Is there any programming language that will quickly allow me to write a simple program to show a notification on Windows 7 when CAPS LOCK is pressed?
My laptop doesn't have an indicator light and I have no program on my computer to do so, although I'd be open to suggestions. The only partial solution I've found is through accessibility settings in Windows which plays a god-awful beep every time the key is pressed.
Thanks!
Try Auto Hotkey. It is a great program just for that. It runs scripts in the background that can directly manipulate your keyboards input.
I changed capslock to require ctrl+capslock to work otherwise pressing capslock by itself does nothing :)
You can also do a bunch of other things. You are able to set a custom tone for when you push capslock (however a simple popup or key remapping would probably be best).
Here's an example from the site:
"Capslock::Ctrl Makes Capslock become a Control key. To retain the ability to turn Capslock on and off, also add the remapping +Capslock::Capslock (this toggles Capslock on and off when you hold down the shift key and press Capslock)."

Simulating pressing the mute/volume up/volume down keys in Linux

I've read up on the internet about how to simulate keypresses on the keyboard in the X window system. So far, I've got a program, written in C, that works at sending key events from the traditional keys on the keyboard. However, I can't figure out a way to simulate someone pressing the keyboard's mute/volume up/volume down keys.
This may not even be possible to do with the XKeyEvent structure I used for the previous key presses, since I didn't find anything remotely close in the keysymdef.h file, and I think that those events are delivered to the host OS rather than each individual window.
I've also fired up xev and it didn't give me very much helpful output (or at least any that I could decipher).
Does anyone have any tips on where I should look?
Try with keycode 123 keysym 269025043 for volume up (xF86XK_AudioRaiseVolume)
and Keycode 122 keysym 269025041 (xF86XK_AudioLowerVolume), hope that helps

Resources