Giter Club home page Giter Club logo

Comments (3)

HyperMadSan avatar HyperMadSan commented on August 16, 2024 2

I had a similar problem where I wanted to map multiple hotkeys of my IDE (SAP ABAP editor) to the crown.
My solution was to create a generic plugin that allows you to define tools/tooloptions and assign hotkeys to those tools/tooloptions using a JSON file.
The plugin program runs in the background and launches virtual key stroke(s) when the user turns/releases the crown, depending on the menu context.
By naming the plugin executable the same as the target program the plugin is also activated when the target program gets focus. This way it is possible to create plugins for multiple programs, each with its own set of crown tools/tooloptions mapped to hotkeys.

image

from logi_craft_sdk.

markusd1984 avatar markusd1984 commented on August 16, 2024

I had a similar problem where I wanted to map multiple hotkeys of my IDE (SAP ABAP editor) to the crown.
My solution was to create a generic plugin that allows you to define tools/tooloptions and assign hotkeys to those tools/tooloptions using a JSON file.
The plugin program runs in the background and launches virtual key stroke(s) when the user turns/releases the crown, depending on the menu context.
By naming the plugin executable the same as the target program the plugin is also activated when the target program gets focus. This way it is possible to create plugins for multiple programs, each with its own set of crown tools/tooloptions mapped to hotkeys.

image

Thanks for sharing, interesting. The screenshot is that the also example of the plugin or just to demo the custom overlay menu?

Can you share the plugin example please?

from logi_craft_sdk.

HyperMadSan avatar HyperMadSan commented on August 16, 2024

Thanks for sharing, interesting. The screenshot is that the also example of the plugin or just to demo the custom overlay menu?

Can you share the plugin example please?

That screenshot is from the actual plugin being used in the target program (wfica32.exe).
You can find the plugin code (Visual Studio project) here: https://github.com/HyperMadSan/Craft.git. There is no documentation as this plugin was intended for personal use only.

What you need to do is create a subfolder in folder resources. That subfolder must have the same name as your target program and contains the guid.json file and guid folder but also a tooloptions.json file. It's this tooloptions.json file that has the virtual key mapping.
You can assign a hotkey (combination of keys e.g. ctrl+s), actual keystrokes or both. For instance, in SAP I can open a new window using ctrl+N and then type a transaction name and press enter. This can be mapped to a single tool option.
A tool option can have single option or multiple options. With a single tool option, the virtual key(s) are pressed when the crown is turned. With multiple tool options you cycle through the options by turning the crown and the virtual keys are pressed when you release the crown.
Please see the wfica32 folder for a working example. Do not use the saplogon folder as this contains obsolete data and will not work.

After building the solution you must copy the guid folder to LogiOptionsPlugins and install the profile in Logitech Options (as described in SDK). You can then start your executable and it will run in background (you will see it in task manager). If you named your executable the same as the target program, the plugin will become active when you use the target program.

Let me know if you need additional info/help.

from logi_craft_sdk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.