diff options
| author | Masatake YAMATO | 2005-10-05 17:20:04 +0000 |
|---|---|---|
| committer | Masatake YAMATO | 2005-10-05 17:20:04 +0000 |
| commit | 20ef86730cca82a1a2e212a665c0b119ed2d70b2 (patch) | |
| tree | 06f94faa397f0352562f61fd6b064df73442a36d | |
| parent | 21c3ef84cc73ded6aa4882afe3e93bc7bd81aca7 (diff) | |
| download | emacs-20ef86730cca82a1a2e212a665c0b119ed2d70b2.tar.gz emacs-20ef86730cca82a1a2e212a665c0b119ed2d70b2.zip | |
2005-10-06 Masatake YAMATO <jet@gyve.org>
* progmodes/gdb-ui.el (gdb-info-breakpoints-custom): Put
`font-lock-function-name-face'.
(gdb-info-frames-custom): Put `font-lock-function-name-face'
and `font-lock-variable-name-face'
(gdb-registers-font-lock-keywords): New font lock keywords definition.
(gdb-registers-mode): Use `gdb-registers-font-lock-keywords`.
(gdb-memory-font-lock-keywords): New font lock keywords definition.
(gdb-memory-mode): Use `gdb-memory-font-lock-keywords'.
(gdb-local-font-lock-keywords): New font lock keywords definition.
(gdb-locals-mode): Use `gdb-local-font-lock-keywords'
(gdb-threads-font-lock-keywords): New font lock keywords definition.
(gdb-threads-mode): Use `gdb-threads-font-lock-keywords'.
| -rw-r--r-- | lisp/ChangeLog | 15 | ||||
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 78 |
2 files changed, 85 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index a9d8a3923d6..4e1ffe963d1 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,18 @@ | |||
| 1 | 2005-10-06 Masatake YAMATO <jet@gyve.org> | ||
| 2 | |||
| 3 | * progmodes/gdb-ui.el (gdb-info-breakpoints-custom): Put | ||
| 4 | `font-lock-function-name-face'. | ||
| 5 | (gdb-info-frames-custom): Put `font-lock-function-name-face' | ||
| 6 | and `font-lock-variable-name-face' | ||
| 7 | (gdb-registers-font-lock-keywords): New font lock keywords definition. | ||
| 8 | (gdb-registers-mode): Use `gdb-registers-font-lock-keywords`. | ||
| 9 | (gdb-memory-font-lock-keywords): New font lock keywords definition. | ||
| 10 | (gdb-memory-mode): Use `gdb-memory-font-lock-keywords'. | ||
| 11 | (gdb-local-font-lock-keywords): New font lock keywords definition. | ||
| 12 | (gdb-locals-mode): Use `gdb-local-font-lock-keywords' | ||
| 13 | (gdb-threads-font-lock-keywords): New font lock keywords definition. | ||
| 14 | (gdb-threads-mode): Use `gdb-threads-font-lock-keywords'. | ||
| 15 | |||
| 1 | 2005-10-05 Stefan Monnier <monnier@iro.umontreal.ca> | 16 | 2005-10-05 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 17 | ||
| 3 | * progmodes/scheme.el (scheme-mode-syntax-table): Mark ; as being | 18 | * progmodes/scheme.el (scheme-mode-syntax-table): Mark ; as being |
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index 6c960c4c5d5..c8d99dbe3e2 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -1337,8 +1337,11 @@ static char *magick[] = { | |||
| 1337 | (setq bptno (match-string 1)) | 1337 | (setq bptno (match-string 1)) |
| 1338 | (setq flag (char-after (match-beginning 2))) | 1338 | (setq flag (char-after (match-beginning 2))) |
| 1339 | (beginning-of-line) | 1339 | (beginning-of-line) |
| 1340 | (if (re-search-forward " in .* at\\s-+" nil t) | 1340 | (if (re-search-forward " in \\(.*\\) at\\s-+" nil t) |
| 1341 | (progn | 1341 | (progn |
| 1342 | (let ((buffer-read-only nil)) | ||
| 1343 | (add-text-properties (match-beginning 1) (match-end 1) | ||
| 1344 | '(face font-lock-function-name-face))) | ||
| 1342 | (looking-at "\\(\\S-+\\):\\([0-9]+\\)") | 1345 | (looking-at "\\(\\S-+\\):\\([0-9]+\\)") |
| 1343 | (let ((line (match-string 2)) (buffer-read-only nil) | 1346 | (let ((line (match-string 2)) (buffer-read-only nil) |
| 1344 | (file (match-string 1))) | 1347 | (file (match-string 1))) |
| @@ -1531,17 +1534,31 @@ static char *magick[] = { | |||
| 1531 | (defun gdb-info-frames-custom () | 1534 | (defun gdb-info-frames-custom () |
| 1532 | (with-current-buffer (gdb-get-buffer 'gdb-stack-buffer) | 1535 | (with-current-buffer (gdb-get-buffer 'gdb-stack-buffer) |
| 1533 | (save-excursion | 1536 | (save-excursion |
| 1534 | (let ((buffer-read-only nil)) | 1537 | (let ((buffer-read-only nil) |
| 1538 | bl el) | ||
| 1535 | (goto-char (point-min)) | 1539 | (goto-char (point-min)) |
| 1536 | (while (< (point) (point-max)) | 1540 | (while (< (point) (point-max)) |
| 1537 | (add-text-properties (line-beginning-position) (line-end-position) | 1541 | (setq bl (line-beginning-position) |
| 1542 | el (line-end-position)) | ||
| 1543 | (add-text-properties bl el | ||
| 1538 | '(mouse-face highlight | 1544 | '(mouse-face highlight |
| 1539 | help-echo "mouse-2, RET: Select frame")) | 1545 | help-echo "mouse-2, RET: Select frame")) |
| 1540 | (beginning-of-line) | 1546 | (goto-char bl) |
| 1541 | (when (and (looking-at "^#\\([0-9]+\\)") | 1547 | (when (looking-at "^#\\([0-9]+\\)") |
| 1542 | (equal (match-string 1) gdb-frame-number)) | 1548 | (if (equal (match-string 1) gdb-frame-number) |
| 1543 | (put-text-property (line-beginning-position) (line-end-position) | 1549 | (put-text-property bl el 'face '(:inverse-video t)) |
| 1544 | 'face '(:inverse-video t))) | 1550 | (when (re-search-forward " in \\([^ ]+\\) (" el t) |
| 1551 | (put-text-property (match-beginning 1) (match-end 1) | ||
| 1552 | 'face font-lock-function-name-face) | ||
| 1553 | (setq bl (match-end 0)) | ||
| 1554 | (while (re-search-forward "<\\([^>]+\\)>" el t) | ||
| 1555 | (put-text-property (match-beginning 1) (match-end 1) | ||
| 1556 | 'face font-lock-function-name-face)) | ||
| 1557 | (goto-char bl) | ||
| 1558 | (while (re-search-forward "\\(\\(\\sw\\|[_.]\\)+\\)=" el t) | ||
| 1559 | (put-text-property (match-beginning 1) (match-end 1) | ||
| 1560 | 'face font-lock-variable-name-face)) | ||
| 1561 | ))) | ||
| 1545 | (forward-line 1)))))) | 1562 | (forward-line 1)))))) |
| 1546 | 1563 | ||
| 1547 | (defun gdb-stack-buffer-name () | 1564 | (defun gdb-stack-buffer-name () |
| @@ -1648,6 +1665,14 @@ static char *magick[] = { | |||
| 1648 | (define-key map [mouse-2] 'gdb-threads-select) | 1665 | (define-key map [mouse-2] 'gdb-threads-select) |
| 1649 | map)) | 1666 | map)) |
| 1650 | 1667 | ||
| 1668 | (defvar gdb-threads-font-lock-keywords | ||
| 1669 | '( | ||
| 1670 | (") +\\([^ ]+\\) (" (1 font-lock-function-name-face)) | ||
| 1671 | ("in \\([^ ]+\\) (" (1 font-lock-function-name-face)) | ||
| 1672 | ("\\(\\(\\sw\\|[_.]\\)+\\)=" (1 font-lock-variable-name-face)) | ||
| 1673 | ) | ||
| 1674 | "Font lock keywords used in `gdb-threads-mode'.") | ||
| 1675 | |||
| 1651 | (defun gdb-threads-mode () | 1676 | (defun gdb-threads-mode () |
| 1652 | "Major mode for gdb frames. | 1677 | "Major mode for gdb frames. |
| 1653 | 1678 | ||
| @@ -1657,6 +1682,8 @@ static char *magick[] = { | |||
| 1657 | (setq mode-name "Threads") | 1682 | (setq mode-name "Threads") |
| 1658 | (setq buffer-read-only t) | 1683 | (setq buffer-read-only t) |
| 1659 | (use-local-map gdb-threads-mode-map) | 1684 | (use-local-map gdb-threads-mode-map) |
| 1685 | (set (make-local-variable 'font-lock-defaults) | ||
| 1686 | '(gdb-threads-font-lock-keywords)) | ||
| 1660 | (run-mode-hooks 'gdb-threads-mode-hook) | 1687 | (run-mode-hooks 'gdb-threads-mode-hook) |
| 1661 | 'gdb-invalidate-threads) | 1688 | 'gdb-invalidate-threads) |
| 1662 | 1689 | ||
| @@ -1702,6 +1729,12 @@ static char *magick[] = { | |||
| 1702 | (define-key map "q" 'kill-this-buffer) | 1729 | (define-key map "q" 'kill-this-buffer) |
| 1703 | map)) | 1730 | map)) |
| 1704 | 1731 | ||
| 1732 | (defvar gdb-registers-font-lock-keywords | ||
| 1733 | '( | ||
| 1734 | ("^[^ ]+" . font-lock-variable-name-face) | ||
| 1735 | ) | ||
| 1736 | "Font lock keywords used in `gdb-registers-mode'.") | ||
| 1737 | |||
| 1705 | (defun gdb-registers-mode () | 1738 | (defun gdb-registers-mode () |
| 1706 | "Major mode for gdb registers. | 1739 | "Major mode for gdb registers. |
| 1707 | 1740 | ||
| @@ -1711,6 +1744,8 @@ static char *magick[] = { | |||
| 1711 | (setq mode-name "Registers:") | 1744 | (setq mode-name "Registers:") |
| 1712 | (setq buffer-read-only t) | 1745 | (setq buffer-read-only t) |
| 1713 | (use-local-map gdb-registers-mode-map) | 1746 | (use-local-map gdb-registers-mode-map) |
| 1747 | (set (make-local-variable 'font-lock-defaults) | ||
| 1748 | '(gdb-registers-font-lock-keywords)) | ||
| 1714 | (run-mode-hooks 'gdb-registers-mode-hook) | 1749 | (run-mode-hooks 'gdb-registers-mode-hook) |
| 1715 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 1750 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 1716 | 'gdb-invalidate-registers | 1751 | 'gdb-invalidate-registers |
| @@ -1955,6 +1990,12 @@ corresponding to the mode line clicked." | |||
| 1955 | (define-key map (vector 'header-line 'down-mouse-1) 'ignore) | 1990 | (define-key map (vector 'header-line 'down-mouse-1) 'ignore) |
| 1956 | map)) | 1991 | map)) |
| 1957 | 1992 | ||
| 1993 | (defvar gdb-memory-font-lock-keywords | ||
| 1994 | '(;; <__function.name+n> | ||
| 1995 | ("<\\(\\(\\sw\\|[_.]\\)+\\)\\(\\+[0-9]+\\)?>" (1 font-lock-function-name-face)) | ||
| 1996 | ) | ||
| 1997 | "Font lock keywords used in `gdb-memory-mode'.") | ||
| 1998 | |||
| 1958 | (defun gdb-memory-mode () | 1999 | (defun gdb-memory-mode () |
| 1959 | "Major mode for examining memory. | 2000 | "Major mode for examining memory. |
| 1960 | 2001 | ||
| @@ -2026,6 +2067,8 @@ corresponding to the mode line clicked." | |||
| 2026 | 'help-echo "mouse-3: Select unit size" | 2067 | 'help-echo "mouse-3: Select unit size" |
| 2027 | 'mouse-face 'mode-line-highlight | 2068 | 'mouse-face 'mode-line-highlight |
| 2028 | 'local-map gdb-memory-unit-keymap)))) | 2069 | 'local-map gdb-memory-unit-keymap)))) |
| 2070 | (set (make-local-variable 'font-lock-defaults) | ||
| 2071 | '(gdb-memory-font-lock-keywords)) | ||
| 2029 | (run-mode-hooks 'gdb-memory-mode-hook) | 2072 | (run-mode-hooks 'gdb-memory-mode-hook) |
| 2030 | 'gdb-invalidate-memory) | 2073 | 'gdb-invalidate-memory) |
| 2031 | 2074 | ||
| @@ -2094,6 +2137,23 @@ corresponding to the mode line clicked." | |||
| 2094 | (define-key map "q" 'kill-this-buffer) | 2137 | (define-key map "q" 'kill-this-buffer) |
| 2095 | map)) | 2138 | map)) |
| 2096 | 2139 | ||
| 2140 | (defvar gdb-local-font-lock-keywords | ||
| 2141 | '( | ||
| 2142 | ;; var = (struct struct_tag) value | ||
| 2143 | ( "\\(^\\(\\sw\\|[_.]\\)+\\) += +(\\(struct\\) \\(\\(\\sw\\|[_.]\\)+\\)" | ||
| 2144 | (1 font-lock-variable-name-face) | ||
| 2145 | (3 font-lock-keyword-face) | ||
| 2146 | (4 font-lock-type-face)) | ||
| 2147 | ;; var = (type) value | ||
| 2148 | ( "\\(^\\(\\sw\\|[_.]\\)+\\) += +(\\(\\(\\sw\\|[_.]\\)+\\)" | ||
| 2149 | (1 font-lock-variable-name-face) | ||
| 2150 | (3 font-lock-type-face)) | ||
| 2151 | ;; var = val | ||
| 2152 | ( "\\(^\\(\\sw\\|[_.]\\)+\\) += +[^(]" | ||
| 2153 | (1 font-lock-variable-name-face)) | ||
| 2154 | ) | ||
| 2155 | "Font lock keywords used in `gdb-local-mode'.") | ||
| 2156 | |||
| 2097 | (defun gdb-locals-mode () | 2157 | (defun gdb-locals-mode () |
| 2098 | "Major mode for gdb locals. | 2158 | "Major mode for gdb locals. |
| 2099 | 2159 | ||
| @@ -2103,6 +2163,8 @@ corresponding to the mode line clicked." | |||
| 2103 | (setq mode-name (concat "Locals:" gdb-selected-frame)) | 2163 | (setq mode-name (concat "Locals:" gdb-selected-frame)) |
| 2104 | (setq buffer-read-only t) | 2164 | (setq buffer-read-only t) |
| 2105 | (use-local-map gdb-locals-mode-map) | 2165 | (use-local-map gdb-locals-mode-map) |
| 2166 | (set (make-local-variable 'font-lock-defaults) | ||
| 2167 | '(gdb-local-font-lock-keywords)) | ||
| 2106 | (run-mode-hooks 'gdb-locals-mode-hook) | 2168 | (run-mode-hooks 'gdb-locals-mode-hook) |
| 2107 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 2169 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 2108 | 'gdb-invalidate-locals | 2170 | 'gdb-invalidate-locals |