Why is the hotkey I added with the keyboard module not working?
I am trying to add a hotkey with the keyboard module that will call a function with different arguments depending on the hotkey used. To do this Iam using the python3 keyboard module.
I am looking at the documentation here: https://pypi.org/project/keyboard/
I want my program to always be in something like a while True loop waiting for different hotkeys.
import keyboard
def hotkey_print(word):
print(word)
keyboard.add_hotkey('page up, page down', lambda: hotkey_print('did it work?'))
while True:
pass
I expect it to just wait and for it to print "did it work?" every time i press the up or down key but nothing happens when i use the hotkeys.
python-3.x input
add a comment |
I am trying to add a hotkey with the keyboard module that will call a function with different arguments depending on the hotkey used. To do this Iam using the python3 keyboard module.
I am looking at the documentation here: https://pypi.org/project/keyboard/
I want my program to always be in something like a while True loop waiting for different hotkeys.
import keyboard
def hotkey_print(word):
print(word)
keyboard.add_hotkey('page up, page down', lambda: hotkey_print('did it work?'))
while True:
pass
I expect it to just wait and for it to print "did it work?" every time i press the up or down key but nothing happens when i use the hotkeys.
python-3.x input
add a comment |
I am trying to add a hotkey with the keyboard module that will call a function with different arguments depending on the hotkey used. To do this Iam using the python3 keyboard module.
I am looking at the documentation here: https://pypi.org/project/keyboard/
I want my program to always be in something like a while True loop waiting for different hotkeys.
import keyboard
def hotkey_print(word):
print(word)
keyboard.add_hotkey('page up, page down', lambda: hotkey_print('did it work?'))
while True:
pass
I expect it to just wait and for it to print "did it work?" every time i press the up or down key but nothing happens when i use the hotkeys.
python-3.x input
I am trying to add a hotkey with the keyboard module that will call a function with different arguments depending on the hotkey used. To do this Iam using the python3 keyboard module.
I am looking at the documentation here: https://pypi.org/project/keyboard/
I want my program to always be in something like a while True loop waiting for different hotkeys.
import keyboard
def hotkey_print(word):
print(word)
keyboard.add_hotkey('page up, page down', lambda: hotkey_print('did it work?'))
while True:
pass
I expect it to just wait and for it to print "did it work?" every time i press the up or down key but nothing happens when i use the hotkeys.
python-3.x input
python-3.x input
asked Dec 28 '18 at 5:42
wawawewawawawewa
496
496
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
According to pypi one of the limitations of the keyboard library is that it should be run as root:
To avoid depending on X, the Linux parts reads raw device files (/dev/input/input*) but this requries root.
So you can either use su -
and become root, and run the python file again, or you can use another library (if any).
EDIT:
use the following line instead of your infinite loop:
# Block forever, like `while True`.
keyboard.wait()
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53954141%2fwhy-is-the-hotkey-i-added-with-the-keyboard-module-not-working%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
According to pypi one of the limitations of the keyboard library is that it should be run as root:
To avoid depending on X, the Linux parts reads raw device files (/dev/input/input*) but this requries root.
So you can either use su -
and become root, and run the python file again, or you can use another library (if any).
EDIT:
use the following line instead of your infinite loop:
# Block forever, like `while True`.
keyboard.wait()
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
add a comment |
According to pypi one of the limitations of the keyboard library is that it should be run as root:
To avoid depending on X, the Linux parts reads raw device files (/dev/input/input*) but this requries root.
So you can either use su -
and become root, and run the python file again, or you can use another library (if any).
EDIT:
use the following line instead of your infinite loop:
# Block forever, like `while True`.
keyboard.wait()
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
add a comment |
According to pypi one of the limitations of the keyboard library is that it should be run as root:
To avoid depending on X, the Linux parts reads raw device files (/dev/input/input*) but this requries root.
So you can either use su -
and become root, and run the python file again, or you can use another library (if any).
EDIT:
use the following line instead of your infinite loop:
# Block forever, like `while True`.
keyboard.wait()
According to pypi one of the limitations of the keyboard library is that it should be run as root:
To avoid depending on X, the Linux parts reads raw device files (/dev/input/input*) but this requries root.
So you can either use su -
and become root, and run the python file again, or you can use another library (if any).
EDIT:
use the following line instead of your infinite loop:
# Block forever, like `while True`.
keyboard.wait()
edited Dec 28 '18 at 10:00
answered Dec 28 '18 at 6:38
Meysam AzadMeysam Azad
13
13
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
add a comment |
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
running it is no problem. I use sudo /home/.../python3 myscript.py and it runs. but the hotkeys just don't work at all and i stay in the while Loop forever with nothing happening.
– wawawewa
Dec 28 '18 at 7:56
remove the while loop and add the following line:
keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
remove the while loop and add the following line:
keyboard.wait()
– Meysam Azad
Dec 28 '18 at 10:01
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53954141%2fwhy-is-the-hotkey-i-added-with-the-keyboard-module-not-working%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown