Commit e0bc0f33 authored by Alan Mackenzie's avatar Alan Mackenzie

Replace `last-command-event' by `last-command-char' in XEmacs.

progmodes/cc-defs.el (c-last-command-char): New macro.
progmodes/cc-align.el (c-semi&comma-inside-parenlist)
(c-semi&comma-no-newlines-before-nonblanks)
(c-semi&comma-no-newlines-for-oneline-inliners): Use the new macro in
place of `last-command-event'.
progmodes/cc-cmds.el (c-electric-pound, c-electric-brace)
(c-electric-slash, c-electric-semi&comma, c-electric-lt-gt)
(c-electric-paren, c-electric-continued-statement): Use the new macro in
place of `last-command-event'.
parent 84ac6f9d
2013-03-04 Alan Mackenzie <acm@muc.de>
Replace `last-command-event' by `last-command-char' in XEmacs.
* progmodes/cc-defs.el (c-last-command-char): New macro.
* progmodes/cc-align.el (c-semi&comma-inside-parenlist)
(c-semi&comma-no-newlines-before-nonblanks)
(c-semi&comma-no-newlines-for-oneline-inliners): Use the new macro
in place of `last-command-event'.
* progmodes/cc-cmds.el (c-electric-pound, c-electric-brace)
(c-electric-slash, c-electric-semi&comma, c-electric-lt-gt)
(c-electric-paren, c-electric-continued-statement): Use the new
macro in place of `last-command-event'.
2013-03-04 Glenn Morris <rgm@gnu.org>
* files.el (inhibit-local-variables-regexps):
......
......@@ -1284,7 +1284,7 @@ newline is added. In either case, checking is stopped. This supports
exactly the old newline insertion behavior."
;; newline only after semicolon, but only if that semicolon is not
;; inside a parenthesis list (e.g. a for loop statement)
(if (not (eq last-command-event ?\;))
(if (not (eq (c-last-command-char) ?\;))
nil ; continue checking
(if (condition-case nil
(save-excursion
......@@ -1301,7 +1301,7 @@ If a comma was inserted, no determination is made. If a semicolon was
inserted, and the following line is not blank, no newline is inserted.
Otherwise, no determination is made."
(save-excursion
(if (and (= last-command-event ?\;)
(if (and (= (c-last-command-char) ?\;)
;;(/= (point-max)
;; (save-excursion (skip-syntax-forward " ") (point))
(zerop (forward-line 1))
......@@ -1318,13 +1318,13 @@ suppressed in one-liners, if the line is an in-class inline function.
For other semicolon contexts, no determination is made."
(let ((syntax (c-guess-basic-syntax))
(bol (save-excursion
(if (c-safe (up-list -1) t)
(c-point 'bol)
-1))))
(if (and (eq last-command-event ?\;)
(eq (car (car syntax)) 'inclass)
(eq (car (car (cdr syntax))) 'topmost-intro)
(= (c-point 'bol) bol))
(if (c-safe (up-list -1) t)
(c-point 'bol)
-1))))
(if (and (eq (c-last-command-char) ?\;)
(eq (car (car syntax)) 'inclass)
(eq (car (car (cdr syntax))) 'topmost-intro)
(= (c-point 'bol) bol))
'stop
nil)))
......
......@@ -475,7 +475,7 @@ inside a literal or a macro, nothing special happens."
(bolp (bolp)))
(beginning-of-line)
(delete-horizontal-space)
(insert last-command-event)
(insert (c-last-command-char))
(and (not bolp)
(goto-char (- (point-max) pos)))
)))
......@@ -737,7 +737,7 @@ settings of `c-cleanup-list' are done."
;; `}': clean up empty defun braces
(when (c-save-buffer-state ()
(and (memq 'empty-defun-braces c-cleanup-list)
(eq last-command-event ?\})
(eq (c-last-command-char) ?\})
(c-intersect-lists '(defun-close class-close inline-close)
syntax)
(progn
......@@ -753,14 +753,14 @@ settings of `c-cleanup-list' are done."
;; `}': compact to a one-liner defun?
(save-match-data
(when
(and (eq last-command-event ?\})
(and (eq (c-last-command-char) ?\})
(memq 'one-liner-defun c-cleanup-list)
(c-intersect-lists '(defun-close) syntax)
(c-try-one-liner))
(setq here (- (point-max) pos))))
;; `{': clean up brace-else-brace and brace-elseif-brace
(when (eq last-command-event ?\{)
(when (eq (c-last-command-char) ?\{)
(cond
((and (memq 'brace-else-brace c-cleanup-list)
(re-search-backward
......@@ -814,7 +814,7 @@ settings of `c-cleanup-list' are done."
))))
;; blink the paren
(and (eq last-command-event ?\})
(and (eq (c-last-command-char) ?\})
(not executing-kbd-macro)
old-blink-paren
(save-excursion
......@@ -851,7 +851,7 @@ is inhibited."
(when (and (not arg)
(eq literal 'c)
(memq 'comment-close-slash c-cleanup-list)
(eq last-command-event ?/)
(eq (c-last-command-char) ?/)
(looking-at (concat "[ \t]*\\("
(regexp-quote comment-end) "\\)?$"))
; (eq c-block-comment-ender "*/") ; C-style comments ALWAYS end in */
......@@ -867,7 +867,7 @@ is inhibited."
(setq indentp (and (not arg)
c-syntactic-indentation
c-electric-flag
(eq last-command-event ?/)
(eq (c-last-command-char) ?/)
(eq (char-before) (if literal ?* ?/))))
(self-insert-command (prefix-numeric-value arg))
(if indentp
......@@ -941,10 +941,10 @@ settings of `c-cleanup-list'."
(let ((pos (- (point-max) (point))))
(if (c-save-buffer-state ()
(and (or (and
(eq last-command-event ?,)
(eq (c-last-command-char) ?,)
(memq 'list-close-comma c-cleanup-list))
(and
(eq last-command-event ?\;)
(eq (c-last-command-char) ?\;)
(memq 'defun-close-semi c-cleanup-list)))
(progn
(forward-char -1)
......@@ -1101,7 +1101,7 @@ numeric argument is supplied, or the point is inside a literal."
;; Indent the line if appropriate.
(when (and c-electric-flag c-syntactic-indentation c-recognize-<>-arglists)
(setq found-delim
(if (eq last-command-event ?<)
(if (eq (c-last-command-char) ?<)
;; If a <, basically see if it's got "template" before it .....
(or (and (progn
(backward-char)
......@@ -1195,7 +1195,7 @@ newline cleanups are done if appropriate; see the variable `c-cleanup-list'."
;; clean up brace-elseif-brace
(when
(and (memq 'brace-elseif-brace c-cleanup-list)
(eq last-command-event ?\()
(eq (c-last-command-char) ?\()
(re-search-backward
(concat "}"
"\\([ \t\n]\\|\\\\\n\\)*"
......@@ -1213,7 +1213,7 @@ newline cleanups are done if appropriate; see the variable `c-cleanup-list'."
;; clean up brace-catch-brace
(when
(and (memq 'brace-catch-brace c-cleanup-list)
(eq last-command-event ?\()
(eq (c-last-command-char) ?\()
(re-search-backward
(concat "}"
"\\([ \t\n]\\|\\\\\n\\)*"
......@@ -1234,7 +1234,7 @@ newline cleanups are done if appropriate; see the variable `c-cleanup-list'."
;; space-before-funcall clean-up?
((and (memq 'space-before-funcall c-cleanup-list)
(eq last-command-event ?\()
(eq (c-last-command-char) ?\()
(save-excursion
(backward-char)
(skip-chars-backward " \t")
......@@ -1252,7 +1252,7 @@ newline cleanups are done if appropriate; see the variable `c-cleanup-list'."
;; compact-empty-funcall clean-up?
((c-save-buffer-state ()
(and (memq 'compact-empty-funcall c-cleanup-list)
(eq last-command-event ?\))
(eq (c-last-command-char) ?\))
(save-excursion
(c-safe (backward-char 2))
(when (looking-at "()")
......@@ -1281,7 +1281,7 @@ keyword on the line, the keyword is not inserted inside a literal, and
(when (c-save-buffer-state ()
(and c-electric-flag
c-syntactic-indentation
(not (eq last-command-event ?_))
(not (eq (c-last-command-char) ?_))
(= (save-excursion
(skip-syntax-backward "w")
(point))
......
......@@ -376,6 +376,13 @@ to it is returned. This function does not modify the point or the mark."
`(int-to-char ,integer)
integer))
(defmacro c-last-command-char ()
;; The last character just typed. Note that `last-command-event' exists in
;; both Emacs and XEmacs, but with confusingly different meanings.
(if (featurep 'xemacs)
'last-command-char
'last-command-event))
(defmacro c-sentence-end ()
;; Get the regular expression `sentence-end'.
(if (cc-bytecomp-fboundp 'sentence-end)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment