GithubHelp home page GithubHelp logo

cdisselkoen / kaleidoscope-macrosonthefly Goto Github PK

View Code? Open in Web Editor NEW
16.0 16.0 5.0 57 KB

Plugin for Kaleidoscope that allows you to record and play back macros on-the-fly.

License: GNU General Public License v3.0

Makefile 1.33% C++ 98.67%

kaleidoscope-macrosonthefly's People

Contributors

bjc avatar cdisselkoen avatar codelahoma avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

kaleidoscope-macrosonthefly's Issues

Playback (on fn-prog) of a slot whose key has something on its function layer causes problems

I've put record on prog and playback on fn-prog. Recording to slot "a" seems to work OK (the keys light up as I expect, and I get the green flash when finishing), but playback doesn't seem to do what I want.

So from start to end, I press prog, then a. The keys are lit up. I type hello and press prog again. The keys flash green. I then press fn-prog then a. Nothing happens. If I press a again now, the clipboard contents are pasted. I think this is because I have fn-a mapped to middle mouse button, which pastes the X selection contents. I can keep pressing a and it keeps pasting. I have to press and release fn, and then the keyboard acts normally again.

I tried recording to ' instead, and this worked just fine. I have nothing mapped to fn-'.

I get similar results to "a" when recording to any key which has something mapped on its function layer.

I imagine this is related to the issue with having the record key on the function layer.

Keyboard left in FN layer after playing a macro

I assigned my Key_MacroReq to FN-Butterfly. When I exit a recording I hit FN-Butterfly. I think when I go to leave a recording it has recorded the FN press as part of the recording, so I need to hit FN again to exit that layer.

To mitigate this, I just put the record key into the default layer.

Light up the slot being played back

When playing back a macro the playback button gets lit up, but I think it'd be nice if (especially when playing back via play-play) the slot being played back also got lit up.

Recording sequences including OneShot modifiers does not work correctly

If you attempt to record a keystroke sequence which uses a OneShot modifier (from Kaleidoscope-OneShot), the OneShot will not fire during playback. I'm not sure whether the problem is during recording (that it's not recorded), or during playback (that it's not played back). The problem occurs whether you 'tap' the OneShot, or whether you hold the OneShot - in either case, it will have no effect during playback.

Flashing is hard to initiate with prog mapped to record

With prog mapped to record, it's hard to re-flash, for which I need to hold prog and press enter, since doing so starts to record to the enter key, without actually sending enter!

I have to type prog, then any slot, then hold prog (which stops recording and flashes the keys green) and press enter.

I wonder whether anything can be done about this.

With record set to "prog", program mode activated on boot after flash

I have record set to the "prog" key. After flashing (which I have to initiate by holding prog of course) the keyboard starts up in macro programming mode. The first key I then press lights up white.

I'm not yet sure whether this is every time or just if I hold the key too long.

Fails to compile with newer firmware.

Given the documentation and a quick perusal of the source, it seems like this plugin is still using the old plugin API. Compile error is below:

ditto:~/Arduino/Model01-Firmware% make flash
BOARD_HARDWARE_PATH="/home/bjc/Arduino/hardware" /home/bjc/Arduino/hardware/keyboardio/avr/libraries/Kaleidoscope/bin//kaleidoscope-builder flash
Building output/Model01-Firmware/Model01-Firmware (0.0.0-gv1.22-26-ga99e-dirty) ...
/home/bjc/Arduino/hardware/keyboardio/avr/libraries/Kaleidoscope-MacrosOnTheFly/src/Kaleidoscope/FlashOverride.cpp: In member function 'void kaleidoscope::FlashOverride::begin()':
/home/bjc/Arduino/hardware/keyboardio/avr/libraries/Kaleidoscope-MacrosOnTheFly/src/Kaleidoscope/FlashOverride.cpp:42:16: error: 'class kaleidoscope::Kaleidoscope_' has no member named 'useLoopHook'
Kaleidoscope.useLoopHook(loopHook);
^
exit status 1
/home/bjc/Arduino/hardware/keyboardio/avr/build-tools/makefiles//rules.mk:72: recipe for target 'flash' failed
make: *** [flash] Error 1

Injected keys from SpaceCadet are not replayed

Hey!

I am using SpaceCadet and injected keys from SpaceCadet are not replayed, they are just ignored. I had the same problem with my plugin (https://github.com/christo-auer/Kaleidoscope-AdhocMacros) and solved it by registering SpaceCadet AFTER my plugin in the use-call. Also, SpaceCadet just issues a press event but not release event. In the normal Kaleidoscope loop, a release event is triggered each loop for injected keys.

I currently inject a release event manually for injected presses (not elegant, but it works for most cases). A more elegant solution maybe is to track which keys are pressed during recording but not released and then release then force releasing them after replay.

Great plugin!

Christopher

Shift press-release isn't recorded properly

I press MacroRec key and selecting slot A, I press down Shift, type LSHIFT all in capitals, and then release Shift. Then I stop the recording. When I replay this, I only get Lshift and not LSHIFT as I expect.

My macro record key is on Fn layer R key, if that means anything.

Nested macros don't work as advertised

The README states that while recording one macro, you can play back another, and later, playing back the first macro will include the correct key sequence from the second. This doesn't seem to work.

Fails to compile on macOS when added to KALEIDOSCOPE_INIT_PLUGINS

make works fine with the headers included and Key_MacroRec and Key_MacroPlay included in keymaps, but adding the plugin to KALEIDOSCOPE_INIT_PLUGINS results in this less than informative output:

BOARD_HARDWARE_PATH="/Users/rodk/Documents/Arduino/hardware" /Users/rodk/Documents/Arduino/hardware/keyboardio/avr/libraries/Kaleidoscope/bin//kaleidoscope-builder build-all
Building ./Model01-Firmware 0.0.0-g
02d9-dirty into /var/folders/8l/vm9r32j93z95bf5k0n85d96h0000gn/T//kaleidoscope-rodk/sketch/6353289-Model01-Firmware.ino/output...

make: *** [build-all] Error 1

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.