complex_modifications for Karabiner-Elements.
https://ke-complex-modifications.pqrs.org/
-
Put a JSON generator file (
.rb
,.erb
or.js
) into src/json. (Or put a.json
file directly into public/json directly.) -
(Optional) Update public/groups.json if you want to add your rules into specific category.
Add the following entry into
groups.json
.{ "path": "json/your_awesome_configuration.json", // required "extra_description_path": "extra_descriptions/your_awesome_configuration.html" // optional },
-
Run
make
command on Terminal.
If you've a generator file intosrc/json
, formatted json file will be auto generated in thepublic/json/your_awesome_configuration.json
.make
public/index.html
does not work properly if you open it via file://...
.
Launch a local web server by make server
in terminal and open http://localhost:8000.
(You can quit the local web server by the control-c
shortcut in terminal.)
Before run make server
, make sure you've run make
command to auto generate public/build/dist.json
file.
Karabiner-Elements cannot import the json from the local web server due to the no https connection between local web server.
Please import the json via file copy. (See Test your own rules.)
-
Copy a json file to
~/.config/karabiner/assets/complex_modifications
.cp public/json/your_awesome_configuration.json ~/.config/karabiner/assets/complex_modifications
-
Import rules from Karabiner-Elements Preferences.
Karabiner-Elements Preferences > Complex Modifications > Rules > Add rule
If you want to publish your own rules into complex_modification repository, follow this step.
- Fork this repository to your github account.
- Update or add new rules by following Add rules section. Don't forget to run
make
- Stage modified files (
git add
) and commit it (git commit
)
NOTE : Themake
command will auto generatepublic/build/dist.json
file. But do not stagepublic/build/dist.json
file.
(public/build/dist.json
file is already ignored by .gitignore)
- Push to your forked repository.
- Click "New Pull Request" button, then the maintainer will review your commit.
- Put a json file to your site.
- Make a link
karabiner://karabiner/assets/complex_modifications/import?url=<JSON_URL>
. - Open the link from web browser.
Note: You don't need to update the web application if you just want to add new json.
If you want to modify the web application, the source code is in src/react
.
Follow the instruction in src/react/README.md
.