All Projects → shapr → Markovkeyboard

shapr / Markovkeyboard

Licence: bsd-3-clause
keyboard layout that changes by markov frequency

Projects that are alternatives of or similar to Markovkeyboard

Spacehammer
Hammerspoon config inspired by Spacemacs
Stars: ✭ 280 (-8.79%)
Mutual labels:  keyboard, emacs
Uncap
Map Caps Lock to Escape or any key to any key
Stars: ✭ 705 (+129.64%)
Mutual labels:  keyboard, emacs
Acejump
🅰️ single character search, select, and jump
Stars: ✭ 786 (+156.03%)
Mutual labels:  keyboard, emacs
React Hotkeys
React component to listen to keydown and keyup keyboard events, defining and dispatching keyboard shortcuts.
Stars: ✭ 279 (-9.12%)
Mutual labels:  keyboard
Zetteldeft
A Zettelkasten system! Or rather, some functions on top of the emacs deft package.
Stars: ✭ 284 (-7.49%)
Mutual labels:  emacs
Whc keyboardmanager
IOS lightweight keyboard manager, use simple and powerful, the keyboard will never block input controls. iOS平台轻量级的键盘管理器,使用简单功能强大,键盘再也不会挡住输入控件
Stars: ✭ 296 (-3.58%)
Mutual labels:  keyboard
Themecreator
https://mswift42.github.io/themecreator/ create themes for intellij, textmate, atom, emacs, vim and gnome terminal.
Stars: ✭ 303 (-1.3%)
Mutual labels:  emacs
Rg.el
Emacs search tool based on ripgrep
Stars: ✭ 277 (-9.77%)
Mutual labels:  emacs
Cider
The Clojure Interactive Development Environment that Rocks for Emacs
Stars: ✭ 3,229 (+951.79%)
Mutual labels:  emacs
Fountain Mode
Emacs major mode for screenwriting in Fountain plain-text markup
Stars: ✭ 288 (-6.19%)
Mutual labels:  emacs
Helm
Emacs incremental completion and selection narrowing framework
Stars: ✭ 3,109 (+912.7%)
Mutual labels:  emacs
Company Coq
A Coq IDE build on top of Proof General's Coq mode
Stars: ✭ 297 (-3.26%)
Mutual labels:  emacs
Emax64
64-bit Emacs for Windows with ImageMagick 7
Stars: ✭ 301 (-1.95%)
Mutual labels:  emacs
Rogue
Personal Emacs config
Stars: ✭ 286 (-6.84%)
Mutual labels:  emacs
Radian
🍉 Dotfiles that marry elegance and practicality.
Stars: ✭ 274 (-10.75%)
Mutual labels:  emacs
React Simple Keyboard
React Virtual Keyboard - Customizable, responsive and lightweight
Stars: ✭ 301 (-1.95%)
Mutual labels:  keyboard
Dotfiles
●📄 Ryan McGeary's configuration shiznit that makes him productive
Stars: ✭ 278 (-9.45%)
Mutual labels:  emacs
Helm Projectile
Helm UI for Projectile
Stars: ✭ 285 (-7.17%)
Mutual labels:  emacs
Vue Mode
Emacs major mode for vue.js
Stars: ✭ 290 (-5.54%)
Mutual labels:  emacs
Emacs Emojify
Display emojis in Emacs
Stars: ✭ 303 (-1.3%)
Mutual labels:  emacs

markovkeyboard

keyboard layout that changes by markov frequency

screenshot

the big idea

Static keyboard layouts are boring and predictable. Let's spice up the whole idea of keyboard layouts by having the layout CHANGE WHILE YOU ARE TYPING!

The layout will update itself to move the keys that most frequently come next to the home row. For example, if you type only "the" all day, then when you press the letter 't' the letter 'h' will be on the home row.

how do I type?

There are minor challenges involved if your keyboard layout could change with every keypress, thus this prototype is an emacs library that displays and updates the current layout with every keypress.

does it work?

Pretty much! It only remaps the letters from a-zA-Z, but it does work!

how do I make it go?

Use the pre-trained markov-all.el with M-x load-file then type in /path/to/markovkeyboard/markov-all.el

After that, use M-x set-input-method and choose markov-insanity-a or replace a with any letter you prefer!

If you want a different set of 26 keymaps:

Download a plain text file for training the markov chain, then run "python crunch_freqs.py filename.txt" and that will generate a markov-all.el file that you can use with M-x load-file .

how do I make it stop?

C-\ is bound to toggle-input-method in stock emacs, and the keybindings are all buffer local, so the code shouldn't make your life too difficult.

what needs to be done?

  • [X] define a new input-method for markov
  • [X] display the keyboard layout when enabling the mode
  • [ ] port to X11 to ease getting started
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].