[GH-ISSUE #43] [Feature request] Screen Recorder - Capture keyboard input (shortcuts) #1409

Closed
opened 2026-03-01 18:45:16 +03:00 by kerem · 21 comments
Owner

Originally created by @KrzysztofKarol on GitHub (Dec 3, 2016).
Original GitHub issue: https://github.com/NickeManarin/ScreenToGif/issues/43

Originally assigned to: @NickeManarin on GitHub.

Option to capture keyboard input shortcuts (eg. CTRL +A, CTRL + D) and add it to frame.

The question is where to show it? Center, with opacity?

Originally created by @KrzysztofKarol on GitHub (Dec 3, 2016). Original GitHub issue: https://github.com/NickeManarin/ScreenToGif/issues/43 Originally assigned to: @NickeManarin on GitHub. Option to capture keyboard input shortcuts (eg. CTRL +A, CTRL + D) and add it to frame. The question is where to show it? Center, with opacity?
kerem 2026-03-01 18:45:16 +03:00
Author
Owner

@NickeManarin commented on GitHub (Dec 3, 2016):

I was thinking about recording the key strokes and giving the option to add as overlay with customizations.

<!-- gh-comment-id:264649953 --> @NickeManarin commented on GitHub (Dec 3, 2016): I was thinking about recording the key strokes and giving the option to add as overlay with customizations.
Author
Owner

@sirtet commented on GitHub (Jan 18, 2017):

Yes, this would be an awesome feature.
Recording mouse-clicks is already great, but keys are also quite important for tutorial-type recordings.

I'd like to show all key-presses with their duration:
eg. show key representations along the bottom of the screen. Show each key from the moment on it is pressed, add more keys next to it as combinations are pressed, remove each as the key is released.

<!-- gh-comment-id:273434150 --> @sirtet commented on GitHub (Jan 18, 2017): Yes, this would be an awesome feature. Recording mouse-clicks is already great, but keys are also quite important for tutorial-type recordings. I'd like to show all key-presses with their duration: eg. show key representations along the bottom of the screen. Show each key from the moment on it is pressed, add more keys next to it as combinations are pressed, remove each as the key is released.
Author
Owner

@sirtet commented on GitHub (Feb 4, 2017):

To reasonably show also very short key-presses, some kind of fade-effect would be needed, but i guess that's obvious for @NickeManarin, as you have already done this for the click-events?

PS:
Only left-clicks are currently recorded.
Even though seldom, some cases might need to indicate right-clicks too...

<!-- gh-comment-id:277444318 --> @sirtet commented on GitHub (Feb 4, 2017): To reasonably show also very short key-presses, some kind of fade-effect would be needed, but i guess that's obvious for @NickeManarin, as you have already done this for the click-events? PS: Only left-clicks are currently recorded. Even though seldom, some cases might need to indicate right-clicks too...
Author
Owner

@NickeManarin commented on GitHub (Feb 11, 2017):

@sirtet Yeah, that's a problem, but mouse clicks are recorded during each frame capture.

Also, if you press two keys between the capture of one frame, I have to show both keys

<!-- gh-comment-id:279147405 --> @NickeManarin commented on GitHub (Feb 11, 2017): @sirtet Yeah, that's a problem, but mouse clicks are recorded during each frame capture. Also, if you press two keys between the capture of one frame, I have to show both keys
Author
Owner

@NickeManarin commented on GitHub (Feb 15, 2017):

keys

Almost there...

<!-- gh-comment-id:279900100 --> @NickeManarin commented on GitHub (Feb 15, 2017): ![keys](https://cloud.githubusercontent.com/assets/14798947/22957818/16657dbe-f312-11e6-839b-cef463e7c9eb.gif) Almost there...
Author
Owner

@sirtet commented on GitHub (Feb 15, 2017):

great!

Some Ideas:
1.
Did you try to display bottom-left instead of centered?
I think it will be more readable, now characters are moving when more are pressed...
Having them left, they would only move if earlyer-pressed ones are released.
Or keys could maybe keep their position, leaving blanks for released keys? This would probably work for most cases, as pressing many keys at the same time is quite rare.

I would not comma-separate, but give them a background (same as mouse-click?).
Pressing the comma- key would currently look... how?
Pressing keys with longer names like ctrl would currently look how?

<!-- gh-comment-id:279977960 --> @sirtet commented on GitHub (Feb 15, 2017): great! Some Ideas: 1. Did you try to display bottom-left instead of centered? I think it will be more readable, now characters are moving when more are pressed... Having them left, they would only move if earlyer-pressed ones are released. Or keys could maybe keep their position, leaving blanks for released keys? This would probably work for most cases, as pressing many keys at the same time is quite rare. 2. I would not comma-separate, but give them a background (same as mouse-click?). Pressing the comma- key would currently look... how? Pressing keys with longer names like __ctrl__ would currently look how?
Author
Owner

@NickeManarin commented on GitHub (Feb 15, 2017):

Did you try to display bottom-left instead of centered?

There's a lot of options, like a Caption, + background. :)

Or keys could maybe keep their position, leaving blanks for released keys? This would probably work for most cases, as pressing many keys at the same time is quite rare.

Or make them go upwards? I think this could be an option.

I would not comma-separate, [...]

Nice! It needs to be customizable, so you could use any text as separator. This would enable the keys to go upwards by using a new line as separator. I also should add an option to block how many keys can appear at the same time.

but give them a background (same as mouse-click?).

This feature has the same properties as the Caption + a background option.

Pressing the comma- key would currently look... how?

Special keys are still being displayed as their internal names, such as Oemcomma. I have to fix this. Should be easy to convert to text. I'm not sure if someone would benefit from using the internal name instead.

Pressing keys with longer names like ctrl would currently look how?

Modifier keys are attached as their internal names too, with a '+' sign before the normal keys. I have to polish this too, to accept multiple modifiers.

<!-- gh-comment-id:279989235 --> @NickeManarin commented on GitHub (Feb 15, 2017): > Did you try to display bottom-left instead of centered? There's a lot of options, like a Caption, + background. :) > Or keys could maybe keep their position, leaving blanks for released keys? This would probably work for most cases, as pressing many keys at the same time is quite rare. Or make them go upwards? I think this could be an option. > I would not comma-separate, [...] Nice! It needs to be customizable, so you could use any text as separator. This would enable the keys to go upwards by using a new line as separator. I also should add an option to block how many keys can appear at the same time. > but give them a background (same as mouse-click?). This feature has the same properties as the Caption + a background option. > Pressing the comma- key would currently look... how? Special keys are still being displayed as their internal names, such as Oemcomma. I have to fix this. Should be easy to convert to text. I'm not sure if someone would benefit from using the internal name instead. > Pressing keys with longer names like ctrl would currently look how? Modifier keys are attached as their internal names too, with a '+' sign before the normal keys. I have to polish this too, to accept multiple modifiers.
Author
Owner

@NickeManarin commented on GitHub (Feb 18, 2017):

keys 1

keystrokes

I believe that's it.

<!-- gh-comment-id:280858823 --> @NickeManarin commented on GitHub (Feb 18, 2017): ![keys 1](https://cloud.githubusercontent.com/assets/14798947/23094999/f6224728-f5e9-11e6-88a3-4b23ebd694e0.gif) ![keystrokes](https://cloud.githubusercontent.com/assets/14798947/23095079/12214e32-f5eb-11e6-8f88-3aeacb60ba03.PNG) I believe that's it.
Author
Owner

@sirtet commented on GitHub (Feb 18, 2017):

Wow, looks nice.
I thought, that maybe it could be useful if there was a visible difference between the actual key press duration, and the added delay.
But that could be added later if really needed, right?

<!-- gh-comment-id:280859660 --> @sirtet commented on GitHub (Feb 18, 2017): Wow, looks nice. I thought, that maybe it could be useful if there was a visible difference between the actual key press duration, and the added delay. But that could be added later if really needed, right?
Author
Owner

@NickeManarin commented on GitHub (Feb 18, 2017):

Right now I'm not capturing the real duration of the key press, I'm just capturing the keys between frame number 1 and frame number 2.

With that in mind, I did start to implement a viewer/editor to view/edit the keys before applying. So, yes, possible and future feature.

<!-- gh-comment-id:280860503 --> @NickeManarin commented on GitHub (Feb 18, 2017): Right now I'm not capturing the real duration of the key press, I'm just capturing the keys between frame number 1 and frame number 2. With that in mind, I did start to implement a viewer/editor to view/edit the keys before applying. So, yes, possible and future feature.
Author
Owner

@yzhang-gh commented on GitHub (Jul 26, 2017):

Great work! 👍

Could you please add some filters such as "ignore single modifier key", "only capture key chords"?

And it could be better to add fade-effect, I guess that will decrease opacity per frame?

<!-- gh-comment-id:317919901 --> @yzhang-gh commented on GitHub (Jul 26, 2017): Great work! 👍 Could you please add some filters such as "ignore single modifier key", "only capture key chords"? And it could be better to add fade-effect, I guess that will decrease opacity per frame?
Author
Owner

@hughes commented on GitHub (Jan 5, 2018):

If you've landed on this issue from a google search and can't figure out how to use this feature:

  • you need at least version 2.8.1
  • you don't need to enable it before recording
  • just click "Key Strokes" on the Image tab after recording
<!-- gh-comment-id:355627418 --> @hughes commented on GitHub (Jan 5, 2018): If you've landed on this issue from a google search and can't figure out how to use this feature: - you need at least version 2.8.1 - you don't need to enable it before recording - just click "Key Strokes" on the Image tab after recording
Author
Owner

@kiewic commented on GitHub (Aug 13, 2019):

How to display the pressed keys should go into the FAQ page 😊

<!-- gh-comment-id:520983137 --> @kiewic commented on GitHub (Aug 13, 2019): How to display the pressed keys should go into the [FAQ page](https://github.com/NickeManarin/ScreenToGif/wiki/FAQ-%28Frequently-Asked-Questions%29) 😊
Author
Owner

@cavo789 commented on GitHub (Apr 29, 2020):

Hello guys

If I good understand keystroke recording is possible but I didn't find where. I've installed the very latest version of ScreenToGif (2.23.1) and, when starting the recording, I didn't find "Key Strokes" on the screen. Am I missing something ?

Thanks !

<!-- gh-comment-id:621466639 --> @cavo789 commented on GitHub (Apr 29, 2020): Hello guys If I good understand keystroke recording is possible but I didn't find where. I've installed the very latest version of ScreenToGif (2.23.1) and, when starting the recording, I didn't find "Key Strokes" on the screen. Am I missing something ? Thanks !
Author
Owner

@NickeManarin commented on GitHub (Apr 29, 2020):

@cavo789 Read the comment made by Hughes.

<!-- gh-comment-id:621480473 --> @NickeManarin commented on GitHub (Apr 29, 2020): @cavo789 Read the comment made by Hughes.
Author
Owner

@cavo789 commented on GitHub (Apr 30, 2020):

Hello

Better this morning... I've found where to make it happens.

Have read more than once the last comment of Hughes (thanks) but has missing the last and very important part: after recording

So, starting the recording already capture keystrokes.

But we need to "show" them once the recording has been ended. And, to do this, after recording we need to go to the Image tab, click on the Key Strokes and click on Apply to make key strokes visible on the captured gif.

Thanks NickeManarin.

(note: did't find in the FAQ how to, seems the page is missing)

<!-- gh-comment-id:621640189 --> @cavo789 commented on GitHub (Apr 30, 2020): Hello Better this morning... I've found where to make it happens. Have read more than once the last comment of Hughes (thanks) but has missing the last and very important part: **after recording** So, starting the recording already capture keystrokes. But we need to "show" them once the recording has been ended. And, to do this, **after recording** we need to go to the `Image` tab, click on the `Key Strokes` and click on `Apply` to make key strokes visible on the captured gif. Thanks NickeManarin. (note: did't find in the FAQ how to, seems the page is missing)
Author
Owner

@NickeManarin commented on GitHub (May 7, 2020):

@cavo789 Yes, the wiki is imcomplete.

<!-- gh-comment-id:625434179 --> @NickeManarin commented on GitHub (May 7, 2020): @cavo789 Yes, the wiki is imcomplete.
Author
Owner

@cavo789 commented on GitHub (May 7, 2020):

@NickeManarin Really no worries, your tool is really, really, really! nice and so much useful.

Now, I know where is the Keystrokes feature ;-)

Thank you Nicke.

<!-- gh-comment-id:625447228 --> @cavo789 commented on GitHub (May 7, 2020): @NickeManarin Really no worries, your tool is really, really, really! nice and so much useful. Now, I know where is the Keystrokes feature ;-) Thank you Nicke.
Author
Owner

@cool-delete commented on GitHub (Nov 16, 2021):

I tried to use the record keyboard button "Key Strokes" on the Image tab click Apply and then prompt

There 's No KeyStorkes on Your Recording.

os:win10 20H
version :2.34

<!-- gh-comment-id:969911093 --> @cool-delete commented on GitHub (Nov 16, 2021): I tried to use the record keyboard button "Key Strokes" on the Image tab click Apply and then prompt `There 's No KeyStorkes on Your Recording.` os:win10 20H version :2.34
Author
Owner

@NickeManarin commented on GitHub (Nov 28, 2021):

@cool-delete Were you typying into an application that was running as admin? Or perhaps some other uncommon application?

<!-- gh-comment-id:981175085 --> @NickeManarin commented on GitHub (Nov 28, 2021): @cool-delete Were you typying into an application that was running as admin? Or perhaps some other uncommon application?
Author
Owner

@cool-delete commented on GitHub (Dec 7, 2021):

@cool-delete Were you typying into an application that was running as admin? Or perhaps some other uncommon application?
yes ,as admin running app,whether Screer also needs to run as an admin?

<!-- gh-comment-id:987887011 --> @cool-delete commented on GitHub (Dec 7, 2021): > @cool-delete Were you typying into an application that was running as admin? Or perhaps some other uncommon application? yes ,as admin running app,whether Screer also needs to run as an admin?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ScreenToGif#1409
No description provided.