diff options
| author | Miles Bader | 2004-11-04 08:55:40 +0000 |
|---|---|---|
| committer | Miles Bader | 2004-11-04 08:55:40 +0000 |
| commit | d1a3e560ff62e047d9fa8e8b3b1bc1e56e104c26 (patch) | |
| tree | 935f61a936f33c7690a201b19b86e89c3d864b61 /lisp/progmodes | |
| parent | 32dc0e8f9bc2d460b3d964c21989de70282bab61 (diff) | |
| parent | 0683d2414d4de8626f7c46f59937f9bef27302ce (diff) | |
| download | emacs-d1a3e560ff62e047d9fa8e8b3b1bc1e56e104c26.tar.gz emacs-d1a3e560ff62e047d9fa8e8b3b1bc1e56e104c26.zip | |
Revision: miles@gnu.org--gnu-2004/emacs--unicode--0--patch-69
Merge from emacs--cvs-trunk--0
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-643
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-649
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-650
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-651
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-655
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-656
Update from CVS: lisp/man.el (Man-xref-normal-file): Fix help-echo.
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-657
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-658
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-659
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-660
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-661
- miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-667
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-668
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-61
- miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-68
Update from CVS
Diffstat (limited to 'lisp/progmodes')
| -rw-r--r-- | lisp/progmodes/ada-xref.el | 6 | ||||
| -rw-r--r-- | lisp/progmodes/autoconf.el | 4 | ||||
| -rw-r--r-- | lisp/progmodes/compile.el | 14 | ||||
| -rw-r--r-- | lisp/progmodes/cperl-mode.el | 6 | ||||
| -rw-r--r-- | lisp/progmodes/flymake.el | 49 | ||||
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 146 | ||||
| -rw-r--r-- | lisp/progmodes/grep.el | 38 | ||||
| -rw-r--r-- | lisp/progmodes/idlw-shell.el | 6 | ||||
| -rw-r--r-- | lisp/progmodes/idlwave.el | 8 | ||||
| -rw-r--r-- | lisp/progmodes/vhdl-mode.el | 14 |
10 files changed, 170 insertions, 121 deletions
diff --git a/lisp/progmodes/ada-xref.el b/lisp/progmodes/ada-xref.el index fc1d2d46ab3..472cfc3053e 100644 --- a/lisp/progmodes/ada-xref.el +++ b/lisp/progmodes/ada-xref.el | |||
| @@ -2154,17 +2154,17 @@ This is a GNAT specific function that uses gnatkrunch." | |||
| 2154 | adaname | 2154 | adaname |
| 2155 | ) | 2155 | ) |
| 2156 | 2156 | ||
| 2157 | (defun ada-make-body-gnatstub () | 2157 | (defun ada-make-body-gnatstub (&optional interactive) |
| 2158 | "Create an Ada package body in the current buffer. | 2158 | "Create an Ada package body in the current buffer. |
| 2159 | This function uses the `gnatstub' program to create the body. | 2159 | This function uses the `gnatstub' program to create the body. |
| 2160 | This function typically is to be hooked into `ff-file-created-hooks'." | 2160 | This function typically is to be hooked into `ff-file-created-hooks'." |
| 2161 | (interactive) | 2161 | (interactive "p") |
| 2162 | 2162 | ||
| 2163 | (save-some-buffers nil nil) | 2163 | (save-some-buffers nil nil) |
| 2164 | 2164 | ||
| 2165 | ;; If the current buffer is the body (as is the case when calling this | 2165 | ;; If the current buffer is the body (as is the case when calling this |
| 2166 | ;; function from ff-file-created-hooks), then kill this temporary buffer | 2166 | ;; function from ff-file-created-hooks), then kill this temporary buffer |
| 2167 | (unless (interactive-p) | 2167 | (unless interactive |
| 2168 | (progn | 2168 | (progn |
| 2169 | (set-buffer-modified-p nil) | 2169 | (set-buffer-modified-p nil) |
| 2170 | (kill-buffer (current-buffer)))) | 2170 | (kill-buffer (current-buffer)))) |
diff --git a/lisp/progmodes/autoconf.el b/lisp/progmodes/autoconf.el index 5bdb1fb25eb..ec83e33b10d 100644 --- a/lisp/progmodes/autoconf.el +++ b/lisp/progmodes/autoconf.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; autoconf.el --- mode for editing Autoconf configure.in files | 1 | ;;; autoconf.el --- mode for editing Autoconf configure.in files |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2000, 2003 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Dave Love <fx@gnu.org> | 5 | ;; Author: Dave Love <fx@gnu.org> |
| 6 | ;; Keywords: languages | 6 | ;; Keywords: languages |
| @@ -49,7 +49,7 @@ | |||
| 49 | "AC_\\(SUBST\\|DEFINE\\(_UNQUOTED\\)?\\)(\\(\\sw+\\)") | 49 | "AC_\\(SUBST\\|DEFINE\\(_UNQUOTED\\)?\\)(\\(\\sw+\\)") |
| 50 | 50 | ||
| 51 | (defvar autoconf-font-lock-keywords | 51 | (defvar autoconf-font-lock-keywords |
| 52 | `(("A[CHM]_\\sw+" . font-lock-keyword-face) | 52 | `(("A[CHMS]_\\sw+" . font-lock-keyword-face) |
| 53 | (,autoconf-definition-regexp | 53 | (,autoconf-definition-regexp |
| 54 | 3 font-lock-function-name-face) | 54 | 3 font-lock-function-name-face) |
| 55 | ;; Are any other M4 keywords really appropriate for configure.in, | 55 | ;; Are any other M4 keywords really appropriate for configure.in, |
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 0dc73e96664..223455e9872 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el | |||
| @@ -181,6 +181,16 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) | |||
| 181 | (epc | 181 | (epc |
| 182 | "^Error [0-9]+ at (\\([0-9]+\\):\\([^)\n]+\\))" 2 1) | 182 | "^Error [0-9]+ at (\\([0-9]+\\):\\([^)\n]+\\))" 2 1) |
| 183 | 183 | ||
| 184 | (ftnchek-file | ||
| 185 | "^File \\(.+\\.f\\):$" | ||
| 186 | 1 nil nil 0) | ||
| 187 | (ftnchek-line-file | ||
| 188 | "\\(^Warning .* \\)?line \\([0-9]+\\)\\(?: col \\([0-9]+\\)\\)? file \\(.+\\.f\\)" | ||
| 189 | 4 2 3 (1) nil (1 'default nil t)) | ||
| 190 | (ftnchek-line | ||
| 191 | "\\(?:^\\(Warning\\) .* \\)?line \\([0-9]+\\)\\(?: col \\([0-9]+\\)\\)?" | ||
| 192 | nil 2 3 (1) nil (1 (compilation-face '(1)) nil t)) | ||
| 193 | |||
| 184 | (iar | 194 | (iar |
| 185 | "^\"\\(.*\\)\",\\([0-9]+\\)\\s-+\\(?:Error\\|Warnin\\(g\\)\\)\\[[0-9]+\\]:" | 195 | "^\"\\(.*\\)\",\\([0-9]+\\)\\s-+\\(?:Error\\|Warnin\\(g\\)\\)\\[[0-9]+\\]:" |
| 186 | 1 2 nil (3)) | 196 | 1 2 nil (3)) |
| @@ -191,8 +201,8 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) | |||
| 191 | 201 | ||
| 192 | ;; fixme: should be `mips' | 202 | ;; fixme: should be `mips' |
| 193 | (irix | 203 | (irix |
| 194 | "^[-[:alnum:]_/]+: \\(?:[sS]evere\\|[eE]rror\\|[wW]arnin\\(g\\)\\|[iI]nf\\(o\\)\\)[0-9 ]*:\ | 204 | "^[-[:alnum:]_/ ]+: \\(?:\\(?:[sS]evere\\|[eE]rror\\|[wW]arnin\\(g\\)\\|[iI]nf\\(o\\)\\)[0-9 ]*: \\)?\ |
| 195 | \\([^,\" \n\t]+\\)\\(?:, line\\|:\\) \\([0-9]+\\):" 3 4 nil (1 . 2)) | 205 | \\([^,\" \n\t]+\\)\\(?:, line\\|:\\) \\([0-9]+\\):" 3 4 nil (1 . 2)) |
| 196 | 206 | ||
| 197 | (java | 207 | (java |
| 198 | "^\\(?:[ \t]+at \\|==[0-9]+== +\\(?:at\\|b\\(y\\)\\)\\).+(\\([^()\n]+\\):\\([0-9]+\\))$" 2 3 nil (1)) | 208 | "^\\(?:[ \t]+at \\|==[0-9]+== +\\(?:at\\|b\\(y\\)\\)\\).+(\\([^()\n]+\\):\\([0-9]+\\))$" 2 3 nil (1)) |
diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el index e679a48d642..94458df56e8 100644 --- a/lisp/progmodes/cperl-mode.el +++ b/lisp/progmodes/cperl-mode.el | |||
| @@ -6664,11 +6664,11 @@ prototype \&SUB Returns prototype of the function given a reference. | |||
| 6664 | =pod Switch from Perl to POD. | 6664 | =pod Switch from Perl to POD. |
| 6665 | ") | 6665 | ") |
| 6666 | 6666 | ||
| 6667 | (defun cperl-switch-to-doc-buffer () | 6667 | (defun cperl-switch-to-doc-buffer (&optional interactive) |
| 6668 | "Go to the perl documentation buffer and insert the documentation." | 6668 | "Go to the perl documentation buffer and insert the documentation." |
| 6669 | (interactive) | 6669 | (interactive "p") |
| 6670 | (let ((buf (get-buffer-create cperl-doc-buffer))) | 6670 | (let ((buf (get-buffer-create cperl-doc-buffer))) |
| 6671 | (if (interactive-p) | 6671 | (if interactive |
| 6672 | (switch-to-buffer-other-window buf) | 6672 | (switch-to-buffer-other-window buf) |
| 6673 | (set-buffer buf)) | 6673 | (set-buffer buf)) |
| 6674 | (if (= (buffer-size) 0) | 6674 | (if (= (buffer-size) 0) |
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el index 3ccea967bc5..737071203e0 100644 --- a/lisp/progmodes/flymake.el +++ b/lisp/progmodes/flymake.el | |||
| @@ -56,7 +56,7 @@ | |||
| 56 | (defun flymake-makehash(&optional test) | 56 | (defun flymake-makehash(&optional test) |
| 57 | (cond | 57 | (cond |
| 58 | ((equal flymake-emacs 'xemacs) (if test (make-hash-table :test test) (make-hash-table))) | 58 | ((equal flymake-emacs 'xemacs) (if test (make-hash-table :test test) (make-hash-table))) |
| 59 | (t (makehash test)) | 59 | (t (makehash test)) |
| 60 | ) | 60 | ) |
| 61 | ) | 61 | ) |
| 62 | 62 | ||
| @@ -370,8 +370,8 @@ | |||
| 370 | (let* ((init-f (nth 0 (flymake-get-file-name-mode-and-masks file-name)))) | 370 | (let* ((init-f (nth 0 (flymake-get-file-name-mode-and-masks file-name)))) |
| 371 | ;(flymake-log 0 "calling %s" init-f) | 371 | ;(flymake-log 0 "calling %s" init-f) |
| 372 | ;(funcall init-f (current-buffer)) | 372 | ;(funcall init-f (current-buffer)) |
| 373 | init-f | ||
| 373 | ) | 374 | ) |
| 374 | (nth 0 (flymake-get-file-name-mode-and-masks file-name)) | ||
| 375 | ) | 375 | ) |
| 376 | 376 | ||
| 377 | (defun flymake-get-cleanup-function(file-name) | 377 | (defun flymake-get-cleanup-function(file-name) |
| @@ -846,7 +846,7 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 846 | (set-buffer source-buffer) | 846 | (set-buffer source-buffer) |
| 847 | 847 | ||
| 848 | (flymake-parse-residual source-buffer) | 848 | (flymake-parse-residual source-buffer) |
| 849 | (flymake-post-syntax-check source-buffer) | 849 | (flymake-post-syntax-check source-buffer exit-status command) |
| 850 | (flymake-set-buffer-is-running source-buffer nil) | 850 | (flymake-set-buffer-is-running source-buffer nil) |
| 851 | ) | 851 | ) |
| 852 | ) | 852 | ) |
| @@ -863,7 +863,7 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 863 | ) | 863 | ) |
| 864 | ) | 864 | ) |
| 865 | 865 | ||
| 866 | (defun flymake-post-syntax-check(source-buffer) | 866 | (defun flymake-post-syntax-check(source-buffer exit-status command) |
| 867 | "" | 867 | "" |
| 868 | (flymake-set-buffer-err-info source-buffer (flymake-get-buffer-new-err-info source-buffer)) | 868 | (flymake-set-buffer-err-info source-buffer (flymake-get-buffer-new-err-info source-buffer)) |
| 869 | (flymake-set-buffer-new-err-info source-buffer nil) | 869 | (flymake-set-buffer-new-err-info source-buffer nil) |
| @@ -1220,7 +1220,33 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 1220 | ) | 1220 | ) |
| 1221 | ) | 1221 | ) |
| 1222 | 1222 | ||
| 1223 | (eval-when-compile (require 'compile)) | 1223 | (defun flymake-reformat-err-line-patterns-from-compile-el(original-list) |
| 1224 | "grab error line patterns from original list in compile.el format, convert to flymake internal format" | ||
| 1225 | (let* ((converted-list '())) | ||
| 1226 | (mapcar | ||
| 1227 | (lambda (item) | ||
| 1228 | (setq item (cdr item)) | ||
| 1229 | (let ((regexp (nth 0 item)) | ||
| 1230 | (file (nth 1 item)) | ||
| 1231 | (line (nth 2 item)) | ||
| 1232 | (col (nth 3 item)) | ||
| 1233 | end-line) | ||
| 1234 | (if (consp file) (setq file (car file))) | ||
| 1235 | (if (consp line) (setq end-line (cdr line) line (car line))) | ||
| 1236 | (if (consp col) (setq col (car col))) | ||
| 1237 | |||
| 1238 | (when (not (functionp line)) | ||
| 1239 | (setq converted-list (cons (list regexp file line col) converted-list)) | ||
| 1240 | ) | ||
| 1241 | ) | ||
| 1242 | ) | ||
| 1243 | original-list | ||
| 1244 | ) | ||
| 1245 | converted-list | ||
| 1246 | ) | ||
| 1247 | ) | ||
| 1248 | |||
| 1249 | (require 'compile) | ||
| 1224 | (defvar flymake-err-line-patterns ; regexp file-idx line-idx col-idx (optional) text-idx(optional), match-end to end of string is error text | 1250 | (defvar flymake-err-line-patterns ; regexp file-idx line-idx col-idx (optional) text-idx(optional), match-end to end of string is error text |
| 1225 | (append | 1251 | (append |
| 1226 | '( | 1252 | '( |
| @@ -1243,9 +1269,9 @@ 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]*\\(.+\\)" | 1269 | (" *\\(\\[javac\\]\\)? *\\(\\([a-zA-Z]:\\)?[^:(\t\n]+\\)\:\\([0-9]+\\)\:[ \t\n]*\\(.+\\)" |
| 1244 | 2 4 nil 5) | 1270 | 2 4 nil 5) |
| 1245 | ) | 1271 | ) |
| 1246 | ;; compilation-error-regexp-alist) | 1272 | ;; compilation-error-regexp-alist) |
| 1247 | (mapcar (lambda (x) (cdr x)) compilation-error-regexp-alist-alist)) | 1273 | (flymake-reformat-err-line-patterns-from-compile-el compilation-error-regexp-alist-alist)) |
| 1248 | "patterns for matching error/warning lines, (regexp file-idx line-idx err-text-idx)" | 1274 | "patterns for matching error/warning lines, (regexp file-idx line-idx err-text-idx). Use flymake-reformat-err-line-patterns-from-compile-el to add patterns from compile.el" |
| 1249 | ) | 1275 | ) |
| 1250 | ;(defcustom flymake-err-line-patterns | 1276 | ;(defcustom flymake-err-line-patterns |
| 1251 | ; '( | 1277 | ; '( |
| @@ -1452,7 +1478,7 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 1452 | (let* ((dir (nth idx include-dirs))) | 1478 | (let* ((dir (nth idx include-dirs))) |
| 1453 | (setq full-file-name (concat dir "/" rel-file-name)) | 1479 | (setq full-file-name (concat dir "/" rel-file-name)) |
| 1454 | (when (file-exists-p full-file-name) | 1480 | (when (file-exists-p full-file-name) |
| 1455 | (setq done t) | 1481 | (setq found t) |
| 1456 | ) | 1482 | ) |
| 1457 | ) | 1483 | ) |
| 1458 | (setq idx (1+ idx)) | 1484 | (setq idx (1+ idx)) |
| @@ -1574,7 +1600,7 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 1574 | process | 1600 | process |
| 1575 | ) | 1601 | ) |
| 1576 | (error | 1602 | (error |
| 1577 | (let ((err-str (format "Failed to launch syntax check process '%s' with args %s: %s" | 1603 | (let* ((err-str (format "Failed to launch syntax check process '%s' with args %s: %s" |
| 1578 | cmd args (error-message-string err))) | 1604 | cmd args (error-message-string err))) |
| 1579 | (source-file-name (buffer-file-name buffer)) | 1605 | (source-file-name (buffer-file-name buffer)) |
| 1580 | (cleanup-f (flymake-get-cleanup-function source-file-name))) | 1606 | (cleanup-f (flymake-get-cleanup-function source-file-name))) |
| @@ -1905,7 +1931,8 @@ Whenether a buffer for master-file-name exists, use it as a source instead of re | |||
| 1905 | (defun flymake-mode(&optional arg) | 1931 | (defun flymake-mode(&optional arg) |
| 1906 | "toggle flymake-mode" | 1932 | "toggle flymake-mode" |
| 1907 | (interactive) | 1933 | (interactive) |
| 1908 | (let ((old-flymake-mode flymake-mode)) | 1934 | (let ((old-flymake-mode flymake-mode) |
| 1935 | (turn-on nil)) | ||
| 1909 | 1936 | ||
| 1910 | (setq turn-on | 1937 | (setq turn-on |
| 1911 | (if (null arg) | 1938 | (if (null arg) |
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index 64f8808c7f1..90c0a50c7dc 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -25,28 +25,28 @@ | |||
| 25 | 25 | ||
| 26 | ;;; Commentary: | 26 | ;;; Commentary: |
| 27 | 27 | ||
| 28 | ;; This mode acts as a graphical user interface to GDB. You can interact with | 28 | ;; This mode acts as a graphical user interface to GDB. You can interact with |
| 29 | ;; GDB through the GUD buffer in the usual way, but there are also further | 29 | ;; GDB through the GUD buffer in the usual way, but there are also further |
| 30 | ;; buffers which control the execution and describe the state of your program. | 30 | ;; buffers which control the execution and describe the state of your program. |
| 31 | ;; It separates the input/output of your program from that of GDB, if | 31 | ;; It separates the input/output of your program from that of GDB, if |
| 32 | ;; required, and watches expressions in the speedbar. It also uses features of | 32 | ;; required, and watches expressions in the speedbar. It also uses features of |
| 33 | ;; Emacs 21 such as the fringe/display margin for breakpoints, and the toolbar | 33 | ;; Emacs 21 such as the fringe/display margin for breakpoints, and the toolbar |
| 34 | ;; (see the GDB Graphical Interface section in the Emacs info manual). | 34 | ;; (see the GDB Graphical Interface section in the Emacs info manual). |
| 35 | 35 | ||
| 36 | ;; Start the debugger with M-x gdba. | 36 | ;; Start the debugger with M-x gdba. |
| 37 | 37 | ||
| 38 | ;; This file has evolved from gdba.el from GDB 5.0 written by Tom Lord and Jim | 38 | ;; This file has evolved from gdba.el from GDB 5.0 written by Tom Lord and Jim |
| 39 | ;; Kingdon and uses GDB's annotation interface. You don't need to know about | 39 | ;; Kingdon and uses GDB's annotation interface. You don't need to know about |
| 40 | ;; annotations to use this mode as a debugger, but if you are interested | 40 | ;; annotations to use this mode as a debugger, but if you are interested |
| 41 | ;; developing the mode itself, then see the Annotations section in the GDB | 41 | ;; developing the mode itself, then see the Annotations section in the GDB |
| 42 | ;; info manual. | 42 | ;; info manual. |
| 43 | ;; | 43 | ;; |
| 44 | ;; GDB developers plan to make the annotation interface obsolete. A new | 44 | ;; GDB developers plan to make the annotation interface obsolete. A new |
| 45 | ;; interface called GDB/MI (machine interface) has been designed to replace | 45 | ;; interface called GDB/MI (machine interface) has been designed to replace |
| 46 | ;; it. Some GDB/MI commands are used in this file through the CLI command | 46 | ;; it. Some GDB/MI commands are used in this file through the CLI command |
| 47 | ;; 'interpreter mi <mi-command>'. A file called gdb-mi.el is included in the | 47 | ;; 'interpreter mi <mi-command>'. A file called gdb-mi.el is included in the |
| 48 | ;; GDB repository for future releases (6.2 onwards) that uses GDB/MI as the | 48 | ;; GDB repository for future releases (6.2 onwards) that uses GDB/MI as the |
| 49 | ;; primary interface to GDB. It is still under development and is part of a | 49 | ;; primary interface to GDB. It is still under development and is part of a |
| 50 | ;; process to migrate Emacs from annotations to GDB/MI. | 50 | ;; process to migrate Emacs from annotations to GDB/MI. |
| 51 | ;; | 51 | ;; |
| 52 | ;; Known Bugs: | 52 | ;; Known Bugs: |
| @@ -63,7 +63,7 @@ | |||
| 63 | (defvar gdb-current-language nil) | 63 | (defvar gdb-current-language nil) |
| 64 | (defvar gdb-view-source t "Non-nil means that source code can be viewed.") | 64 | (defvar gdb-view-source t "Non-nil means that source code can be viewed.") |
| 65 | (defvar gdb-selected-view 'source "Code type that user wishes to view.") | 65 | (defvar gdb-selected-view 'source "Code type that user wishes to view.") |
| 66 | (defvar gdb-var-list nil "List of variables in watch window") | 66 | (defvar gdb-var-list nil "List of variables in watch window.") |
| 67 | (defvar gdb-var-changed nil "Non-nil means that gdb-var-list has changed.") | 67 | (defvar gdb-var-changed nil "Non-nil means that gdb-var-list has changed.") |
| 68 | (defvar gdb-buffer-type nil) | 68 | (defvar gdb-buffer-type nil) |
| 69 | (defvar gdb-overlay-arrow-position nil) | 69 | (defvar gdb-overlay-arrow-position nil) |
| @@ -85,12 +85,12 @@ other with the source file with the main routine of the inferior. | |||
| 85 | If `gdb-many-windows' is t, regardless of the value of | 85 | If `gdb-many-windows' is t, regardless of the value of |
| 86 | `gdb-show-main', the layout below will appear unless | 86 | `gdb-show-main', the layout below will appear unless |
| 87 | `gdb-use-inferior-io-buffer' is nil when the source buffer | 87 | `gdb-use-inferior-io-buffer' is nil when the source buffer |
| 88 | occupies the full width of the frame. Keybindings are given in | 88 | occupies the full width of the frame. Keybindings are given in |
| 89 | relevant buffer. | 89 | relevant buffer. |
| 90 | 90 | ||
| 91 | Watch expressions appear in the speedbar/slowbar. | 91 | Watch expressions appear in the speedbar/slowbar. |
| 92 | 92 | ||
| 93 | The following interactive lisp functions help control operation : | 93 | The following commands help control operation : |
| 94 | 94 | ||
| 95 | `gdb-many-windows' - Toggle the number of windows gdb uses. | 95 | `gdb-many-windows' - Toggle the number of windows gdb uses. |
| 96 | `gdb-restore-windows' - To restore the window layout. | 96 | `gdb-restore-windows' - To restore the window layout. |
| @@ -120,8 +120,7 @@ detailed description of this mode. | |||
| 120 | RET gdb-frames-select | SPC gdb-toggle-breakpoint | 120 | RET gdb-frames-select | SPC gdb-toggle-breakpoint |
| 121 | | RET gdb-goto-breakpoint | 121 | | RET gdb-goto-breakpoint |
| 122 | | d gdb-delete-breakpoint | 122 | | d gdb-delete-breakpoint |
| 123 | --------------------------------------------------------------------- | 123 | ---------------------------------------------------------------------" |
| 124 | " | ||
| 125 | ;; | 124 | ;; |
| 126 | (interactive (list (gud-query-cmdline 'gdba))) | 125 | (interactive (list (gud-query-cmdline 'gdba))) |
| 127 | ;; | 126 | ;; |
| @@ -134,12 +133,14 @@ detailed description of this mode. | |||
| 134 | (defcustom gdb-enable-debug-log nil | 133 | (defcustom gdb-enable-debug-log nil |
| 135 | "Non-nil means record the process input and output in `gdb-debug-log'." | 134 | "Non-nil means record the process input and output in `gdb-debug-log'." |
| 136 | :type 'boolean | 135 | :type 'boolean |
| 137 | :group 'gud) | 136 | :group 'gud |
| 137 | :version "21.4") | ||
| 138 | 138 | ||
| 139 | (defcustom gdb-use-inferior-io-buffer nil | 139 | (defcustom gdb-use-inferior-io-buffer nil |
| 140 | "Non-nil means display output from the inferior in a separate buffer." | 140 | "Non-nil means display output from the inferior in a separate buffer." |
| 141 | :type 'boolean | 141 | :type 'boolean |
| 142 | :group 'gud) | 142 | :group 'gud |
| 143 | :version "21.4") | ||
| 143 | 144 | ||
| 144 | (defun gdb-ann3 () | 145 | (defun gdb-ann3 () |
| 145 | (setq gdb-debug-log nil) | 146 | (setq gdb-debug-log nil) |
| @@ -210,10 +211,10 @@ detailed description of this mode. | |||
| 210 | (run-hooks 'gdba-mode-hook)) | 211 | (run-hooks 'gdba-mode-hook)) |
| 211 | 212 | ||
| 212 | (defcustom gdb-use-colon-colon-notation nil | 213 | (defcustom gdb-use-colon-colon-notation nil |
| 213 | "Non-nil means use FUNCTION::VARIABLE format to display variables in the | 214 | "If non-nil use FUN::VAR format to display variables in the speedbar." ; |
| 214 | speedbar." | ||
| 215 | :type 'boolean | 215 | :type 'boolean |
| 216 | :group 'gud) | 216 | :group 'gud |
| 217 | :version "21.4") | ||
| 217 | 218 | ||
| 218 | (defun gud-watch () | 219 | (defun gud-watch () |
| 219 | "Watch expression at point." | 220 | "Watch expression at point." |
| @@ -376,7 +377,7 @@ speedbar." | |||
| 376 | (setq gdb-var-changed t)))))) | 377 | (setq gdb-var-changed t)))))) |
| 377 | 378 | ||
| 378 | (defun gdb-edit-value (text token indent) | 379 | (defun gdb-edit-value (text token indent) |
| 379 | "Assign a value to a variable displayed in the speedbar" | 380 | "Assign a value to a variable displayed in the speedbar." |
| 380 | (let* ((var (nth (- (count-lines (point-min) (point)) 2) gdb-var-list)) | 381 | (let* ((var (nth (- (count-lines (point-min) (point)) 2) gdb-var-list)) |
| 381 | (varnum (cadr var)) (value)) | 382 | (varnum (cadr var)) (value)) |
| 382 | (setq value (read-string "New value: ")) | 383 | (setq value (read-string "New value: ")) |
| @@ -389,8 +390,8 @@ speedbar." | |||
| 389 | 'ignore)))) | 390 | 'ignore)))) |
| 390 | 391 | ||
| 391 | (defcustom gdb-show-changed-values t | 392 | (defcustom gdb-show-changed-values t |
| 392 | "Non-nil means use font-lock-warning-face to display values that have | 393 | "If non-nil highlight values that have recently changed in the speedbar. |
| 393 | recently changed in the speedbar." | 394 | The highlighting is done with `font-lock-warning-face'." |
| 394 | :type 'boolean | 395 | :type 'boolean |
| 395 | :group 'gud) | 396 | :group 'gud) |
| 396 | 397 | ||
| @@ -422,23 +423,23 @@ INDENT is the current indentation depth." | |||
| 422 | "The disposition of the output of the current gdb command. | 423 | "The disposition of the output of the current gdb command. |
| 423 | Possible values are these symbols: | 424 | Possible values are these symbols: |
| 424 | 425 | ||
| 425 | user -- gdb output should be copied to the GUD buffer | 426 | `user' -- gdb output should be copied to the GUD buffer |
| 426 | for the user to see. | 427 | for the user to see. |
| 427 | 428 | ||
| 428 | inferior -- gdb output should be copied to the inferior-io buffer | 429 | `inferior' -- gdb output should be copied to the inferior-io buffer |
| 429 | 430 | ||
| 430 | pre-emacs -- output should be ignored util the post-prompt | 431 | `pre-emacs' -- output should be ignored util the post-prompt |
| 431 | annotation is received. Then the output-sink | 432 | annotation is received. Then the output-sink |
| 432 | becomes:... | 433 | becomes:... |
| 433 | emacs -- output should be collected in the partial-output-buffer | 434 | `emacs' -- output should be collected in the partial-output-buffer |
| 434 | for subsequent processing by a command. This is the | 435 | for subsequent processing by a command. This is the |
| 435 | disposition of output generated by commands that | 436 | disposition of output generated by commands that |
| 436 | gdb mode sends to gdb on its own behalf. | 437 | gdb mode sends to gdb on its own behalf. |
| 437 | post-emacs -- ignore output until the prompt annotation is | 438 | `post-emacs' -- ignore output until the prompt annotation is |
| 438 | received, then go to USER disposition. | 439 | received, then go to USER disposition. |
| 439 | 440 | ||
| 440 | gdba (gdb-ui.el) uses all five values, gdbmi (gdb-mi.el) only two | 441 | gdba (gdb-ui.el) uses all five values, gdbmi (gdb-mi.el) only two |
| 441 | (user and emacs).") | 442 | \(`user' and `emacs').") |
| 442 | 443 | ||
| 443 | (defvar gdb-current-item nil | 444 | (defvar gdb-current-item nil |
| 444 | "The most recent command item sent to gdb.") | 445 | "The most recent command item sent to gdb.") |
| @@ -619,7 +620,7 @@ The key should be one of the cars in `gdb-buffer-rules-assoc'." | |||
| 619 | 620 | ||
| 620 | (defun gdb-send (proc string) | 621 | (defun gdb-send (proc string) |
| 621 | "A comint send filter for gdb. | 622 | "A comint send filter for gdb. |
| 622 | This filter may simply queue output for a later time." | 623 | This filter may simply queue input for a later time." |
| 623 | (if gud-running | 624 | (if gud-running |
| 624 | (process-send-string proc (concat string "\n")) | 625 | (process-send-string proc (concat string "\n")) |
| 625 | (gdb-enqueue-input (concat string "\n")))) | 626 | (gdb-enqueue-input (concat string "\n")))) |
| @@ -660,7 +661,8 @@ This filter may simply queue output for a later time." | |||
| 660 | (defcustom gud-gdba-command-name "gdb -annotate=3" | 661 | (defcustom gud-gdba-command-name "gdb -annotate=3" |
| 661 | "Default command to execute an executable under the GDB-UI debugger." | 662 | "Default command to execute an executable under the GDB-UI debugger." |
| 662 | :type 'string | 663 | :type 'string |
| 663 | :group 'gud) | 664 | :group 'gud |
| 665 | :version "21.4") | ||
| 664 | 666 | ||
| 665 | (defvar gdb-annotation-rules | 667 | (defvar gdb-annotation-rules |
| 666 | '(("pre-prompt" gdb-pre-prompt) | 668 | '(("pre-prompt" gdb-pre-prompt) |
| @@ -705,25 +707,25 @@ This filter may simply queue output for a later time." | |||
| 705 | (setq gdb-current-item item) | 707 | (setq gdb-current-item item) |
| 706 | (with-current-buffer gud-comint-buffer | 708 | (with-current-buffer gud-comint-buffer |
| 707 | (if (eq gud-minor-mode 'gdba) | 709 | (if (eq gud-minor-mode 'gdba) |
| 708 | (progn | 710 | (if (stringp item) |
| 709 | (if (stringp item) | ||
| 710 | (progn | ||
| 711 | (setq gdb-output-sink 'user) | ||
| 712 | (process-send-string (get-buffer-process gud-comint-buffer) item)) | ||
| 713 | (progn | 711 | (progn |
| 714 | (gdb-clear-partial-output) | 712 | (setq gdb-output-sink 'user) |
| 715 | (setq gdb-output-sink 'pre-emacs) | 713 | (process-send-string (get-buffer-process gud-comint-buffer) item)) |
| 716 | (process-send-string (get-buffer-process gud-comint-buffer) | 714 | (progn |
| 717 | (car item))))) | 715 | (gdb-clear-partial-output) |
| 718 | ; case: eq gud-minor-mode 'gdbmi | 716 | (setq gdb-output-sink 'pre-emacs) |
| 717 | (process-send-string (get-buffer-process gud-comint-buffer) | ||
| 718 | (car item)))) | ||
| 719 | ;; case: eq gud-minor-mode 'gdbmi | ||
| 719 | (gdb-clear-partial-output) | 720 | (gdb-clear-partial-output) |
| 720 | (setq gdb-output-sink 'emacs) | 721 | (setq gdb-output-sink 'emacs) |
| 721 | (process-send-string (get-buffer-process gud-comint-buffer) | 722 | (process-send-string (get-buffer-process gud-comint-buffer) |
| 722 | (car item))))) | 723 | (car item))))) |
| 723 | 724 | ||
| 724 | (defun gdb-pre-prompt (ignored) | 725 | (defun gdb-pre-prompt (ignored) |
| 725 | "An annotation handler for `pre-prompt'. This terminates the collection of | 726 | "An annotation handler for `pre-prompt'. |
| 726 | output from a previous command if that happens to be in effect." | 727 | This terminates the collection of output from a previous command if that |
| 728 | happens to be in effect." | ||
| 727 | (let ((sink gdb-output-sink)) | 729 | (let ((sink gdb-output-sink)) |
| 728 | (cond | 730 | (cond |
| 729 | ((eq sink 'user) t) | 731 | ((eq sink 'user) t) |
| @@ -761,8 +763,9 @@ This sends the next command (if any) to gdb." | |||
| 761 | (setq gdb-prompting t)) | 763 | (setq gdb-prompting t)) |
| 762 | 764 | ||
| 763 | (defun gdb-starting (ignored) | 765 | (defun gdb-starting (ignored) |
| 764 | "An annotation handler for `starting'. This says that I/O for the | 766 | "An annotation handler for `starting'. |
| 765 | subprocess is now the program being debugged, not GDB." | 767 | This says that I/O for the subprocess is now the program being debugged, |
| 768 | not GDB." | ||
| 766 | (let ((sink gdb-output-sink)) | 769 | (let ((sink gdb-output-sink)) |
| 767 | (cond | 770 | (cond |
| 768 | ((eq sink 'user) | 771 | ((eq sink 'user) |
| @@ -773,8 +776,9 @@ subprocess is now the program being debugged, not GDB." | |||
| 773 | (t (error "Unexpected `starting' annotation"))))) | 776 | (t (error "Unexpected `starting' annotation"))))) |
| 774 | 777 | ||
| 775 | (defun gdb-stopping (ignored) | 778 | (defun gdb-stopping (ignored) |
| 776 | "An annotation handler for `exited' and other annotations which say that I/O | 779 | "An annotation handler for `exited' and other annotations. |
| 777 | for the subprocess is now GDB, not the program being debugged." | 780 | They say that I/O for the subprocess is now GDB, not the program |
| 781 | being debugged." | ||
| 778 | (if gdb-use-inferior-io-buffer | 782 | (if gdb-use-inferior-io-buffer |
| 779 | (let ((sink gdb-output-sink)) | 783 | (let ((sink gdb-output-sink)) |
| 780 | (cond | 784 | (cond |
| @@ -792,8 +796,9 @@ for the subprocess is now GDB, not the program being debugged." | |||
| 792 | (t (error "Unexpected frame-begin annotation (%S)" sink))))) | 796 | (t (error "Unexpected frame-begin annotation (%S)" sink))))) |
| 793 | 797 | ||
| 794 | (defun gdb-stopped (ignored) | 798 | (defun gdb-stopped (ignored) |
| 795 | "An annotation handler for `stopped'. It is just like gdb-stopping, except | 799 | "An annotation handler for `stopped'. |
| 796 | that if we already set the output sink to 'user in gdb-stopping, that is fine." | 800 | It is just like `gdb-stopping', except that if we already set the output |
| 801 | sink to `user' in `gdb-stopping', that is fine." | ||
| 797 | (setq gud-running nil) | 802 | (setq gud-running nil) |
| 798 | (let ((sink gdb-output-sink)) | 803 | (let ((sink gdb-output-sink)) |
| 799 | (cond | 804 | (cond |
| @@ -803,8 +808,9 @@ that if we already set the output sink to 'user in gdb-stopping, that is fine." | |||
| 803 | (t (error "Unexpected stopped annotation"))))) | 808 | (t (error "Unexpected stopped annotation"))))) |
| 804 | 809 | ||
| 805 | (defun gdb-post-prompt (ignored) | 810 | (defun gdb-post-prompt (ignored) |
| 806 | "An annotation handler for `post-prompt'. This begins the collection of | 811 | "An annotation handler for `post-prompt'. |
| 807 | output from the current command if that happens to be appropriate." | 812 | This begins the collection of output from the current command if that |
| 813 | happens to be appropriate." | ||
| 808 | (if (not gdb-pending-triggers) | 814 | (if (not gdb-pending-triggers) |
| 809 | (progn | 815 | (progn |
| 810 | (gdb-get-current-frame) | 816 | (gdb-get-current-frame) |
| @@ -832,7 +838,7 @@ output from the current command if that happens to be appropriate." | |||
| 832 | (error "Phase error in gdb-post-prompt (got %s)" sink))))) | 838 | (error "Phase error in gdb-post-prompt (got %s)" sink))))) |
| 833 | 839 | ||
| 834 | (defun gud-gdba-marker-filter (string) | 840 | (defun gud-gdba-marker-filter (string) |
| 835 | "A gud marker filter for gdb. Handle a burst of output from GDB." | 841 | "A gud marker filter for gdb. Handle a burst of output from GDB." |
| 836 | (if gdb-enable-debug-log (push (cons 'recv string) gdb-debug-log)) | 842 | (if gdb-enable-debug-log (push (cons 'recv string) gdb-debug-log)) |
| 837 | ;; Recall the left over gud-marker-acc from last time | 843 | ;; Recall the left over gud-marker-acc from last time |
| 838 | (setq gud-marker-acc (concat gud-marker-acc string)) | 844 | (setq gud-marker-acc (concat gud-marker-acc string)) |
| @@ -1065,10 +1071,10 @@ static char *magick[] = { | |||
| 1065 | "PBM data used for disabled breakpoint icon.") | 1071 | "PBM data used for disabled breakpoint icon.") |
| 1066 | 1072 | ||
| 1067 | (defvar breakpoint-enabled-icon nil | 1073 | (defvar breakpoint-enabled-icon nil |
| 1068 | "Icon for enabled breakpoint in display margin") | 1074 | "Icon for enabled breakpoint in display margin.") |
| 1069 | 1075 | ||
| 1070 | (defvar breakpoint-disabled-icon nil | 1076 | (defvar breakpoint-disabled-icon nil |
| 1071 | "Icon for disabled breakpoint in display margin") | 1077 | "Icon for disabled breakpoint in display margin.") |
| 1072 | 1078 | ||
| 1073 | ;; Bitmap for breakpoint in fringe | 1079 | ;; Bitmap for breakpoint in fringe |
| 1074 | (define-fringe-bitmap 'breakpoint | 1080 | (define-fringe-bitmap 'breakpoint |
| @@ -1133,7 +1139,7 @@ static char *magick[] = { | |||
| 1133 | (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom))) | 1139 | (if (gdb-get-buffer 'gdb-assembler-buffer) (gdb-assembler-custom))) |
| 1134 | 1140 | ||
| 1135 | (defun gdb-mouse-toggle-breakpoint (event) | 1141 | (defun gdb-mouse-toggle-breakpoint (event) |
| 1136 | "Toggle breakpoint in left fringe/margin with mouse click" | 1142 | "Toggle breakpoint in left fringe/margin with mouse click." |
| 1137 | (interactive "e") | 1143 | (interactive "e") |
| 1138 | (mouse-minibuffer-check event) | 1144 | (mouse-minibuffer-check event) |
| 1139 | (let ((posn (event-end event))) | 1145 | (let ((posn (event-end event))) |
| @@ -1683,7 +1689,8 @@ static char *magick[] = { | |||
| 1683 | (defcustom gdb-show-main nil | 1689 | (defcustom gdb-show-main nil |
| 1684 | "Nil means don't display source file containing the main routine." | 1690 | "Nil means don't display source file containing the main routine." |
| 1685 | :type 'boolean | 1691 | :type 'boolean |
| 1686 | :group 'gud) | 1692 | :group 'gud |
| 1693 | :version "21.4") | ||
| 1687 | 1694 | ||
| 1688 | (defun gdb-setup-windows () | 1695 | (defun gdb-setup-windows () |
| 1689 | "Layout the window pattern for gdb-many-windows." | 1696 | "Layout the window pattern for gdb-many-windows." |
| @@ -1718,13 +1725,14 @@ static char *magick[] = { | |||
| 1718 | (other-window 1)) | 1725 | (other-window 1)) |
| 1719 | 1726 | ||
| 1720 | (defcustom gdb-many-windows nil | 1727 | (defcustom gdb-many-windows nil |
| 1721 | "Nil (the default value) means just pop up the GUD buffer | 1728 | "Nil means just pop up the GUD buffer unless `gdb-show-main' is t. |
| 1722 | unless `gdb-show-main' is t. In this case it starts with two | 1729 | In this case it starts with two windows: one displaying the GUD |
| 1723 | windows: one displaying the GUD buffer and the other with the | 1730 | buffer and the other with the source file with the main routine |
| 1724 | source file with the main routine of the inferior. Non-nil means | 1731 | of the inferior. Non-nil means display the layout shown for |
| 1725 | display the layout shown for `gdba'." | 1732 | `gdba'." |
| 1726 | :type 'boolean | 1733 | :type 'boolean |
| 1727 | :group 'gud) | 1734 | :group 'gud |
| 1735 | :version "21.4") | ||
| 1728 | 1736 | ||
| 1729 | (defun gdb-many-windows (arg) | 1737 | (defun gdb-many-windows (arg) |
| 1730 | "Toggle the number of windows in the basic arrangement." | 1738 | "Toggle the number of windows in the basic arrangement." |
| @@ -1760,8 +1768,8 @@ This arrangement depends on the value of `gdb-many-windows'." | |||
| 1760 | (other-window 1))) | 1768 | (other-window 1))) |
| 1761 | 1769 | ||
| 1762 | (defun gdb-reset () | 1770 | (defun gdb-reset () |
| 1763 | "Exit a debugging session cleanly by killing the gdb buffers and resetting | 1771 | "Exit a debugging session cleanly. |
| 1764 | the source buffers." | 1772 | Kills the gdb buffers and resets the source buffers." |
| 1765 | (dolist (buffer (buffer-list)) | 1773 | (dolist (buffer (buffer-list)) |
| 1766 | (unless (eq buffer gud-comint-buffer) | 1774 | (unless (eq buffer gud-comint-buffer) |
| 1767 | (with-current-buffer buffer | 1775 | (with-current-buffer buffer |
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el index 4d9e05109a8..7a13ddba6ed 100644 --- a/lisp/progmodes/grep.el +++ b/lisp/progmodes/grep.el | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | ;;; grep.el --- run compiler as inferior of Emacs, parse error messages | 1 | ;;; grep.el --- run compiler as inferior of Emacs, parse error messages |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1985, 86, 87, 93, 94, 95, 96, 97, 98, 1999, 2001, 02, 2004 | 3 | ;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; 2001, 2002, 2004 Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Roland McGrath <roland@gnu.org> | 6 | ;; Author: Roland McGrath <roland@gnu.org> |
| 7 | ;; Maintainer: FSF | 7 | ;; Maintainer: FSF |
| @@ -252,21 +252,12 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies | |||
| 252 | \\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[:) \t]" 1 (2 . 5) (4 . 6)) | 252 | \\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?[:) \t]" 1 (2 . 5) (4 . 6)) |
| 253 | ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" | 253 | ("^\\(.+?\\)[:(]+\\([0-9]+\\)\\([:)]\\).*?\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" |
| 254 | 1 2 | 254 | 1 2 |
| 255 | ;; Calculate column positions (beg . end) of first grep match on a line | ||
| 255 | ((lambda () | 256 | ((lambda () |
| 256 | (setq compilation-error-screen-columns nil) | 257 | (setq compilation-error-screen-columns nil) |
| 257 | (- (match-beginning 5) (match-end 3) 8)) | 258 | (- (match-beginning 5) (match-end 3) 8)) |
| 258 | . | 259 | . |
| 259 | (lambda () (- (match-end 5) (match-end 3) 8))) | 260 | (lambda () (- (match-end 5) (match-end 3) 8)))) |
| 260 | nil nil | ||
| 261 | (4 (list 'face nil 'invisible t 'intangible t)) | ||
| 262 | (5 (list 'face compilation-column-face)) | ||
| 263 | (6 (list 'face nil 'invisible t 'intangible t)) | ||
| 264 | ;; highlight other matches on the same line | ||
| 265 | ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" | ||
| 266 | nil nil | ||
| 267 | (1 (list 'face nil 'invisible t 'intangible t)) | ||
| 268 | (2 (list 'face compilation-column-face) t) | ||
| 269 | (3 (list 'face nil 'invisible t 'intangible t)))) | ||
| 270 | ("^Binary file \\(.+\\) matches$" 1 nil nil 1)) | 261 | ("^Binary file \\(.+\\) matches$" 1 nil nil 1)) |
| 271 | "Regexp used to match grep hits. See `compilation-error-regexp-alist'.") | 262 | "Regexp used to match grep hits. See `compilation-error-regexp-alist'.") |
| 272 | 263 | ||
| @@ -294,7 +285,16 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies | |||
| 294 | ("^Grep \\(exited abnormally\\) with code \\([0-9]+\\).*" | 285 | ("^Grep \\(exited abnormally\\) with code \\([0-9]+\\).*" |
| 295 | (0 '(face nil message nil help-echo nil mouse-face nil) t) | 286 | (0 '(face nil message nil help-echo nil mouse-face nil) t) |
| 296 | (1 compilation-warning-face) | 287 | (1 compilation-warning-face) |
| 297 | (2 compilation-line-face))) | 288 | (2 compilation-line-face)) |
| 289 | ;; Highlight grep matches and delete markers | ||
| 290 | ("\\(\033\\[01;41m\\)\\(.*?\\)\\(\033\\[00m\\)" | ||
| 291 | (2 compilation-column-face) | ||
| 292 | ((lambda (p)) | ||
| 293 | (progn | ||
| 294 | ;; Delete markers with `replace-match' because it updates | ||
| 295 | ;; the match-data, whereas `delete-region' would render it obsolete. | ||
| 296 | (replace-match "" t t nil 3) | ||
| 297 | (replace-match "" t t nil 1))))) | ||
| 298 | "Additional things to highlight in grep output. | 298 | "Additional things to highlight in grep output. |
| 299 | This gets tacked on the end of the generated expressions.") | 299 | This gets tacked on the end of the generated expressions.") |
| 300 | 300 | ||
| @@ -436,9 +436,11 @@ Set up `compilation-exit-message-function' and run `grep-setup-hook'." | |||
| 436 | 436 | ||
| 437 | (defun grep-default-command () | 437 | (defun grep-default-command () |
| 438 | (let ((tag-default | 438 | (let ((tag-default |
| 439 | (funcall (or find-tag-default-function | 439 | (shell-quote-argument |
| 440 | (get major-mode 'find-tag-default-function) | 440 | (or (funcall (or find-tag-default-function |
| 441 | 'find-tag-default))) | 441 | (get major-mode 'find-tag-default-function) |
| 442 | 'find-tag-default)) | ||
| 443 | ""))) | ||
| 442 | (sh-arg-re "\\(\\(?:\"\\(?:[^\"]\\|\\\\\"\\)+\"\\|'[^']+'\\|[^\"' \t\n]\\)+\\)") | 444 | (sh-arg-re "\\(\\(?:\"\\(?:[^\"]\\|\\\\\"\\)+\"\\|'[^']+'\\|[^\"' \t\n]\\)+\\)") |
| 443 | (grep-default (or (car grep-history) grep-command))) | 445 | (grep-default (or (car grep-history) grep-command))) |
| 444 | ;; Replace the thing matching for with that around cursor. | 446 | ;; Replace the thing matching for with that around cursor. |
| @@ -460,7 +462,7 @@ Set up `compilation-exit-message-function' and run `grep-setup-hook'." | |||
| 460 | 0 (match-beginning 2)) | 462 | 0 (match-beginning 2)) |
| 461 | " *." | 463 | " *." |
| 462 | (file-name-extension buffer-file-name)))) | 464 | (file-name-extension buffer-file-name)))) |
| 463 | (replace-match (or tag-default "") t t grep-default 1)))) | 465 | (replace-match tag-default t t grep-default 1)))) |
| 464 | 466 | ||
| 465 | ;;;###autoload | 467 | ;;;###autoload |
| 466 | (defun grep (command-args &optional highlight-regexp) | 468 | (defun grep (command-args &optional highlight-regexp) |
diff --git a/lisp/progmodes/idlw-shell.el b/lisp/progmodes/idlw-shell.el index ae0c43c2730..692fce0234e 100644 --- a/lisp/progmodes/idlw-shell.el +++ b/lisp/progmodes/idlw-shell.el | |||
| @@ -1137,10 +1137,10 @@ prompt is present and if `idlwave-shell-ready' is non-nil." | |||
| 1137 | (goto-char save-point)) | 1137 | (goto-char save-point)) |
| 1138 | (set-buffer save-buffer)))) | 1138 | (set-buffer save-buffer)))) |
| 1139 | 1139 | ||
| 1140 | (defun idlwave-shell-send-char (c &optional no-error) | 1140 | (defun idlwave-shell-send-char (c &optional error) |
| 1141 | "Send one character to the shell, without a newline." | 1141 | "Send one character to the shell, without a newline." |
| 1142 | (interactive "cChar to send to IDL: ") | 1142 | (interactive "cChar to send to IDL: \np") |
| 1143 | (let ((errf (if (interactive-p) 'error 'message)) | 1143 | (let ((errf (if error 'error 'message)) |
| 1144 | buf proc) | 1144 | buf proc) |
| 1145 | (if (or (not (setq buf (get-buffer (idlwave-shell-buffer)))) | 1145 | (if (or (not (setq buf (get-buffer (idlwave-shell-buffer)))) |
| 1146 | (not (setq proc (get-buffer-process buf)))) | 1146 | (not (setq proc (get-buffer-process buf)))) |
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el index a49f70aa0b0..a5e07049843 100644 --- a/lisp/progmodes/idlwave.el +++ b/lisp/progmodes/idlwave.el | |||
| @@ -4231,7 +4231,7 @@ will re-read the catalog." | |||
| 4231 | 4231 | ||
| 4232 | 4232 | ||
| 4233 | (defvar idlwave-load-rinfo-idle-timer) | 4233 | (defvar idlwave-load-rinfo-idle-timer) |
| 4234 | (defun idlwave-update-routine-info (&optional arg) | 4234 | (defun idlwave-update-routine-info (&optional arg dont-concentrate) |
| 4235 | "Update the internal routine-info lists. | 4235 | "Update the internal routine-info lists. |
| 4236 | These lists are used by `idlwave-routine-info' (\\[idlwave-routine-info]) | 4236 | These lists are used by `idlwave-routine-info' (\\[idlwave-routine-info]) |
| 4237 | and by `idlwave-complete' (\\[idlwave-complete]) to provide information | 4237 | and by `idlwave-complete' (\\[idlwave-complete]) to provide information |
| @@ -4248,10 +4248,12 @@ Scans all IDLWAVE-mode buffers of the current editing session (see | |||
| 4248 | When an IDL shell is running, this command also queries the IDL program | 4248 | When an IDL shell is running, this command also queries the IDL program |
| 4249 | for currently compiled routines. | 4249 | for currently compiled routines. |
| 4250 | 4250 | ||
| 4251 | ???Document what DONT-CONCENTRATE means??? | ||
| 4252 | |||
| 4251 | With prefix ARG, also reload the system and library lists. | 4253 | With prefix ARG, also reload the system and library lists. |
| 4252 | With two prefix ARG's, also rescans the library tree. | 4254 | With two prefix ARG's, also rescans the library tree. |
| 4253 | With three prefix args, dispatch asynchronous process to do the update." | 4255 | With three prefix args, dispatch asynchronous process to do the update." |
| 4254 | (interactive "P") | 4256 | (interactive "P\np") |
| 4255 | ;; Stop any idle processing | 4257 | ;; Stop any idle processing |
| 4256 | (if (or (and (fboundp 'itimerp) | 4258 | (if (or (and (fboundp 'itimerp) |
| 4257 | (itimerp idlwave-load-rinfo-idle-timer)) | 4259 | (itimerp idlwave-load-rinfo-idle-timer)) |
| @@ -4300,7 +4302,7 @@ With three prefix args, dispatch asynchronous process to do the update." | |||
| 4300 | idlwave-query-shell-for-routine-info))) | 4302 | idlwave-query-shell-for-routine-info))) |
| 4301 | 4303 | ||
| 4302 | (if (or (not ask-shell) | 4304 | (if (or (not ask-shell) |
| 4303 | (not (interactive-p))) | 4305 | (not dont-concentrate)) |
| 4304 | ;; 1. If we are not going to ask the shell, we need to do the | 4306 | ;; 1. If we are not going to ask the shell, we need to do the |
| 4305 | ;; concatenation now. | 4307 | ;; concatenation now. |
| 4306 | ;; 2. When this function is called non-interactively, it means | 4308 | ;; 2. When this function is called non-interactively, it means |
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el index 42aabace4d2..cb2a3e2dfcc 100644 --- a/lisp/progmodes/vhdl-mode.el +++ b/lisp/progmodes/vhdl-mode.el | |||
| @@ -6120,17 +6120,17 @@ stops due to beginning or end of buffer." | |||
| 6120 | (vhdl-keep-region-active) | 6120 | (vhdl-keep-region-active) |
| 6121 | foundp)) | 6121 | foundp)) |
| 6122 | 6122 | ||
| 6123 | (defun vhdl-beginning-of-statement (&optional count lim) | 6123 | (defun vhdl-beginning-of-statement (&optional count lim interactive) |
| 6124 | "Go to the beginning of the innermost VHDL statement. | 6124 | "Go to the beginning of the innermost VHDL statement. |
| 6125 | With prefix arg, go back N - 1 statements. If already at the | 6125 | With prefix arg, go back N - 1 statements. If already at the |
| 6126 | beginning of a statement then go to the beginning of the preceding | 6126 | beginning of a statement then go to the beginning of the preceding |
| 6127 | one. If within a string or comment, or next to a comment (only | 6127 | one. If within a string or comment, or next to a comment (only |
| 6128 | whitespace between), move by sentences instead of statements. | 6128 | whitespace between), move by sentences instead of statements. |
| 6129 | 6129 | ||
| 6130 | When called from a program, this function takes 2 optional args: the | 6130 | When called from a program, this function takes 3 optional args: the |
| 6131 | prefix arg, and a buffer position limit which is the farthest back to | 6131 | prefix arg, and a buffer position limit which is the farthest back to |
| 6132 | search." | 6132 | search, and something whose meaning I don't understand." |
| 6133 | (interactive "p") | 6133 | (interactive "p\np") |
| 6134 | (let ((count (or count 1)) | 6134 | (let ((count (or count 1)) |
| 6135 | (case-fold-search t) | 6135 | (case-fold-search t) |
| 6136 | (lim (or lim (point-min))) | 6136 | (lim (or lim (point-min))) |
| @@ -6139,7 +6139,7 @@ search." | |||
| 6139 | (save-excursion | 6139 | (save-excursion |
| 6140 | (goto-char lim) | 6140 | (goto-char lim) |
| 6141 | (setq state (parse-partial-sexp (point) here nil nil))) | 6141 | (setq state (parse-partial-sexp (point) here nil nil))) |
| 6142 | (if (and (interactive-p) | 6142 | (if (and interactive |
| 6143 | (or (nth 3 state) | 6143 | (or (nth 3 state) |
| 6144 | (nth 4 state) | 6144 | (nth 4 state) |
| 6145 | (looking-at (concat "[ \t]*" comment-start-skip)))) | 6145 | (looking-at (concat "[ \t]*" comment-start-skip)))) |
| @@ -7531,10 +7531,10 @@ buffer." | |||
| 7531 | 7531 | ||
| 7532 | (defun vhdl-fill-region (beg end &optional arg) | 7532 | (defun vhdl-fill-region (beg end &optional arg) |
| 7533 | "Fill lines for a region of code." | 7533 | "Fill lines for a region of code." |
| 7534 | (interactive "r") | 7534 | (interactive "r\np") |
| 7535 | (save-excursion | 7535 | (save-excursion |
| 7536 | (goto-char beg) | 7536 | (goto-char beg) |
| 7537 | (let ((margin (if (interactive-p) (current-indentation) (current-column)))) | 7537 | (let ((margin (if interactive (current-indentation) (current-column)))) |
| 7538 | (goto-char end) | 7538 | (goto-char end) |
| 7539 | (setq end (point-marker)) | 7539 | (setq end (point-marker)) |
| 7540 | ;; remove inline comments, newlines and whitespace | 7540 | ;; remove inline comments, newlines and whitespace |