Strange that I did not run into these issues, I use GNU emacs as well,
version 22.0.50.1, so presumably a difference in the versions. C-c C-f
is not bound to TeX-font for me, which is odd. Sorry about the
cell/cells issue, I renamed the function just before sending it. Of
course it is ok to put it on the wiki (and thank you for doing that),
the code can be used and altered entirely according to anyone's taste.
Johan
2006/4/20, Sanjoy Mahajan
Great. Mojca suggested that I wikify my Emacs lisp. It's now at http://wiki.contextgarden.net/Text_editor. Following that method ('a method is a trick I use twice.' --Polya), I've put your elisp there too -- hope that's okay. I removed the
(local-set-key "$" 'start-context-math)
so that your code can stand alone (in case people want one or the other).
I had to change a few things at the end (some maybe because I'm using GNU Emacs rather than XEmacs, not sure). Below is the diff and I've attached the resulting version. Most of the trouble was in the keybindings:
(local-set-key "\C-c\C-fc" 'context-insert-FLOW-cells)
doesn't work because C-c C-f is already defined as TeX-font, so it can't be a prefix as well. So I chose "\C-cnF". Also the function name needed an "s" at the end. These two:
(local-set-key "\C-cnn" 'context-insert-nattab) (local-set-key "\C-cnr" 'context-insert-nattab-row)
have a related problem, in that "\C-cn" is not a prefix yet, so "\C-cnn" and "\C-cnr" are not valid sequences. So I changed the first use of "\C-cn" as a prefix to use define-key(), which seems to make a prefix-map automatically as I eventually learnt by inspecting tex.el. So:
(define-key (current-local-map) "\C-cnF" 'context-insert-FLOW-cells) Then the following local-set-key's work. As I say, this is on Emacs 21.4, and the tricks may be different on XEmacs.
-Sanjoy
--- a/tables.el 2006-04-20 10:46:16.000000000 -0400 +++ b/tables.el 2006-04-20 10:43:41.000000000 -0400 @@ -1,5 +1,5 @@ (defun context-insert-nattab (rows columns) - ;; Johan Sandblom 060128 + ;; Johan Sandblom 2006-01-28 "Insert a TABLE skeleton" (interactive "nNumber of rows: \nnNumber of columns: \n") (newline) @@ -44,8 +44,8 @@ (newline) (backward-char 5))
-(defun context-insert-FLOW-cell (n) - ;; Johan Sandblom 060128 +(defun context-insert-FLOW-cells (n) + ;; Johan Sandblom 2006-01-28 "Insert a FLOWchart cell" (interactive "nNumber of cells: \n") (newline) @@ -62,8 +62,7 @@
(add-hook 'ConTeXt-mode-hook '(lambda () - (local-set-key "\C-c\C-fc" 'context-insert-FLOW-cells) + (define-key (current-local-map) "\C-cnF" 'context-insert-FLOW-cells) (local-set-key "\C-cnr" 'context-insert-nattab-row) (local-set-key "\C-cnc" 'context-insert-nattab-column) - (local-set-key "\C-cnn" 'context-insert-nattab) - (local-set-key "$" 'start-context-math))) + (local-set-key "\C-cnn" 'context-insert-nattab)))
-- Johan Sandblom N8, MRC, Karolinska sjh t +46851776108 17176 Stockholm m +46735521477 Sweden "What is wanted is not the will to believe, but the will to find out, which is the exact opposite" - Bertrand Russell