]> git.eshelyaron.com Git - emacs.git/commitdiff
(custom-newline): New function.
authorRichard M. Stallman <rms@gnu.org>
Wed, 16 Aug 2006 05:05:08 +0000 (05:05 +0000)
committerRichard M. Stallman <rms@gnu.org>
Wed, 16 Aug 2006 05:05:08 +0000 (05:05 +0000)
(custom-mode-map): Bind newline to custom-newline.

lisp/cus-edit.el

index 0493dd0894c93a81f3fdd57ff91cd1b9bcd6c270..609b5572a080f2f4fb62833dcc731539614d886c 100644 (file)
@@ -4436,6 +4436,7 @@ The format is suitable for use with `easy-menu-define'."
   (let ((map (make-keymap)))
     (set-keymap-parent map widget-keymap)
     (define-key map [remap self-insert-command] 'custom-no-edit)
+    (define-key map "\^m" 'custom-newline)
     (define-key map " " 'scroll-up)
     (define-key map "\177" 'scroll-down)
     (define-key map "\C-c\C-c" 'Custom-set)
@@ -4452,6 +4453,14 @@ The format is suitable for use with `easy-menu-define'."
   (interactive "@d")
   (error "You can't edit this part of the Custom buffer"))
 
+(defun custom-newline (pos &optional event)
+  "Invoke button at POS, or refuse to allow editing of Custom buffer."
+  (interactive "@d")
+  (let ((button (get-char-property pos 'button)))
+    (if button
+       (widget-apply-action button event)
+      (error "You can't edit this part of the Custom buffer"))))
+
 (easy-menu-define Custom-mode-menu
     custom-mode-map
   "Menu used in customization buffers."