Merge from emacs--devo--0
Patches applied: * emacs--devo--0 (patch 638-652) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 202) - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-177
This commit is contained in:
commit
a73d7753f9
184 changed files with 27171 additions and 14227 deletions
|
@ -147,7 +147,7 @@
|
|||
;; | u16r | u24r | u32r -- little endian byte order.
|
||||
;; | str LEN -- LEN byte string
|
||||
;; | strz LEN -- LEN byte (zero-terminated) string
|
||||
;; | vec LEN -- LEN byte vector
|
||||
;; | vec LEN [TYPE] -- vector of LEN items of TYPE (default: u8)
|
||||
;; | ip -- 4 byte vector
|
||||
;; | bits LEN -- List with bits set in LEN bytes.
|
||||
;;
|
||||
|
@ -207,30 +207,24 @@
|
|||
(setq bindat-idx (1+ bindat-idx))))
|
||||
|
||||
(defun bindat--unpack-u16 ()
|
||||
(let* ((a (bindat--unpack-u8)) (b (bindat--unpack-u8)))
|
||||
(logior (lsh a 8) b)))
|
||||
(logior (lsh (bindat--unpack-u8) 8) (bindat--unpack-u8)))
|
||||
|
||||
(defun bindat--unpack-u24 ()
|
||||
(let* ((a (bindat--unpack-u16)) (b (bindat--unpack-u8)))
|
||||
(logior (lsh a 8) b)))
|
||||
(logior (lsh (bindat--unpack-u16) 8) (bindat--unpack-u8)))
|
||||
|
||||
(defun bindat--unpack-u32 ()
|
||||
(let* ((a (bindat--unpack-u16)) (b (bindat--unpack-u16)))
|
||||
(logior (lsh a 16) b)))
|
||||
(logior (lsh (bindat--unpack-u16) 16) (bindat--unpack-u16)))
|
||||
|
||||
(defun bindat--unpack-u16r ()
|
||||
(let* ((a (bindat--unpack-u8)) (b (bindat--unpack-u8)))
|
||||
(logior a (lsh b 8))))
|
||||
(logior (bindat--unpack-u8) (lsh (bindat--unpack-u8) 8)))
|
||||
|
||||
(defun bindat--unpack-u24r ()
|
||||
(let* ((a (bindat--unpack-u16r)) (b (bindat--unpack-u8)))
|
||||
(logior a (lsh b 16))))
|
||||
(logior (bindat--unpack-u16r) (lsh (bindat--unpack-u8) 16)))
|
||||
|
||||
(defun bindat--unpack-u32r ()
|
||||
(let* ((a (bindat--unpack-u16r)) (b (bindat--unpack-u16r)))
|
||||
(logior a (lsh b 16))))
|
||||
(logior (bindat--unpack-u16r) (lsh (bindat--unpack-u16r) 16)))
|
||||
|
||||
(defun bindat--unpack-item (type len)
|
||||
(defun bindat--unpack-item (type len &optional vectype)
|
||||
(if (eq type 'ip)
|
||||
(setq type 'vec len 4))
|
||||
(cond
|
||||
|
@ -274,9 +268,14 @@
|
|||
(if (stringp s) s
|
||||
(string-make-unibyte (concat s)))))
|
||||
((eq type 'vec)
|
||||
(let ((v (make-vector len 0)) (i 0))
|
||||
(let ((v (make-vector len 0)) (i 0) (vlen 1))
|
||||
(if (consp vectype)
|
||||
(setq vlen (nth 1 vectype)
|
||||
vectype (nth 2 vectype))
|
||||
(setq type (or vectype 'u8)
|
||||
vectype nil))
|
||||
(while (< i len)
|
||||
(aset v i (bindat--unpack-u8))
|
||||
(aset v i (bindat--unpack-item type vlen vectype))
|
||||
(setq i (1+ i)))
|
||||
v))
|
||||
(t nil)))
|
||||
|
@ -288,6 +287,7 @@
|
|||
(field (car item))
|
||||
(type (nth 1 item))
|
||||
(len (nth 2 item))
|
||||
(vectype (and (eq type 'vec) (nth 3 item)))
|
||||
(tail 3)
|
||||
data)
|
||||
(setq spec (cdr spec))
|
||||
|
@ -335,7 +335,7 @@
|
|||
(setq data (bindat--unpack-group (cdr case))
|
||||
cases nil)))))
|
||||
(t
|
||||
(setq data (bindat--unpack-item type len)
|
||||
(setq data (bindat--unpack-item type len vectype)
|
||||
last data)))
|
||||
(if data
|
||||
(if field
|
||||
|
@ -384,6 +384,7 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(field (car item))
|
||||
(type (nth 1 item))
|
||||
(len (nth 2 item))
|
||||
(vectype (and (eq type 'vec) (nth 3 item)))
|
||||
(tail 3))
|
||||
(setq spec (cdr spec))
|
||||
(if (and (consp field) (eq (car field) 'eval))
|
||||
|
@ -401,6 +402,13 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(setq len (apply 'bindat-get-field struct len)))
|
||||
(if (not len)
|
||||
(setq len 1))
|
||||
(while (eq type 'vec)
|
||||
(let ((vlen 1))
|
||||
(if (consp vectype)
|
||||
(setq len (* len (nth 1 vectype))
|
||||
type (nth 2 vectype))
|
||||
(setq type (or vectype 'u8)
|
||||
vectype nil))))
|
||||
(cond
|
||||
((eq type 'eval)
|
||||
(if field
|
||||
|
@ -434,7 +442,7 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(setq cases nil))))))
|
||||
(t
|
||||
(if (setq type (assq type bindat--fixed-length-alist))
|
||||
(setq len (cdr type)))
|
||||
(setq len (* len (cdr type))))
|
||||
(if field
|
||||
(setq last (bindat-get-field struct field)))
|
||||
(setq bindat-idx (+ bindat-idx len))))))))
|
||||
|
@ -478,7 +486,7 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(bindat--pack-u16r v)
|
||||
(bindat--pack-u16r (lsh v -16)))
|
||||
|
||||
(defun bindat--pack-item (v type len)
|
||||
(defun bindat--pack-item (v type len &optional vectype)
|
||||
(if (eq type 'ip)
|
||||
(setq type 'vec len 4))
|
||||
(cond
|
||||
|
@ -511,13 +519,24 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(setq bnum (1- bnum)
|
||||
j (lsh j -1))))
|
||||
(bindat--pack-u8 m))))
|
||||
((memq type '(str strz vec))
|
||||
((memq type '(str strz))
|
||||
(let ((l (length v)) (i 0))
|
||||
(if (> l len) (setq l len))
|
||||
(while (< i l)
|
||||
(aset bindat-raw (+ bindat-idx i) (aref v i))
|
||||
(setq i (1+ i)))
|
||||
(setq bindat-idx (+ bindat-idx len))))
|
||||
((eq type 'vec)
|
||||
(let ((l (length v)) (i 0) (vlen 1))
|
||||
(if (consp vectype)
|
||||
(setq vlen (nth 1 vectype)
|
||||
vectype (nth 2 vectype))
|
||||
(setq type (or vectype 'u8)
|
||||
vectype nil))
|
||||
(if (> l len) (setq l len))
|
||||
(while (< i l)
|
||||
(bindat--pack-item (aref v i) type vlen vectype)
|
||||
(setq i (1+ i)))))
|
||||
(t
|
||||
(setq bindat-idx (+ bindat-idx len)))))
|
||||
|
||||
|
@ -528,6 +547,7 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(field (car item))
|
||||
(type (nth 1 item))
|
||||
(len (nth 2 item))
|
||||
(vectype (and (eq type 'vec) (nth 3 item)))
|
||||
(tail 3))
|
||||
(setq spec (cdr spec))
|
||||
(if (and (consp field) (eq (car field) 'eval))
|
||||
|
@ -578,7 +598,7 @@ e.g. corresponding to STRUCT.FIELD1[INDEX2].FIELD3..."
|
|||
(setq cases nil))))))
|
||||
(t
|
||||
(setq last (bindat-get-field struct field))
|
||||
(bindat--pack-item last type len)
|
||||
(bindat--pack-item last type len vectype)
|
||||
))))))
|
||||
|
||||
(defun bindat-pack (spec struct &optional bindat-raw bindat-idx)
|
||||
|
|
|
@ -219,7 +219,9 @@ if you change this variable."
|
|||
;; The user may want to redefine this along with emacs-lisp-file-regexp,
|
||||
;; so only define it if it is undefined.
|
||||
(defun byte-compile-dest-file (filename)
|
||||
"Convert an Emacs Lisp source file name to a compiled file name."
|
||||
"Convert an Emacs Lisp source file name to a compiled file name.
|
||||
If FILENAME matches `emacs-lisp-file-regexp' (by default, files
|
||||
with the extension `.el'), add `c' to it; otherwise add `.elc'."
|
||||
(setq filename (byte-compiler-base-file-name filename))
|
||||
(setq filename (file-name-sans-versions filename))
|
||||
(cond ((eq system-type 'vax-vms)
|
||||
|
@ -1615,7 +1617,8 @@ This is normally set in local file variables at the end of the elisp file:
|
|||
;;;###autoload
|
||||
(defun byte-compile-file (filename &optional load)
|
||||
"Compile a file of Lisp code named FILENAME into a file of byte code.
|
||||
The output file's name is made by appending `c' to the end of FILENAME.
|
||||
The output file's name is generated by passing FILENAME to the
|
||||
`byte-compile-dest-file' function (which see).
|
||||
With prefix arg (noninteractively: 2nd arg), LOAD the file after compiling.
|
||||
The value is non-nil if there were no errors, nil if errors."
|
||||
;; (interactive "fByte compile file: \nP")
|
||||
|
|
|
@ -909,6 +909,24 @@ is the buffer position of the start of the containing expression."
|
|||
(cond ((elt state 3)
|
||||
;; Inside a string, don't change indentation.
|
||||
nil)
|
||||
((save-excursion
|
||||
;; test whether current line begins with a constant
|
||||
(goto-char indent-point)
|
||||
(skip-chars-forward " \t")
|
||||
(looking-at ":"))
|
||||
(let ((desired-indent
|
||||
(save-excursion
|
||||
(goto-char (1+ containing-sexp))
|
||||
(parse-partial-sexp (point) calculate-lisp-indent-last-sexp 0 t)
|
||||
(point)))
|
||||
(parse-sexp-ignore-comments t))
|
||||
;; Align a constant symbol under the last constant symbol
|
||||
(goto-char calculate-lisp-indent-last-sexp)
|
||||
(while (> (point) desired-indent)
|
||||
(if (looking-at ":")
|
||||
(setq desired-indent (point))
|
||||
(backward-sexp 1))))
|
||||
(current-column))
|
||||
((and (integerp lisp-indent-offset) containing-sexp)
|
||||
;; Indent by constant offset
|
||||
(goto-char containing-sexp)
|
||||
|
|
|
@ -149,7 +149,8 @@ Returns the number of actions taken."
|
|||
;; Prompt in the echo area.
|
||||
(let ((cursor-in-echo-area (not no-cursor-in-echo-area))
|
||||
(message-log-max nil))
|
||||
(message "%s(y, n, !, ., q, %sor %s) "
|
||||
(message (apply 'propertize "%s(y, n, !, ., q, %sor %s) "
|
||||
minibuffer-prompt-properties)
|
||||
prompt user-keys
|
||||
(key-description (vector help-char)))
|
||||
(if minibuffer-auto-raise
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue