|
| 1 | +# Better Create Effect |
| 2 | + |
| 3 | +Reason has been my DAW of choice for a long time, but although I love it to pieces it has some shortcomings in the keyboard shortcut department. Specifically, the interfaces for creating devices rely heavily on the mouse, which isn't particularly efficient and can be limited by your mouse or trackpad precision. |
| 4 | + |
| 5 | +I was inspired by Ableton's easy Command-F search function, so I designed this Keyboard Maestro macro that emulates that. |
| 6 | + |
| 7 | +[vid goes here] |
| 8 | + |
| 9 | +The JXA script `getPluginDb.scpt` searches the Reason menus to find every device listed in Reason, which is then output as JSON. The JSON is accessed by the HTML prompt from Keyboard Maestro, which allows for autocompletion in the search prompt. |
| 10 | + |
| 11 | +The macro also keeps track of how many times you add a device, so your most used devices will filter to the top of your search results for easier use. |
| 12 | + |
| 13 | +## Setup |
| 14 | + |
| 15 | +Start by cloning the github repo to your machine: |
| 16 | + |
| 17 | +```shell |
| 18 | +git clone https://github.com/ebai101/better-create-effect.git |
| 19 | +``` |
| 20 | + |
| 21 | +You'll need to generate the database first. Make sure you have assistive access for Terminal enabled in System Preferences > Security & Privacy > Privacy: |
| 22 | + |
| 23 | +Once that's done, run these commands: |
| 24 | + |
| 25 | +```shell |
| 26 | +cd /path/to/better-create-effect |
| 27 | +osascript getPluginDb.scpt > plugin_db.json |
| 28 | +``` |
| 29 | + |
| 30 | +This will create the file `plugin_db.json` which contains metadata on every device available to Reason (including the built in devices). |
| 31 | + |
| 32 | +Now you can import the macro into Keyboard Maestro. At the top of the macro, you'll need to set the variable `BCEFolderLocation` to the absolute path of your better-create-effect folder: |
| 33 | + |
| 34 | + |
| 35 | + |
| 36 | +Once this is done, you can set the hotkey and try it out! |
| 37 | + |
| 38 | +## Troubleshooting |
| 39 | + |
| 40 | +### The window's too big/too small/in the wrong place: |
| 41 | + |
| 42 | +In `create-effect.html` the dimensions of the window are set on line 10: |
| 43 | + |
| 44 | +```html |
| 45 | +<body data-kmwindow="360,200,1200,390"> |
| 46 | +``` |
| 47 | + |
| 48 | +The `data-kmwindow` tag is in the format "left, top, width, height". This is set up for a 1080p monitor, so you might need different options. You can also specify it as "width, height". |
| 49 | + |
| 50 | +### Error when running `osascript` |
| 51 | + |
| 52 | +If you already tried enabling assistive access for Terminal, and that didn't work, you can run it in Script Editor. Make sure assistive access is enabled for Script Editor, then open `getPluginDb.scpt` and run it. Copy the output in the Results pane, then paste that into a TextEdit document (or another text editor) and save the file as `plugin_db.json` in the better-create-object directory. |
0 commit comments