mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-31 11:13:50 +00:00
Miscellaneous minor cleanups and simplifications.
* lisp/help-fns.el (describe-variable): Don't croak when doc is not found. * lisp/vc/pcvs.el (cvs-retrieve-revision): Avoid toggle-read-only. * lisp/menu-bar.el (menu-bar-line-wrapping-menu): Purecopy a tiny bit more. * lisp/emacs-lisp/syntax.el (syntax-ppss): Simplify with new `if' place. * lisp/emacs-lisp/smie.el (smie-next-sexp): CSE. * lisp/emacs-lisp/macroexp.el (macroexp-let2): Fix edebug spec and avoid ((lambda ..) ..). * lisp/emacs-lisp/eieio.el (eieio-oref, slot-value): Use simpler defsetf.
This commit is contained in:
parent
e8c1cabf03
commit
dc5d230cac
@ -1,3 +1,14 @@
|
||||
2012-06-23 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* help-fns.el (describe-variable): Don't croak when doc is not found.
|
||||
* vc/pcvs.el (cvs-retrieve-revision): Avoid toggle-read-only.
|
||||
* menu-bar.el (menu-bar-line-wrapping-menu): Purecopy a tiny bit more.
|
||||
* emacs-lisp/syntax.el (syntax-ppss): Simplify with new `if' place.
|
||||
* emacs-lisp/smie.el (smie-next-sexp): CSE.
|
||||
* emacs-lisp/macroexp.el (macroexp-let2): Fix edebug spec and avoid
|
||||
((lambda ..) ..).
|
||||
* emacs-lisp/eieio.el (eieio-oref, slot-value): Use simpler defsetf.
|
||||
|
||||
2012-06-23 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* info.el (Info-mouse-follow-link): Accept symbol values of
|
||||
|
@ -2543,10 +2543,12 @@ This is usually a symbol that starts with `:'."
|
||||
;;; Here are some CLOS items that need the CL package
|
||||
;;
|
||||
|
||||
(defsetf slot-value (obj slot) (store) (list 'eieio-oset obj slot store))
|
||||
(defsetf eieio-oref (obj slot) (store) (list 'eieio-oset obj slot store))
|
||||
(defsetf eieio-oref eieio-oset)
|
||||
;; FIXME: Not needed for Emacs>=24.2 since setf follows function aliases.
|
||||
(defsetf slot-value eieio-oset)
|
||||
|
||||
;; The below setf method was written by Arnd Kohrs <kohrs@acm.org>
|
||||
;; FIXME: Not needed for Emacs>=24.2 since setf expands macros.
|
||||
(define-setf-method oref (obj slot)
|
||||
(with-no-warnings
|
||||
(require 'cl)
|
||||
|
@ -269,11 +269,11 @@ This is like `(let ((v ,EXP)) ,EXPS) except that `v' is a new generated
|
||||
symbol which EXPS can find in VAR.
|
||||
TEST should be the name of a predicate on EXP checking whether the `let' can
|
||||
be skipped; if nil, as is usual, `macroexp-const-p' is used."
|
||||
(declare (indent 3) (debug (sexp form sexp body)))
|
||||
(declare (indent 3) (debug (sexp sexp form body)))
|
||||
(let ((bodysym (make-symbol "body"))
|
||||
(expsym (make-symbol "exp")))
|
||||
`(let* ((,expsym ,exp)
|
||||
(,var (if (,(or test #'macroexp-const-p) ,expsym)
|
||||
(,var (if (funcall #',(or test #'macroexp-const-p) ,expsym)
|
||||
,expsym (make-symbol "x")))
|
||||
(,bodysym ,(macroexp-progn exps)))
|
||||
(if (eq ,var ,expsym) ,bodysym
|
||||
|
@ -708,13 +708,12 @@ Possible return values:
|
||||
(when (zerop (length token))
|
||||
(condition-case err
|
||||
(progn (goto-char pos) (funcall next-sexp 1) nil)
|
||||
(scan-error (throw 'return
|
||||
(list t (cl-caddr err)
|
||||
(buffer-substring-no-properties
|
||||
(cl-caddr err)
|
||||
(+ (cl-caddr err)
|
||||
(if (< (point) (cl-caddr err))
|
||||
-1 1)))))))
|
||||
(scan-error
|
||||
(let ((pos (nth 2 err)))
|
||||
(throw 'return
|
||||
(list t pos
|
||||
(buffer-substring-no-properties
|
||||
pos (+ pos (if (< (point) pos) -1 1))))))))
|
||||
(if (eq pos (point))
|
||||
;; We did not move, so let's abort the loop.
|
||||
(throw 'return (list t (point))))))
|
||||
|
@ -511,10 +511,8 @@ Point is at POS when this function returns."
|
||||
(setq ppss (parse-partial-sexp
|
||||
pt-min (setq pt-min (/ (+ pt-min pos) 2))
|
||||
nil nil ppss))
|
||||
(let ((pair (cons pt-min ppss)))
|
||||
(if cache-pred
|
||||
(push pair (cdr cache-pred))
|
||||
(push pair syntax-ppss-cache))))
|
||||
(push (cons pt-min ppss)
|
||||
(if cache-pred (cdr cache-pred) syntax-ppss-cache)))
|
||||
|
||||
;; Compute the actual return value.
|
||||
(setq ppss (parse-partial-sexp pt-min pos nil nil ppss))
|
||||
|
@ -806,8 +806,12 @@ it is displayed along with the global value."
|
||||
(obsolete (get variable 'byte-obsolete-variable))
|
||||
(use (car obsolete))
|
||||
(safe-var (get variable 'safe-local-variable))
|
||||
(doc (or (documentation-property variable 'variable-documentation)
|
||||
(documentation-property alias 'variable-documentation)))
|
||||
(doc (condition-case err
|
||||
(or (documentation-property
|
||||
variable 'variable-documentation)
|
||||
(documentation-property
|
||||
alias 'variable-documentation))
|
||||
(error (format "Doc not found: %S" err))))
|
||||
(extra-line nil))
|
||||
;; Add a note for variables that have been make-var-buffer-local.
|
||||
(when (and (local-variable-if-set-p variable)
|
||||
|
@ -1126,11 +1126,12 @@ mail status in mode line"))
|
||||
(define-key menu [word-wrap]
|
||||
`(menu-item
|
||||
,(purecopy "Word Wrap (Visual Line mode)")
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(unless visual-line-mode
|
||||
(visual-line-mode 1))
|
||||
(message ,(purecopy "Visual-Line mode enabled")))
|
||||
,(purecopy
|
||||
(lambda ()
|
||||
(interactive)
|
||||
(unless visual-line-mode
|
||||
(visual-line-mode 1))
|
||||
(message "Visual-Line mode enabled")))
|
||||
:help ,(purecopy "Wrap long lines at word boundaries")
|
||||
:button (:radio . (and (null truncate-lines)
|
||||
(not (truncated-partial-width-window-p))
|
||||
|
@ -1758,7 +1758,7 @@ Signal an error if there is no backup file."
|
||||
(set-buffer-modified-p nil)
|
||||
(let ((buffer-file-name (expand-file-name file)))
|
||||
(after-find-file))
|
||||
(toggle-read-only 1)
|
||||
(setq buffer-read-only t)
|
||||
(message "Retrieving revision %s... Done" rev)
|
||||
(current-buffer))))))
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user