1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-21 10:24:55 +00:00

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'.
This commit is contained in:
Alan Mackenzie 2013-03-04 19:33:23 +00:00
parent 84ac6f9d21
commit e0bc0f33bd
4 changed files with 44 additions and 24 deletions

View File

@ -1,3 +1,16 @@
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):

View File

@ -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)))

View File

@ -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))

View File

@ -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)