# HG changeset patch # User Richard M. Stallman # Date 1115716360 0 # Node ID 39b445ca202b0a454513b1112d5d209abecc56ec # Parent ad6e77659287ecf9d117e20f61bd8060341cd8df (ada-adjust-case-skeleton): Moved from ada-stmt.el. (ada-mode): Add ada-adjust-case-skeleton to skeleton-end-hook. diff -r ad6e77659287 -r 39b445ca202b lisp/progmodes/ada-mode.el --- a/lisp/progmodes/ada-mode.el Tue May 10 09:11:43 2005 +0000 +++ b/lisp/progmodes/ada-mode.el Tue May 10 09:12:40 2005 +0000 @@ -1364,6 +1364,11 @@ (add-hook 'local-write-file-hooks (lambda () (untabify (point-min) (point-max)))))) + (set (make-local-variable 'skeleton-further-elements) + '((< '(backward-delete-char-untabify + (min ada-indent (current-column)))))) + (add-hook 'skeleton-end-hook 'ada-adjust-case-skeleton nil t) + (run-hooks 'ada-mode-hook) ;; To be run after the hook, in case the user modified @@ -1393,6 +1398,13 @@ (if ada-auto-case (ada-activate-keys-for-case))) +(defun ada-adjust-case-skeleton () + "Adjust the case of the text inserted by a skeleton." + (save-excursion + (let ((aa-end (point))) + (ada-adjust-case-region + (progn (goto-char (symbol-value 'beg)) (forward-word -1) (point)) + (goto-char aa-end))))) ;; transient-mark-mode and mark-active are not defined in XEmacs (defun ada-region-selected ()