/keyamp

Keyboard Amplifier

Primary LanguageEmacs Lisp

Keyamp

Input model based on Keyamp for Emacs.

Keyboard Layouts

  • ANSI keyboard
  • Virtual keyboard
  • Split keyboard

ANSI keyboard

screenshots/ansi-keyboard.png

brew tap xEgorka/emacsmacport
brew install emacs-mac --with-natural-title-bar --with-native-comp
defaults write org.gnu.Emacs TransparentTitleBar DARK
defaults write org.gnu.Emacs HideDocumentIcon YES

screenshots/desktop.png

screenshots/desktop2.png

Titlebar

(when (display-graphic-p)
  (setq display-time-default-load-average nil
        battery-mode-line-format "%b%p%%   "
        display-time-format "%a %e %b %R"
        ns-use-proxy-icon nil
        icon-title-format t)
  (setq frame-title-format
        (list (make-string 200 ?\t) 'battery-mode-line-string 'display-time-string))
  (display-battery-mode)
  (display-time-mode))

Modeline in minibuffer

(setq-default mode-line-format   nil
              header-line-format nil
              minibuffer-line-format
              (list " "
               ;; mode indicator
               '(:eval (propertize mode-line-front-space
                                   'face 'modeline-front-space))
               " "
               ;; buffer name
               '(:eval (propertize (mode-line-buffer-name)
                                   'face
                                   (if (and (buffer-modified-p) (buffer-file-name))
                                       'font-lock-string-face-buf-name
                                     'font-lock-builtin-face-buf-name)
                                   'help-echo
                                   (buffer-file-name)))
               ;; vc branch
               '(:eval (propertize (mode-line-vc) 'face 'font-lock-type-face))
               ;; align right spacer
               '(:eval (propertize
                        " " 'display
                        `((space :align-to
                                 (- (+ right right-fringe right-margin)
                                    1
                                    ,(+ (length (mode-line-buffer-position))))))))
               ;; position in buffer
               '(:eval (propertize (mode-line-buffer-position)
                                   'face 'font-lock-builtin-face))))

Virtual keyboard

Emacs in pocket with unicode support. Termius client. Custom keyboard.

Custom

Preferences

  • Set terminal and keyboard coding system to utf-8:
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)

screenshots/virtual-keyboard.png

screenshots/virtual-keyboard2.png

  • Emacs in tmux over mosh - instant remote access
mosh-server new -s -c 256 -l LANG=en_US.UTF-8 -- tmux -u new -As0 'emacs'

Split keyboard

screenshots/advantage2.png