aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes/octave-mod.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/progmodes/octave-mod.el')
-rw-r--r--lisp/progmodes/octave-mod.el12
1 files changed, 9 insertions, 3 deletions
diff --git a/lisp/progmodes/octave-mod.el b/lisp/progmodes/octave-mod.el
index f97b595b62..2b95c85b41 100644
--- a/lisp/progmodes/octave-mod.el
+++ b/lisp/progmodes/octave-mod.el
@@ -626,6 +626,9 @@ the end keyword."
(delete-horizontal-space)
(insert (concat " " octave-continuation-string))))
+(defvar octave-xemacs-p
+ (string-match "XEmacs\\|Lucid" emacs-version))
+
;;; Comments
(defun octave-comment-region (beg end &optional arg)
"Comment or uncomment each line in the region as Octave code.
@@ -1337,9 +1340,12 @@ Note that all Octave mode abbrevs start with a grave accent."
(self-insert-command 1)
(let (c)
(insert last-command-char)
- (if (or (eq (setq c (read-event)) ??)
- (eq c help-char))
- (let ((abbrev-table-name-list '(octave-mode-abbrev-table)))
+ (if (if octave-xemacs-p
+ (or (eq (event-to-character (setq c (next-event))) ??)
+ (eq (event-to-character c) help-char))
+ (or (eq (setq c (read-event)) ??)
+ (eq c help-char)))
+ (let ((abbrev-table-name-list '(octave-abbrev-table)))
(list-abbrevs))
(setq unread-command-events (list c))))))