I am using a python program that is activate when pressing Caps Lock key and I want to be able to turn on/off the caps lock status when the program is active.
I trie
Use sendkeys to change the status and keyboardleds to change the LED indicators.
From another SO dicussion:
import SendKeys
SendKeys.SendKeys("""
{CAPSLOCK}
{SCROLLOCK}
{NUMLOCK}
""")
This package seems to work only for POSIX (which is OK if you're using Ubuntu), and you can read more here.
On Linux:
import fcntl
import os
KDSETLED = 0x4B32
console_fd = os.open('/dev/console', os.O_NOCTTY)
# Turn on caps lock
fcntl.ioctl(console_fd, KDSETLED, 0x04)
# Turn off caps lock
fcntl.ioctl(console_fd, KDSETLED, 0)
Source: Benji York - Stack Overflow: Change keyboard locks in Python
On Windows:
You should be able to use SendKeys for this, as in the following example:
import SendKeys
SendKeys.SendKeys("""
{CAPSLOCK}
""")