Could a Stream Deck be used with Gramps to facilitate data entry?

I observed how a friend uses a Stream Deck to help with point-of-sale data entry by interacting with apps on his computer, and it made me wonder if it could be used to help with data entry in Gramps.

I would not want to simply add another input device; finding the optimum balance between keyboard and mouse is already challenging. Rather, the idea would be make the Stream Deck a “smarter” form of data entry. The buttons could change with the context of the application (just as the GUI menus do), but also in response to the data being viewed or entered. In any case, the attached scripts or code should also reduce the total number of manual (keyboard, mouse, button) interactions, otherwise it’s just adding to the workload rather than reducing it

I understand that Stream Deck is for Windows and Mac, but I think there are some open source Linux tools as well (maybe Stream-Pi?).

For Mac, there’s a Stream Deck plugin for OSA language scripts, and it also works with the Shortcuts app in Monterrey (hence my other recent post with a question about upgrading).

I don’t have a Stream Deck, but I did verify that a one-line AppleScript will cause Gramps to come to the foreground:

activate application “Gramps-5.1.4-2”

so I assume I could use the aforementioned plugin to attach the script (or an equivalent Shortcut in Monterrey) to a button on a Stream Deck. That’s the extent of my proof-of-concept.

My question is what else could be done (whether with scripts, Shortcuts, or other programming). How might they interact with Gramps?

Of course, this need not be limited to Gramps; maybe some of the buttons on the deck could interface with other programs that people are using in combination with Gramps. And it need not be for data entry purposes; that’s just a sample use case.


Sometime ago I’d tried Deck Board (Android and Windows) but I don’t have found a great interest.

May be it’s possible to combine its keys to automate clicking actions to switch from one gramps category to another (people, places…), or add an object of these categories, I never tried.

Some alternatives, including open source:

1 Like

With further experimentation, I find that the Gramps application “is not scriptable” as far as AppleScript is concerned. I wonder, is it due to an inherent limitation of the GTK GUI, or something else?

Thanks to a post by @emyoulation in a different thread, here’s an example use case:

Now imagine a single script (on a Mac it would be AppleScript, on Windows or Linux something else, I don’t know what) that does all of this: select all, copy, switch to Word, open new document, paste. And the script is attached to a button on the deck. One click on the gramplet, then push the button.

Even without the use of dedicated hardware like a Stream Deck, it would be nice if Gramps were “scriptable” like other apps.