Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pqrs-org/Karabiner-Elements
Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later.
https://github.com/pqrs-org/Karabiner-Elements
keyboard macos
Last synced: 3 months ago
JSON representation
Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later.
- Host: GitHub
- URL: https://github.com/pqrs-org/Karabiner-Elements
- Owner: pqrs-org
- License: unlicense
- Created: 2016-07-11T04:57:55.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2024-04-14T00:32:29.000Z (10 months ago)
- Last Synced: 2024-04-15T00:13:10.671Z (10 months ago)
- Topics: keyboard, macos
- Language: C++
- Homepage: https://pqrs.org/osx/karabiner/
- Size: 103 MB
- Stars: 17,854
- Watchers: 209
- Forks: 814
- Open Issues: 1,004
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
- Security: SECURITY.md
Awesome Lists containing this project
- open-source-mac-os-apps - Karabiner-Elements - Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later. ![cpp_icon] ![objective_c_icon] (Applications / Keyboard)
- awesome-opensource-macOS - Karabiner-Elements
- open-source-mac-os-apps - Karabiner-Elements - Karabiner-Elements is a powerful utility for keyboard customization on macOS Sierra (10.12) or later. ![cpp_icon] ![objective_c_icon] (Applications / Keyboard)
- awesome-star-libs - pqrs-org / Karabiner-Elements
- awesome-starred-test - pqrs-org/Karabiner-Elements - Karabiner-Elements is a powerful tool for customizing keyboards on macOS (C++)
- my-awesome-starred - pqrs-org/Karabiner-Elements - Karabiner-Elements is a powerful tool for customizing keyboards on macOS (C++)
- stars - pqrs-org/Karabiner-Elements - Elements is a powerful tool for customizing keyboards on macOS (HarmonyOS / Windows Manager)
README
[![Build Status](https://github.com/pqrs-org/Karabiner-Elements/workflows/Karabiner-Elements%20CI/badge.svg)](https://github.com/pqrs-org/Karabiner-Elements/actions)
[![License](https://img.shields.io/badge/license-Public%20Domain-blue.svg)](https://github.com/pqrs-org/Karabiner-Elements/blob/main/LICENSE.md)# Karabiner-Elements
Karabiner-Elements is a powerful key remapper for macOS.
## Download
You can download Karabiner-Elements from the [official site](https://karabiner-elements.pqrs.org/).
Alternatively, for users of [homebrew](https://brew.sh/), Karabiner-Elements may be installed with `brew install --cask karabiner-elements`.
### Old releases
You can download previous versions of Karabiner-Elements from [here](https://karabiner-elements.pqrs.org/docs/releasenotes/).
## Supported systems
- macOS 15 Sequoia
- Both Intel-based Macs and Apple Silicon Macs
- macOS 14 Sonoma
- Both Intel-based Macs and Apple Silicon Macs
- macOS 13 Ventura
- Both Intel-based Macs and Apple Silicon Macs## Usage
Documentation can be found here:
## Donations
If you would like to contribute financially to the development of Karabiner-Elements, donations can be made via
---
## For developers
### How to build
System requirements to build Karabiner-Elements:
- macOS 13+
- Xcode 15.0.1+
- Command Line Tools for Xcode (`xcode-select --install`)
- xz (`brew install xz`)
- [XcodeGen](https://github.com/yonaskolb/XcodeGen) (`brew install xcodegen`)
- CMake (`brew install cmake`)#### Steps
1. Get source code by executing the following command in Terminal.app.
```shell
git clone --depth 1 https://github.com/pqrs-org/Karabiner-Elements.git
cd Karabiner-Elements
git submodule update --init --recursive --depth 1
```2. (Optional) If you have a codesign identity:
1. Find your codesign identity.
```shell
security find-identity -p codesigning -v | grep 'Developer ID Application'
```The result is as follows.
```text
1) 8D660191481C98F5C56630847A6C39D95C166F22 "Developer ID Application: Fumihiko Takayama (G43BCU2T37)"
```Your codesign identity is `8D660191481C98F5C56630847A6C39D95C166F22` in the above case.
2. Set environment variable to use your codesign identity.
```shell
export PQRS_ORG_CODE_SIGN_IDENTITY=8D660191481C98F5C56630847A6C39D95C166F22
```3. Find your codesign identity for installer signing.
```shell
security find-identity -p basic -v | grep 'Developer ID Installer'
```The result is as follows.
```text
1) C86BB5F7830071C7B0B07D168A9A9375CC2D02C5 "Developer ID Installer: Fumihiko Takayama (G43BCU2T37)"
```Your codesign identity is `C86BB5F7830071C7B0B07D168A9A9375CC2D02C5` in the above case.
4. Set environment variable to use your codesign identity for installer signing.
```shell
export PQRS_ORG_INSTALLER_CODE_SIGN_IDENTITY=C86BB5F7830071C7B0B07D168A9A9375CC2D02C5
```3. Build a package by executing the following command in Terminal.app.
```shell
make package
```The `make` script will create a redistributable **Karabiner-Elements-VERSION.dmg** in the current directory.
#### Note about pre-built binaries in the source tree
Karabiner-Elements uses some pre-built binaries in the source tree.
- `src/vendor/Karabiner-DriverKit-VirtualHIDDevice/dist/Karabiner-DriverKit-VirtualHIDDevice-*.pkg` (the latest one)
- `Sparkle.framework` in `src/apps/SettingsWindow/`The above `make package` command does not rebuild these binaries.
(These binaries will be copied in the distributed package.)If you want to rebuild these binaries, you have to build them manually.
Please follow the instruction of these projects.