{"id":18918866,"url":"https://github.com/justintanner/universal-emacs-keybindings","last_synced_at":"2025-06-21T20:05:12.443Z","repository":{"id":147469963,"uuid":"120794354","full_name":"justintanner/universal-emacs-keybindings","owner":"justintanner","description":"Use Emacs keybindings in all applications.","archived":false,"fork":false,"pushed_at":"2024-08-30T07:52:08.000Z","size":32,"stargazers_count":53,"open_issues_count":6,"forks_count":8,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-07T20:50:06.180Z","etag":null,"topics":["emacs","keybindings","keyboard-shortcuts"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/justintanner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-08T17:32:49.000Z","updated_at":"2025-03-29T04:07:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"1fa165a2-d7df-4cbd-bddd-da0981de1498","html_url":"https://github.com/justintanner/universal-emacs-keybindings","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/justintanner/universal-emacs-keybindings","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justintanner%2Funiversal-emacs-keybindings","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justintanner%2Funiversal-emacs-keybindings/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justintanner%2Funiversal-emacs-keybindings/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justintanner%2Funiversal-emacs-keybindings/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/justintanner","download_url":"https://codeload.github.com/justintanner/universal-emacs-keybindings/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/justintanner%2Funiversal-emacs-keybindings/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261186769,"owners_count":23121943,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["emacs","keybindings","keyboard-shortcuts"],"created_at":"2024-11-08T10:34:04.734Z","updated_at":"2025-06-21T20:05:07.418Z","avatar_url":"https://github.com/justintanner.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Universal Emacs Keybindings\n\nUse the Emacs keybindings you love across all applications for mac and windows. \n\n![example image](https://i.imgur.com/oTRCHVh.jpg)\n\n## Features\n\n* Ctrl-Space can be used to preform Emacs style text selection outside of Emacs\n* Supports Emacs prefix keys such as Ctrl-xs (save)\n* Allows you to specify app specific overrides (Google Chrome)\n* Apps with native Emacs keybindings are left alone\n* OS specific keybindings are left alone (alt+tab, ctrl+c, cmd+c, etc)\n\n## Update (August 29th 2024)\n\nOn Mac I've moved from Hammerspoon to Karabiner, I've left the legacy Hammerspoon script in the repo for reference.\n\nFor more information check out my [new blog post](https://jwtanner.com/posts/hammerspoon-to-karabiner/).\n\n## Installation for Mac\n\n1. Download and install [Karabiner-Elements](https://karabiner-elements.pqrs.org/)\n2. Select \"Universal Emacs Keybindings\" from [karabiner configurations](https://ke-complex-modifications.pqrs.org/)\n3. Enable the latest version in Karabiner\n\n## Installation for Windows\n\n1. Download and Install [AutoHotkey](https://autohotkey.com/)\n2. Launch `emacs_autohotkey.ahk` (notice the green system tray icon)\n3. Add `emacs_authotkey.ahk` to your Windows startup script. Checkout [this guide](https://www.maketecheasier.com/schedule-autohotkey-startup-windows/).\n\n### Original post\n\nI wrote a [blog post](https://jwtanner.com/posts/emacs-keybindings-to-rule-them-all/) laying out my reasons for developing these scripts.\n\n## Special thanks to the following scripts for inspiration:\n\n* https://gist.github.com/dulm/ee5ec47cfd2a71ded0e3841ee04e6ea3\n* https://github.com/usi3/emacs.ahk\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustintanner%2Funiversal-emacs-keybindings","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustintanner%2Funiversal-emacs-keybindings","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustintanner%2Funiversal-emacs-keybindings/lists"}