Skip to content

Instantly share code, notes, and snippets.

@railwaycat
Created August 28, 2012 13:43
Show Gist options
  • Star 60 You must be signed in to star a gist
  • Fork 8 You must be signed in to fork a gist
  • Save railwaycat/3498096 to your computer and use it in GitHub Desktop.
Save railwaycat/3498096 to your computer and use it in GitHub Desktop.
meta key switch
;; Keybonds
(global-set-key [(hyper a)] 'mark-whole-buffer)
(global-set-key [(hyper v)] 'yank)
(global-set-key [(hyper c)] 'kill-ring-save)
(global-set-key [(hyper s)] 'save-buffer)
(global-set-key [(hyper l)] 'goto-line)
(global-set-key [(hyper w)]
(lambda () (interactive) (delete-window)))
(global-set-key [(hyper z)] 'undo)
;; mac switch meta key
(defun mac-switch-meta nil
"switch meta between Option and Command"
(interactive)
(if (eq mac-option-modifier nil)
(progn
(setq mac-option-modifier 'meta)
(setq mac-command-modifier 'hyper)
)
(progn
(setq mac-option-modifier nil)
(setq mac-command-modifier 'meta)
)
)
)
@hisnawi
Copy link

hisnawi commented Mar 1, 2020

I am sorry, but how do you use this?
I included the contents of the file in the beginning of this thread in my setup but I still can't have them swapped.
I am on Catalina by the way. I am also using terminal mode (emacs -nw)

@railwaycat
Copy link
Author

@hisnawi This setup does not work for emacs -nw, since it is your terminal emulator(iTerm2, Terminal.app etc) who controls the cmd and option key behavior.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment