Git Product home page Git Product logo

ke-complex_modifications's Introduction

Build Status License

KE-complex_modifications

complex_modifications for Karabiner-Elements.

https://ke-complex-modifications.pqrs.org/

Add rules

  1. Put a .rb (or .erb) template file into src/json. (Or put a .json file into public/json directly.)

  2. (Optional) Put extra description file into public/extra_descriptions.

  3. (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
    },
  4. Run make command on Terminal.
    If you've put .rb (or .erb) source file into src/json, formatted json file will be auto generated in the public/json/your_awesome_configuration.json.

    make

complex_modifications documents

Testing complex_modifications webpage on local server

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.)

Testing your own rules

  1. Copy a json file to ~/.config/karabiner/assets/complex_modifications.

    cp public/json/your_awesome_configuration.json ~/.config/karabiner/assets/complex_modifications
  2. Import rules from Karabiner-Elements Preferences. Karabiner-Elements Preferences > Complex Modifications > Rules > Add rule

How to publish your own rules

If you want to publish your own rules into complex_modification repository, follow this step.

  1. Fork this repository to your github account.
  2. Update or add new rules by following Add rules section. Don't forget to run make
  3. Stage modified files (git add) and commit it (git commit)

    NOTE : The make command will auto generate public/build/dist.json file. But do not stage public/build/dist.json file.
    (public/build/dist.json file is already ignored by .gitignore)

  4. Push to your forked repository.
  5. Click "New Pull Request" button, then the maintainer will review your commit.

Karabiner-Elements Usage

Import file from another site

  1. Put a json file to your site.
  2. Make a link karabiner://karabiner/assets/complex_modifications/import?url=<JSON_URL>.
  3. Open the link from web browser.

Updating the web application

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.

ke-complex_modifications's People

Contributors

alisonatwork avatar apm1467 avatar beermindnor avatar bingocaller avatar brunocbr avatar casamia918 avatar cnsunyour avatar dependabot[bot] avatar dominikmn avatar harmtemolder avatar hi-hai avatar jeebak avatar jgosmann avatar jjo avatar juonic avatar kamykaze avatar marlonrichert avatar paragbaxi avatar paulchiu avatar rastafabisch avatar riangray avatar ryuheechul avatar sourabhv avatar suliveevil avatar tct2k avatar tekezo avatar thooams avatar vinceau avatar vonng avatar yqrashawn avatar

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.