[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Find all commands bound to key prefix
From: |
Sébastien Vauban |
Subject: |
Re: Find all commands bound to key prefix |
Date: |
Fri, 04 Apr 2008 09:34:11 +0200 |
User-agent: |
Gnus/5.110007 (No Gnus v0.7) Emacs/23.0.60 (gnu/linux) |
Hello,
To add on Pascal's answer, if you want to see the bindings
attached to the function keys, here's a solution found on
http://www-xray.ast.cam.ac.uk/~gmorris/dotemacs.html (slightly
modified):
--8<---------------cut here---------------start------------->8---
;; print the key bindings in a tabular form
(defun my-keytable (arg)
"Print the key bindings in a tabular form."
(interactive "sEnter a modifier string:")
(with-output-to-temp-buffer "*Key table*"
(let* ((i 0)
(keys (list "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
"n"
"o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"
"<return>" "<down>" "<up>" "<right>" "<left>"
"<home>" "<end>" "<f1>" "<f2>" "<f3>" "<f4>" "<f5>"
"<f6>" "<f7>" "<f8>" "<f9>" "<f10>" "<f11>" "<f12>"
"1" "2" "3" "4" "5" "6" "7" "8" "9" "0"
"`" "~" "!" "@" "#" "$" "%" "^" "&" "*" "(" ")" "-"
"_"
"=" "+" "\\" "|" "{" "[" "]" "}" ";" "'" ":" "\""
"<" ">" "," "." "/" "?"))
(n (length keys))
(modifiers (list "" "S-" "C-" "M-" "M-C-"))
(k))
(or (string= arg "") (setq modifiers (list arg)))
(setq k (length modifiers))
(princ (format " %-10.10s |" "Key"))
(let ((j 0))
(while (< j k)
(princ (format " %-28.28s |" (nth j modifiers)))
(setq j (1+ j))))
(princ "\n")
(princ (format "_%-10.10s_|" "__________"))
(let ((j 0))
(while (< j k)
(princ (format "_%-28.28s_|"
"_______________________________"))
(setq j (1+ j))))
(princ "\n")
(while (< i n)
(princ (format " %-10.10s |" (nth i keys)))
(let ((j 0))
(while (< j k)
(let* ((binding
(key-binding (read-kbd-macro (concat (nth j modifiers)
(nth i keys)))))
(binding-string "_"))
(when binding
(if (eq binding 'self-insert-command)
(setq binding-string (concat "'" (nth i keys) "'"))
(setq binding-string (format "%s" binding))))
(setq binding-string
(substring binding-string 0 (min (length
binding-string) 28)))
(princ (format " %-28.28s |" binding-string))
(setq j (1+ j)))))
(princ "\n")
(setq i (1+ i)))
(princ (format "_%-10.10s_|" "__________"))
(let ((j 0))
(while (< j k)
(princ (format "_%-28.28s_|"
"_______________________________"))
(setq j (1+ j))))))
(delete-window)
(hscroll-mode)
(setq truncate-lines t))
--8<---------------cut here---------------end--------------->8---
Seb
--
Sébastien Vauban
- Re: Find all commands bound to key prefix, (continued)
- Re: Find all commands bound to key prefix, Peter Dyballa, 2008/04/04
- Re: Find all commands bound to key prefix, Tassilo Horn, 2008/04/04
- Re: Find all commands bound to key prefix, Peter Dyballa, 2008/04/04
- Message not available
- Re: Find all commands bound to key prefix, Alan, 2008/04/06
- RE: Find all commands bound to key prefix, Drew Adams, 2008/04/07
- Message not available
- Re: Find all commands bound to key prefix, rustom, 2008/04/04
- RE: Find all commands bound to key prefix, Drew Adams, 2008/04/04
Re: Find all commands bound to key prefix, rustom, 2008/04/03
Re: Find all commands bound to key prefix, Jens Teich, 2008/04/05