3027 |
(save-excursion (indent-line-to indent)) |
(save-excursion (indent-line-to indent)) |
3028 |
(indent-line-to indent))))) |
(indent-line-to indent))))) |
3029 |
|
|
3030 |
|
;; Derived from cfengine.el. |
3031 |
|
(defun gdb-script-beginning-of-defun () |
3032 |
|
"`beginning-of-defun' function for Gdb script mode. |
3033 |
|
Treats actions as defuns." |
3034 |
|
(unless (<= (current-column) (current-indentation)) |
3035 |
|
(end-of-line)) |
3036 |
|
(if (re-search-backward "^define \\|^document " nil t) |
3037 |
|
(beginning-of-line) |
3038 |
|
(goto-char (point-min))) |
3039 |
|
t) |
3040 |
|
|
3041 |
|
;; Derived from cfengine.el. |
3042 |
|
(defun gdb-script-end-of-defun () |
3043 |
|
"`end-of-defun' function for Gdb script mode. |
3044 |
|
Treats actions as defuns." |
3045 |
|
(end-of-line) |
3046 |
|
(if (re-search-forward "^end" nil t) |
3047 |
|
(beginning-of-line) |
3048 |
|
(goto-char (point-max))) |
3049 |
|
t) |
3050 |
|
|
3051 |
;;;###autoload |
;;;###autoload |
3052 |
(add-to-list 'auto-mode-alist '("/\\.gdbinit" . gdb-script-mode)) |
(add-to-list 'auto-mode-alist '("/\\.gdbinit" . gdb-script-mode)) |
3053 |
|
|
3060 |
(set (make-local-variable 'imenu-generic-expression) |
(set (make-local-variable 'imenu-generic-expression) |
3061 |
'((nil "^define[ \t]+\\(\\w+\\)" 1))) |
'((nil "^define[ \t]+\\(\\w+\\)" 1))) |
3062 |
(set (make-local-variable 'indent-line-function) 'gdb-script-indent-line) |
(set (make-local-variable 'indent-line-function) 'gdb-script-indent-line) |
3063 |
|
(set (make-local-variable 'beginning-of-defun-function) |
3064 |
|
#'gdb-script-beginning-of-defun) |
3065 |
|
(set (make-local-variable 'end-of-defun-function) |
3066 |
|
#'gdb-script-end-of-defun) |
3067 |
(set (make-local-variable 'font-lock-defaults) |
(set (make-local-variable 'font-lock-defaults) |
3068 |
'(gdb-script-font-lock-keywords nil nil ((?_ . "w")) nil |
'(gdb-script-font-lock-keywords nil nil ((?_ . "w")) nil |
3069 |
(font-lock-syntactic-keywords |
(font-lock-syntactic-keywords |