Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's not part of emacs, I just wrote it as an example.


Oh, right. Sorry, hadn't had my coffee yet.

I tried doing exactly that, but used (interactive "kKey: "), with lowercase k, and it didn't work.


That seems to work also, what's the problem?


Didn't work correctly with a few slightly-more elaborate key combinations I tried. IIRC C-x M-. was one of them.

I much prefer formatting the keybindings like kbd uses, anyway - do you know offhand how to convert a keypress to that format w/out using C-h k?


Not offhand, but I looked it up and I think what you want is `key-description'. It prints key sequences, so e.g. (key-description "\370") evals to "M-x".


Bingo. Thanks.

This should do what the original commenter wanted:

    (defun insert-keybinding (k)
      "Insert code for a keybinding."
      (interactive "kKey sequence: ")
      (insert (concat "(global-set-key (kbd \""
    		  (key-description k)
    		  "\") 'function-name)")))




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: