aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes
diff options
context:
space:
mode:
authorMiles Bader <[email protected]>2007-08-21 04:51:30 +0000
committerMiles Bader <[email protected]>2007-08-21 04:51:30 +0000
commitbdaf8a62d53cf8d5a0dc4f0dc530ecd6fc1f44fe (patch)
tree083bb8dc3faa311402bb8e86a67a4b9aeb207592 /lisp/progmodes
parentcb3fe75728ff4703c11aeb61c079a97da11ec637 (diff)
parent30a718e6b77f4f0c422f748dd14ea772b7fa2a1a (diff)
Merge from emacs--rel--22
Patches applied: * emacs--rel--22 (patch 93-96) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 245) - Update from CVS Revision: [email protected]/emacs--devo--0--patch-856
Diffstat (limited to 'lisp/progmodes')
-rw-r--r--lisp/progmodes/gdb-ui.el6
-rw-r--r--lisp/progmodes/perl-mode.el12
2 files changed, 13 insertions, 5 deletions
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index c4d1446224..716b79138f 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -1132,10 +1132,10 @@ This filter may simply queue input for a later time."
(let ((item (concat string "\n")))
(if gdb-enable-debug (push (cons 'send item) gdb-debug-log))
(process-send-string proc item)))
- (if (and (string-match "\\\\$" string)
- (not comint-input-sender-no-newline)) ;;Try to catch C-d.
+ (if (string-match "\\\\\\'" string)
(setq gdb-continuation (concat gdb-continuation string "\n"))
- (let ((item (concat gdb-continuation string "\n")))
+ (let ((item (concat gdb-continuation string
+ (if (not comint-input-sender-no-newline) "\n"))))
(gdb-enqueue-input item)
(setq gdb-continuation nil)))))
diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el
index cfef0eedfe..f2feff595b 100644
--- a/lisp/progmodes/perl-mode.el
+++ b/lisp/progmodes/perl-mode.el
@@ -267,8 +267,16 @@ The expansion is entirely correct because it uses the C preprocessor."
("^[ \t]*format.*=[ \t]*\\(\n\\)" (1 '(7)))
;; Funny things in sub arg specifications like `sub myfunc ($$)'
("\\<sub\\s-+\\S-+\\s-*(\\([^)]+\\))" 1 '(1))
- ;; regexp and funny quotes
- ("[?:.,;=!~({[][ \t\n]*\\(/\\)" (1 '(7)))
+ ;; Regexp and funny quotes.
+ ("\\(?:[?:.,;=!~({[]\\|\\(^\\)\\)[ \t\n]*\\(/\\)"
+ (2 (if (and (match-end 1)
+ (save-excursion
+ (goto-char (match-end 1))
+ (skip-chars-backward " \t\n")
+ (not (memq (char-before)
+ '(?? ?: ?. ?, ?\; ?= ?! ?~ ?\( ?\[)))))
+ nil ;; A division sign instead of a regexp-match.
+ '(7))))
("\\(^\\|[?:.,;=!~({[ \t]\\)\\([msy]\\|q[qxrw]?\\|tr\\)\\>\\s-*\\([^])}> \n\t]\\)"
;; Nasty cases:
;; /foo/m $a->m $#m $m @m %m