diff options
Diffstat (limited to 'lisp/progmodes')
| -rw-r--r-- | lisp/progmodes/asm-mode.el | 4 | ||||
| -rw-r--r-- | lisp/progmodes/flymake.el | 5 | ||||
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 66 |
3 files changed, 54 insertions, 21 deletions
diff --git a/lisp/progmodes/asm-mode.el b/lisp/progmodes/asm-mode.el index 76d12aa6f6e..17cb7c78316 100644 --- a/lisp/progmodes/asm-mode.el +++ b/lisp/progmodes/asm-mode.el | |||
| @@ -90,7 +90,9 @@ | |||
| 90 | 2 font-lock-keyword-face) | 90 | 2 font-lock-keyword-face) |
| 91 | ;; directive started from ".". | 91 | ;; directive started from ".". |
| 92 | ("^\\(\\.\\(\\sw\\|\\s_\\)+\\)\\>[^:]?" | 92 | ("^\\(\\.\\(\\sw\\|\\s_\\)+\\)\\>[^:]?" |
| 93 | 1 font-lock-keyword-face)) | 93 | 1 font-lock-keyword-face) |
| 94 | ;; %register | ||
| 95 | ("%\\sw+" . font-lock-variable-name-face)) | ||
| 94 | "Additional expressions to highlight in Assembler mode.") | 96 | "Additional expressions to highlight in Assembler mode.") |
| 95 | 97 | ||
| 96 | ;;;###autoload | 98 | ;;;###autoload |
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el index 2cd62eeecee..3ccea967bc5 100644 --- a/lisp/progmodes/flymake.el +++ b/lisp/progmodes/flymake.el | |||
| @@ -94,7 +94,7 @@ | |||
| 94 | (defun flymake-split-string(str pattern) | 94 | (defun flymake-split-string(str pattern) |
| 95 | (cond | 95 | (cond |
| 96 | ((equal flymake-emacs 'xemacs) (flymake-split-string-remove-empty-edges str pattern)) | 96 | ((equal flymake-emacs 'xemacs) (flymake-split-string-remove-empty-edges str pattern)) |
| 97 | (t (split-string str pattern)) | 97 | (t (flymake-split-string-remove-empty-edges str pattern)) |
| 98 | ) | 98 | ) |
| 99 | ) | 99 | ) |
| 100 | 100 | ||
| @@ -1243,7 +1243,8 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 1243 | (" *\\(\\[javac\\]\\)? *\\(\\([a-zA-Z]:\\)?[^:(\t\n]+\\)\:\\([0-9]+\\)\:[ \t\n]*\\(.+\\)" | 1243 | (" *\\(\\[javac\\]\\)? *\\(\\([a-zA-Z]:\\)?[^:(\t\n]+\\)\:\\([0-9]+\\)\:[ \t\n]*\\(.+\\)" |
| 1244 | 2 4 nil 5) | 1244 | 2 4 nil 5) |
| 1245 | ) | 1245 | ) |
| 1246 | compilation-error-regexp-alist) | 1246 | ;; compilation-error-regexp-alist) |
| 1247 | (mapcar (lambda (x) (cdr x)) compilation-error-regexp-alist-alist)) | ||
| 1247 | "patterns for matching error/warning lines, (regexp file-idx line-idx err-text-idx)" | 1248 | "patterns for matching error/warning lines, (regexp file-idx line-idx err-text-idx)" |
| 1248 | ) | 1249 | ) |
| 1249 | ;(defcustom flymake-err-line-patterns | 1250 | ;(defcustom flymake-err-line-patterns |
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index d8f2cf34867..64f8808c7f1 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -177,7 +177,7 @@ detailed description of this mode. | |||
| 177 | 177 | ||
| 178 | (setq comint-input-sender 'gdb-send) | 178 | (setq comint-input-sender 'gdb-send) |
| 179 | ;; | 179 | ;; |
| 180 | ;; (re-)initialise | 180 | ;; (re-)initialize |
| 181 | (setq gdb-current-address "main") | 181 | (setq gdb-current-address "main") |
| 182 | (setq gdb-previous-address nil) | 182 | (setq gdb-previous-address nil) |
| 183 | (setq gdb-previous-frame nil) | 183 | (setq gdb-previous-frame nil) |
| @@ -482,14 +482,14 @@ The key should be one of the cars in `gdb-buffer-rules-assoc'." | |||
| 482 | (name (funcall (gdb-rules-name-maker rules))) | 482 | (name (funcall (gdb-rules-name-maker rules))) |
| 483 | (new (get-buffer-create name))) | 483 | (new (get-buffer-create name))) |
| 484 | (with-current-buffer new | 484 | (with-current-buffer new |
| 485 | ;; FIXME: This should be set after calling the function, since the | 485 | (let ((trigger)) |
| 486 | ;; function should run kill-all-local-variables. | 486 | (if (cdr (cdr rules)) |
| 487 | (set (make-local-variable 'gdb-buffer-type) key) | 487 | (setq trigger (funcall (car (cdr (cdr rules)))))) |
| 488 | (if (cdr (cdr rules)) | 488 | (set (make-local-variable 'gdb-buffer-type) key) |
| 489 | (funcall (car (cdr (cdr rules))))) | 489 | (set (make-local-variable 'gud-minor-mode) |
| 490 | (set (make-local-variable 'gud-minor-mode) | 490 | (with-current-buffer gud-comint-buffer gud-minor-mode)) |
| 491 | (with-current-buffer gud-comint-buffer gud-minor-mode)) | 491 | (set (make-local-variable 'tool-bar-map) gud-tool-bar-map) |
| 492 | (set (make-local-variable 'tool-bar-map) gud-tool-bar-map) | 492 | (if trigger (funcall trigger))) |
| 493 | new)))) | 493 | new)))) |
| 494 | 494 | ||
| 495 | (defun gdb-rules-name-maker (rules) (car (cdr rules))) | 495 | (defun gdb-rules-name-maker (rules) (car (cdr rules))) |
| @@ -1190,13 +1190,15 @@ static char *magick[] = { | |||
| 1190 | "Major mode for gdb breakpoints. | 1190 | "Major mode for gdb breakpoints. |
| 1191 | 1191 | ||
| 1192 | \\{gdb-breakpoints-mode-map}" | 1192 | \\{gdb-breakpoints-mode-map}" |
| 1193 | (kill-all-local-variables) | ||
| 1193 | (setq major-mode 'gdb-breakpoints-mode) | 1194 | (setq major-mode 'gdb-breakpoints-mode) |
| 1194 | (setq mode-name "Breakpoints") | 1195 | (setq mode-name "Breakpoints") |
| 1195 | (use-local-map gdb-breakpoints-mode-map) | 1196 | (use-local-map gdb-breakpoints-mode-map) |
| 1196 | (setq buffer-read-only t) | 1197 | (setq buffer-read-only t) |
| 1198 | (run-mode-hooks 'gdb-breakpoints-mode-hook) | ||
| 1197 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 1199 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 1198 | (gdb-invalidate-breakpoints) | 1200 | 'gdb-invalidate-breakpoints |
| 1199 | (gdbmi-invalidate-breakpoints))) | 1201 | 'gdbmi-invalidate-breakpoints)) |
| 1200 | 1202 | ||
| 1201 | (defun gdb-toggle-breakpoint () | 1203 | (defun gdb-toggle-breakpoint () |
| 1202 | "Enable/disable the breakpoint at current line." | 1204 | "Enable/disable the breakpoint at current line." |
| @@ -1317,14 +1319,16 @@ static char *magick[] = { | |||
| 1317 | "Major mode for gdb frames. | 1319 | "Major mode for gdb frames. |
| 1318 | 1320 | ||
| 1319 | \\{gdb-frames-mode-map}" | 1321 | \\{gdb-frames-mode-map}" |
| 1322 | (kill-all-local-variables) | ||
| 1320 | (setq major-mode 'gdb-frames-mode) | 1323 | (setq major-mode 'gdb-frames-mode) |
| 1321 | (setq mode-name "Frames") | 1324 | (setq mode-name "Frames") |
| 1322 | (setq buffer-read-only t) | 1325 | (setq buffer-read-only t) |
| 1323 | (use-local-map gdb-frames-mode-map) | 1326 | (use-local-map gdb-frames-mode-map) |
| 1324 | (font-lock-mode -1) | 1327 | (font-lock-mode -1) |
| 1328 | (run-mode-hooks 'gdb-frames-mode-hook) | ||
| 1325 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 1329 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 1326 | (gdb-invalidate-frames) | 1330 | 'gdb-invalidate-frames |
| 1327 | (gdbmi-invalidate-frames))) | 1331 | 'gdbmi-invalidate-frames)) |
| 1328 | 1332 | ||
| 1329 | (defun gdb-get-frame-number () | 1333 | (defun gdb-get-frame-number () |
| 1330 | (save-excursion | 1334 | (save-excursion |
| @@ -1396,11 +1400,13 @@ static char *magick[] = { | |||
| 1396 | "Major mode for gdb frames. | 1400 | "Major mode for gdb frames. |
| 1397 | 1401 | ||
| 1398 | \\{gdb-threads-mode-map}" | 1402 | \\{gdb-threads-mode-map}" |
| 1403 | (kill-all-local-variables) | ||
| 1399 | (setq major-mode 'gdb-threads-mode) | 1404 | (setq major-mode 'gdb-threads-mode) |
| 1400 | (setq mode-name "Threads") | 1405 | (setq mode-name "Threads") |
| 1401 | (setq buffer-read-only t) | 1406 | (setq buffer-read-only t) |
| 1402 | (use-local-map gdb-threads-mode-map) | 1407 | (use-local-map gdb-threads-mode-map) |
| 1403 | (gdb-invalidate-threads)) | 1408 | (run-mode-hooks 'gdb-threads-mode-hook) |
| 1409 | 'gdb-invalidate-threads) | ||
| 1404 | 1410 | ||
| 1405 | (defun gdb-get-thread-number () | 1411 | (defun gdb-get-thread-number () |
| 1406 | (save-excursion | 1412 | (save-excursion |
| @@ -1444,11 +1450,13 @@ static char *magick[] = { | |||
| 1444 | "Major mode for gdb registers. | 1450 | "Major mode for gdb registers. |
| 1445 | 1451 | ||
| 1446 | \\{gdb-registers-mode-map}" | 1452 | \\{gdb-registers-mode-map}" |
| 1453 | (kill-all-local-variables) | ||
| 1447 | (setq major-mode 'gdb-registers-mode) | 1454 | (setq major-mode 'gdb-registers-mode) |
| 1448 | (setq mode-name "Registers") | 1455 | (setq mode-name "Registers") |
| 1449 | (setq buffer-read-only t) | 1456 | (setq buffer-read-only t) |
| 1450 | (use-local-map gdb-registers-mode-map) | 1457 | (use-local-map gdb-registers-mode-map) |
| 1451 | (gdb-invalidate-registers)) | 1458 | (run-mode-hooks 'gdb-registers-mode-hook) |
| 1459 | 'gdb-invalidate-registers) | ||
| 1452 | 1460 | ||
| 1453 | (defun gdb-registers-buffer-name () | 1461 | (defun gdb-registers-buffer-name () |
| 1454 | (with-current-buffer gud-comint-buffer | 1462 | (with-current-buffer gud-comint-buffer |
| @@ -1518,13 +1526,15 @@ static char *magick[] = { | |||
| 1518 | "Major mode for gdb locals. | 1526 | "Major mode for gdb locals. |
| 1519 | 1527 | ||
| 1520 | \\{gdb-locals-mode-map}" | 1528 | \\{gdb-locals-mode-map}" |
| 1529 | (kill-all-local-variables) | ||
| 1521 | (setq major-mode 'gdb-locals-mode) | 1530 | (setq major-mode 'gdb-locals-mode) |
| 1522 | (setq mode-name (concat "Locals:" gdb-current-frame)) | 1531 | (setq mode-name (concat "Locals:" gdb-current-frame)) |
| 1523 | (setq buffer-read-only t) | 1532 | (setq buffer-read-only t) |
| 1524 | (use-local-map gdb-locals-mode-map) | 1533 | (use-local-map gdb-locals-mode-map) |
| 1534 | (run-mode-hooks 'gdb-locals-mode-hook) | ||
| 1525 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) | 1535 | (if (with-current-buffer gud-comint-buffer (eq gud-minor-mode 'gdba)) |
| 1526 | (gdb-invalidate-locals) | 1536 | 'gdb-invalidate-locals |
| 1527 | (gdbmi-invalidate-locals))) | 1537 | 'gdbmi-invalidate-locals)) |
| 1528 | 1538 | ||
| 1529 | (defun gdb-locals-buffer-name () | 1539 | (defun gdb-locals-buffer-name () |
| 1530 | (with-current-buffer gud-comint-buffer | 1540 | (with-current-buffer gud-comint-buffer |
| @@ -1939,10 +1949,26 @@ BUFFER nil or omitted means use the current buffer." | |||
| 1939 | (suppress-keymap map) | 1949 | (suppress-keymap map) |
| 1940 | map)) | 1950 | map)) |
| 1941 | 1951 | ||
| 1952 | (defvar gdb-assembler-font-lock-keywords | ||
| 1953 | '(;; <__function.name+n> | ||
| 1954 | ("<\\(\\(\\sw\\|[_.]\\)+\\)\\(\\+[0-9]+\\)?>" | ||
| 1955 | (1 font-lock-function-name-face)) | ||
| 1956 | ;; 0xNNNNNNNN <__function.name+n>: opcode | ||
| 1957 | ("^0x[0-9a-f]+ \\(<\\(\\(\\sw\\|[_.]\\)+\\)\\+[0-9]+>\\)?:[ \t]+\\(\\sw+\\)" | ||
| 1958 | (4 font-lock-keyword-face)) | ||
| 1959 | ;; %register(at least i386) | ||
| 1960 | ("%\\sw+" . font-lock-variable-name-face) | ||
| 1961 | ("^\\(Dump of assembler code for function\\) \\(.+\\):" | ||
| 1962 | (1 font-lock-comment-face) | ||
| 1963 | (2 font-lock-function-name-face)) | ||
| 1964 | ("^\\(End of assembler dump\\.\\)" . font-lock-comment-face)) | ||
| 1965 | "Font lock keywords used in `gdb-assembler-mode'.") | ||
| 1966 | |||
| 1942 | (defun gdb-assembler-mode () | 1967 | (defun gdb-assembler-mode () |
| 1943 | "Major mode for viewing code assembler. | 1968 | "Major mode for viewing code assembler. |
| 1944 | 1969 | ||
| 1945 | \\{gdb-assembler-mode-map}" | 1970 | \\{gdb-assembler-mode-map}" |
| 1971 | (kill-all-local-variables) | ||
| 1946 | (setq major-mode 'gdb-assembler-mode) | 1972 | (setq major-mode 'gdb-assembler-mode) |
| 1947 | (setq mode-name "Machine") | 1973 | (setq mode-name "Machine") |
| 1948 | (setq gdb-overlay-arrow-position nil) | 1974 | (setq gdb-overlay-arrow-position nil) |
| @@ -1951,7 +1977,11 @@ BUFFER nil or omitted means use the current buffer." | |||
| 1951 | (setq fringes-outside-margins t) | 1977 | (setq fringes-outside-margins t) |
| 1952 | (setq buffer-read-only t) | 1978 | (setq buffer-read-only t) |
| 1953 | (use-local-map gdb-assembler-mode-map) | 1979 | (use-local-map gdb-assembler-mode-map) |
| 1954 | (gdb-invalidate-assembler)) | 1980 | (gdb-invalidate-assembler) |
| 1981 | (set (make-local-variable 'font-lock-defaults) | ||
| 1982 | '(gdb-assembler-font-lock-keywords)) | ||
| 1983 | (run-mode-hooks 'gdb-assembler-mode-hook) | ||
| 1984 | 'gdb-invalidate-assembler) | ||
| 1955 | 1985 | ||
| 1956 | (defun gdb-assembler-buffer-name () | 1986 | (defun gdb-assembler-buffer-name () |
| 1957 | (with-current-buffer gud-comint-buffer | 1987 | (with-current-buffer gud-comint-buffer |