---
title: "Introducing ShortWatcher: Show your keyboard magic while presenting"
url: "https://osherove.com/blog/2007/5/27/introducing-shortwatcher-show-your-keyboard-magic-while-pres.md"
canonical: "https://osherove.com/blog/2007/5/27/introducing-shortwatcher-show-your-keyboard-magic-while-pres.html"
published: "2007-05-27T23:56:38"
updated: "2007-05-27T23:56:38"
tags: []
author: "Roy Osherove"
description: "Update : There is a new version of this tool , which has been renamed to \"Key Jedi\". More information here . -------------------------------------------- This is a quick a dirty solution to something we thought about…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# Introducing ShortWatcher: Show your keyboard magic while presenting

By Roy Osherove May 27, 2007

**Historical article** · Originally published May 27, 2007; technical details may be outdated.

**Update**: There is [a new version of this tool](http://weblogs.asp.net/rosherove/archive/2007/06/03/train-to-be-a-keyboard-master-with-keyboard-jedi.aspx), which has been renamed to "Key Jedi". [More information here](http://weblogs.asp.net/rosherove/archive/2007/06/03/train-to-be-a-keyboard-master-with-keyboard-jedi.aspx).

\--------------------------------------------

This is a quick a dirty solution to something we thought about during DevTeach.

Wouldn't it be cool if there was a tool that would show in real time any shortcut keys that were pressed in your favorite application? that way, in your presentations and screencasts, people could follow up on your important keystrokes and learn how to use keyboard-power-tools such as Resharper.

- Please [see the NEW Version announcement](http://weblogs.asp.net/rosherove/archive/2007/06/03/train-to-be-a-keyboard-master-with-keyboard-jedi.aspx) for download details.
- ~_So I made ShortcutWatcher._~ [~_You can download it from here_~](http://files.osherove.com/downloads/shortwatch10.zip) ~_(34k)._~
- ~_There is a second version that will capture keystrokes in **all applications**._~ [~_here it is_~](http://files.osherove.com/downloads/shortwatch10All.zip)~_._~

It uses a global keyhook and a lot of code is borrowed [from this CodeProject article](http://www.codeproject.com/csharp/GlobalSystemHook.asp). Also, this tool will only show shortcuts when Visual Studio is active, with a [little code borrowed from here](http://www.c-sharpcorner.com/UploadFile/satisharveti/ActiveApplicationWatcher01252007024921AM/ActiveApplicationWatcher.aspx).

My main work was to create a simple state class that knows when a shortcut has been pressed with a regular key, not just regular keystrokes.

- You can control the opacity
- it's hard coded for visual studio only , unless you download the "all" version above
- ~should I make a version that listens to all applications?~


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
