all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Redefine "(" and ")" keys in every mode
@ 2009-01-03 15:31 TheLonelyStar
  2009-01-03 21:57 ` Drew Adams
  2009-01-04  0:01 ` Andy Stewart
  0 siblings, 2 replies; 5+ messages in thread
From: TheLonelyStar @ 2009-01-03 15:31 UTC (permalink / raw)
  To: Help-gnu-emacs


Hi,

I use the following functions (bellow) for redifine the insertions if ( and
).
The Idea is: When I type (, I want () inserted. When I type ) and the next
character is ), I want to just jump over it.

The Problem is: This works, as long as the mode I am in does not overwrite
the "(" or ")" key.
And, at the same time, when the mode overwrites this keys, it normaly has a
reason for it.

Has somebody an Idea how this can be done, so that it works in every mode?
Thanks!
Nathan

The functions:
-----------------------------------
(defun bracket (arg)
  (interactive "*P")
  (insert "()")
  (backward-char))
(define-key global-map (kbd "(") 'bracket)

;;Jump after character on insertion
(defun end-insertion (arg)
  (interactive "*p")
  (if (looking-at (concat "[\n \t]*" (this-command-keys))) (goto-char
(match-end 0)) (insert (this-command-keys)) (indent-according-to-mode))
)

(define-key global-map (kbd ")") 'end-insertion)
(define-key c-mode-base-map (kbd ")") 'end-insertion)
------------------------------
-- 
View this message in context: http://www.nabble.com/Redefine-%22%28%22-and-%22%29%22-keys-in-every-mode-tp21265910p21265910.html
Sent from the Emacs - Help mailing list archive at Nabble.com.





^ permalink raw reply	[flat|nested] 5+ messages in thread
[parent not found: <mailman.3849.1231013327.26697.help-gnu-emacs@gnu.org>]

end of thread, other threads:[~2009-01-05  2:26 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-03 15:31 Redefine "(" and ")" keys in every mode TheLonelyStar
2009-01-03 21:57 ` Drew Adams
2009-01-04  0:01 ` Andy Stewart
2009-01-04  0:19   ` Drew Adams
     [not found] <mailman.3849.1231013327.26697.help-gnu-emacs@gnu.org>
2009-01-05  2:26 ` Xah Lee

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.