From: Eshel Yaron Date: Mon, 7 Oct 2024 18:44:49 +0000 (+0200) Subject: Remove some dead code X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=2a79fa7604b21b06d3530ac8db1e84f3b42df729;p=emacs.git Remove some dead code --- diff --git a/lisp/calc/calc-keypd.el b/lisp/calc/calc-keypd.el index 1e079bba37f..29e72669a80 100644 --- a/lisp/calc/calc-keypd.el +++ b/lisp/calc/calc-keypd.el @@ -294,14 +294,9 @@ (set-window-start win 1) (setq win (split-window win (+ width 7) t)) (set-window-buffer win calcbuf)) - (if (or t ; left-side keypad not yet fully implemented - (< (with-current-buffer (window-buffer old-win) - (current-column)) - (/ (window-width) 2))) - (setq win (split-window old-win (- (window-width old-win) - width 2) - t)) - (setq old-win (split-window old-win (+ width 2) t))) + (setq win (split-window old-win (- (window-width old-win) + width 2) + t)) (set-window-buffer win calc-keypad-buffer) (set-window-start win 1) (split-window win (- (window-height win) height 1)) diff --git a/lisp/calc/calc-math.el b/lisp/calc/calc-math.el index 64820149eff..186ec886d15 100644 --- a/lisp/calc/calc-math.el +++ b/lisp/calc/calc-math.el @@ -1981,19 +1981,14 @@ If this can't be done, return NIL." (if (Math-equal-int x -1) (math-imaginary (math-pi)) (math-with-extra-prec 2 - (if (or t ; need to do this even in the real case! - (memq (car-safe x) '(cplx polar))) - (let ((xp1 (math-add 1 x))) ; this gets the branch cuts right - (math-ln-raw - (math-add x (math-mul xp1 - (math-sqrt-raw - (math-div (math-sub - x - '(float 1 0)) - xp1)))))) + (let ((xp1 (math-add 1 x))) ; this gets the branch cuts right (math-ln-raw - (math-add x (math-sqrt-raw (math-add (math-sqr x) - '(float -1 0))))))))) + (math-add x (math-mul xp1 + (math-sqrt-raw + (math-div (math-sub + x + '(float 1 0)) + xp1))))))))) ((eq (car-safe x) 'sdev) (math-make-sdev (calcFunc-arccosh (nth 1 x)) (math-div (nth 2 x) diff --git a/lisp/calc/calcalg2.el b/lisp/calc/calcalg2.el index 5e9ae8a3e5a..e086243eb47 100644 --- a/lisp/calc/calcalg2.el +++ b/lisp/calc/calcalg2.el @@ -1146,22 +1146,19 @@ (let* ((c (math-sqrt (nth 2 math-t1))) (d (math-div (nth 1 math-t1) (math-mul 2 c))) (aa (math-sub (car math-t1) (math-sqr d)))) - (if (and nil (not (and (eq d 0) (eq c 1)))) + (if (math-guess-if-neg aa) (math-integrate-by-good-substitution - math-integ-expr (math-add (math-mul c math-integ-var) d)) - (if (math-guess-if-neg aa) - (math-integrate-by-good-substitution - math-integ-expr (list 'calcFunc-arccosh - (math-div-thru - (math-add (math-mul c math-integ-var) - d) - (math-sqrt (math-neg aa))))) - (math-integrate-by-good-substitution - math-integ-expr (list 'calcFunc-arcsinh - (math-div-thru - (math-add (math-mul c math-integ-var) - d) - (math-sqrt aa)))))))) + math-integ-expr (list 'calcFunc-arccosh + (math-div-thru + (math-add (math-mul c math-integ-var) + d) + (math-sqrt (math-neg aa))))) + (math-integrate-by-good-substitution + math-integ-expr (list 'calcFunc-arcsinh + (math-div-thru + (math-add (math-mul c math-integ-var) + d) + (math-sqrt aa))))))) (math-integrate-by-good-substitution math-integ-expr math-t2)) ) ;; Try integration by parts. diff --git a/lisp/calc/calccomp.el b/lisp/calc/calccomp.el index 9d9e9383c32..68a250a2c6b 100644 --- a/lisp/calc/calccomp.el +++ b/lisp/calc/calccomp.el @@ -1562,7 +1562,7 @@ Not all brackets have midpieces.") widths (cdr widths)))) (setq math-comp-hpos (+ math-comp-hpos maxwid)))) ((eq (car c) 'supscr) - (let* ((asc (or 1 (math-comp-ascent (nth 1 c)))) + (let* ((asc 1) (desc (math-comp-descent (nth 2 c))) (oldh (prog1 math-comp-hpos diff --git a/lisp/composite.el b/lisp/composite.el index b9f3855f818..74f9dfcd724 100644 --- a/lisp/composite.el +++ b/lisp/composite.el @@ -712,7 +712,7 @@ All non-spacing characters have this function in (setq i (1+ i)))) gstring)))))) -(defun compose-gstring-for-dotted-circle (gstring direction) +(defun compose-gstring-for-dotted-circle (gstring) (let* ((dc (lgstring-glyph gstring 0)) ; glyph of dotted-circle (fc (lgstring-glyph gstring 1))) ; glyph of the following char ;; Artificially compose the following glyph with the preceding diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el index ecd35c9137c..f906331a8d3 100644 --- a/lisp/emacs-lisp/cl-extra.el +++ b/lisp/emacs-lisp/cl-extra.el @@ -853,9 +853,8 @@ Call `cl--find-class' to get TYPE's propname `cl--class'" ;; FIXME: The default init form is treated differently for structs and for ;; eieio objects: for structs, the default is nil, for eieio-objects ;; it's a special "unbound" value. - (unless nil ;; (eq (cl--slot-descriptor-initform slot) eieio-unbound) - (concat " default = " - (prin1-to-string (cl--slot-descriptor-initform slot)))) + (concat " default = " + (prin1-to-string (cl--slot-descriptor-initform slot))) (when (alist-get :printer (cl--slot-descriptor-props slot)) (concat " printer = " (prin1-to-string diff --git a/lisp/emacs-lisp/oclosure.el b/lisp/emacs-lisp/oclosure.el index 165d7c4b6e8..e1fd4063b31 100644 --- a/lisp/emacs-lisp/oclosure.el +++ b/lisp/emacs-lisp/oclosure.el @@ -385,7 +385,7 @@ No checking is performed." ,@prebody ;; Add dummy code which accesses the field's vars to make sure ;; they're captured in the closure. - (if t nil ,@rovars ,@(mapcar (lambda (m) `(setq ,m ,m)) mutables)) + (progn ,@rovars ,@(mapcar (lambda (m) `(setq ,m ,m)) mutables)) ,@body))))) (defmacro oclosure-lambda (type-and-slots args &rest body) diff --git a/lisp/expand.el b/lisp/expand.el deleted file mode 100644 index f32ab101224..00000000000 --- a/lisp/expand.el +++ /dev/null @@ -1,489 +0,0 @@ -;;; expand.el --- make abbreviations more usable -*- lexical-binding: t -*- - -;; Copyright (C) 1995-1996, 2001-2024 Free Software Foundation, Inc. - -;; Author: Frederic Lepied -;; Maintainer: emacs-devel@gnu.org -;; Keywords: abbrev - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see . - -;;; Commentary: -;; -;; This package defines abbrevs which expand into structured constructs -;; for certain languages. The construct is indented for you, -;; and contains slots for you to fill in other text. - -;; These abbrevs expand only at the end of a line and when not in a comment -;; or a string. -;; -;; Look at the Sample: section for emacs-lisp, perl and c expand lists. -;; For example for c-mode, you could declare your abbrev table with : -;; -;; (defconst c-expand-list -;; '(("if" "if () {\n \n} else {\n \n}" (5 10 21)) -;; ("ifn" "if () {}" (5 8)) -;; ("uns" "unsigned ") -;; ("for" "for(; ; ) {\n\n}" (5 7 9 13)) -;; ("switch" "switch () {\n\n}" (9 13)) -;; ("case" "case :\n\nbreak;\n" (6 8 16)) -;; ("do" "do {\n\n} while ();" (6 16)) -;; ("while" "while () {\n\n}" (8 12)) -;; ("default" "default:\n\nbreak;" 10) -;; ("main" "int\nmain(int argc, char * argv[])\n{\n\n}\n" 37)) -;; "Expansions for C mode") -;; -;; and enter Abbrev mode with the following hook : -;; -;; (add-hook 'c-mode-hook -;; (lambda () -;; (expand-add-abbrevs c-mode-abbrev-table c-expand-list) -;; (abbrev-mode 1))) -;; -;; you can also init some post-process hooks : -;; -;; (add-hook 'expand-expand-hook 'indent-according-to-mode) -;; (add-hook 'expand-jump-hook 'indent-according-to-mode) -;; -;; Remarks: -;; -;; Many thanks to Heddy Boubaker , -;; Jerome Santini , -;; Jari Aalto . -;; -;;; Code: - -;;; Constants: - -(defgroup expand nil - "Make abbreviations more usable." - :group 'abbrev) - -(defcustom expand-load-hook nil - "Hooks run when `expand.el' is loaded." - :type 'hook) -(make-obsolete-variable 'expand-load-hook - "use `with-eval-after-load' instead." "28.1") - -(defcustom expand-expand-hook nil - "Hooks run when an abbrev made by `expand-add-abbrevs' is expanded." - :type 'hook) - -(defcustom expand-jump-hook nil - "Hooks run by `expand-jump-to-previous-slot' and `expand-jump-to-next-slot'." - :type 'hook) - -;;; Samples: - -(define-skeleton expand-c-for-skeleton "For loop skeleton." - "Loop var: " - "for(" str _ @ "=0; " str @ "; " str @ ") {" \n - @ _ \n - "}" > \n) - -(defconst expand-c-sample-expand-list - '(("if" "if () {\n \n} else {\n \n}" (5 10 21)) - ("ifn" "if () {}" (5 8)) - ("uns" "unsigned ") - ("for" expand-c-for-skeleton) - ("switch" "switch () {\n\n}" (9 13)) - ("case" "case :\n\nbreak;\n" (6 8 16)) - ("do" "do {\n\n} while ();" (6 16)) - ("while" "while () {\n\n}" (8 12)) - ("default" "default:\n\nbreak;" 10) - ("main" "int\nmain(int argc, char * argv[])\n{\n\n}\n" 37)) - "Expansions for C mode. See `expand-add-abbrevs'.") - -;; lisp example from Jari Aalto -(defconst expand-sample-lisp-mode-expand-list - (list - (list - "defu" - (concat - "(defun ()\n" - " \"\"\n" - " (interactive)\n" - " (let* (\n" - " )\n" - " \n" - " ))") - (list 8 11 16 32 43 59)) - - (list - "defs" - (concat - "(defsubst ()\n" - " \"\"\n" - " (interactive)\n" - " )") - (list 11 14 19 23 39)) - - (list - "defm" - (concat - "(defmacro ()\n" - " \"\"\n" - " `( \n" - " ))") - (list 11 13 18 25)) - - (list - "defa" - (concat - "(defadvice (around act)\n" - " \"\"\n" - " \n" - " )") - (list 12 22 32 36)) - - (list - "defc" - "(defconst nil\n \"\")\n" - (list 11 13 20)) - - (list - "defv" - "(defvar nil\n \"\")\n" - (list 9 11 18)) - - (list - "let" - "(let* (\n)\n " - (list 8 13)) - - (list - "sav" - "(save-excursion\n \n)" - (list 18)) - - (list - "aut" - "(autoload ' \"\" t t)\n" - (list 12 14)) - - ) - "Expansions for Lisp mode. See `expand-add-abbrevs'.") - -;; perl example from Jari Aalto -(defconst expand-sample-perl-mode-expand-list - (list - (list - ;; This is default perl4 subroutine template - ;; - "sub" - (concat - "#" (make-string 70 ?-) "\n" - "sub {\n" - " # DESCRIPTION\n" - " # \n" - " # \n" - " # INPUT\n" - " # \n" - " # \n" - " # RETURN\n" - " # \n" - "\n" - " local( $f ) = \"$lib.\";\n" ;; Function name AFTER period - " local() = @_;\n" ;; func arguments here - " \n" - " \n}\n" - ) - (list 77 88 120 146 159 176)) - - (list - "for" ; foreach - (concat - "for ( )\n" - "{\n\n}" - ) - (list 7 12)) - - (list - "whi" ; foreach - (concat - "while ( )\n" - "{\n\n}" - ) - (list 9 15)) - - - ;; The normal "if" can be used like - ;; print $F "xxxxxx" if defined @arr; - ;; - (list - "iff" - (concat - "if ( )\n" - "{\n\n}" - ) - (list 6 12)) - - (list "loc" "local( $ );" (list 9)) - (list "my" "my( $ );" (list 6)) - (list "ope" "open(,\"\")\t|| die \"$f: Can't open [$]\";" (list 6 8 36)) - (list "clo" "close ;" 7) - (list "def" "defined " (list 9)) - (list "und" "undef ;" (list 7)) - - ;; There is no ending colon, because they can be in statement - ;; defined $REXP_NOT_NEW && (print "xxxxx" ); - ;; - (list "pr" "print " 7) - (list "pf" "printf " 8) - - - (list "gre" "grep( //, );" (list 8 11)) - (list "pus" "push( , );" (list 7 9)) - (list "joi" "join( '', );" (list 7 11)) - (list "rtu" "return ;" (list 8)) - - ) - "Expansions for Perl mode. See `expand-add-abbrevs'.") - -;;; Code: - -;;;###autoload -(defun expand-add-abbrevs (table abbrevs) - "Add a list of abbreviations to abbrev table TABLE. -ABBREVS is a list of abbrev definitions; each abbrev description entry -has the form (ABBREV EXPANSION ARG). - -ABBREV is the abbreviation to replace. - -EXPANSION is the replacement string or a function which will make the -expansion. For example, you could use the DMacros or skeleton packages -to generate such functions. - -ARG is an optional argument which can be a number or a list of -numbers. If ARG is a number, point is placed ARG chars from the -beginning of the expanded text. - -If ARG is a list of numbers, point is placed according to the first -member of the list, but you can visit the other specified positions -cyclically with the functions `expand-jump-to-previous-slot' and -`expand-jump-to-next-slot'. - -If ARG is omitted, point is placed at the end of the expanded text." - - (if (null abbrevs) - table - (expand-add-abbrev table (nth 0 (car abbrevs)) (nth 1 (car abbrevs)) - (nth 2 (car abbrevs))) - (expand-add-abbrevs table (cdr abbrevs)))) - -(defvar expand-list nil "Temporary variable used by the Expand package.") - -(defvar-local expand-pos nil - "If non-nil, store a vector with position markers defined by the last expansion.") - -(defvar-local expand-index 0 - "Index of the last marker used in `expand-pos'.") - -(defvar-local expand-point nil - "End of the expanded region.") - -(defun expand-add-abbrev (table abbrev expansion arg) - "Add one abbreviation and provide the hook to move to the specified positions." - (let* ((string-exp (if (and (symbolp expansion) (fboundp expansion)) - nil - expansion)) - (position (if (and arg string-exp) - (if (listp arg) - (- (length expansion) (1- (car arg))) - (- (length expansion) (1- arg))) - 0))) - (define-abbrev - table - abbrev - (vector string-exp - position - (if (and (listp arg) - (not (null arg))) - (cons (length string-exp) arg) - nil) - (if (and (symbolp expansion) (fboundp expansion)) - expansion - nil)) - 'expand-abbrev-hook))) - -(put 'expand-abbrev-hook 'no-self-insert t) -;;;###autoload -(defun expand-abbrev-hook () - "Abbrev hook used to do the expansion job of expand abbrevs. -See `expand-add-abbrevs'. Value is non-nil if expansion was done." - ;; Expand only at the end of a line if we are near a word that has - ;; an abbrev built from expand-add-abbrev. - (if (and (eolp) - (not (expand-in-literal))) - (let ((p (point))) - (setq expand-point nil) - ;; don't expand if the preceding char isn't a word constituent - (if (and (eq (char-syntax (preceding-char)) - ?w) - (expand-do-expansion)) - (progn - ;; expand-point tells us if we have inserted the text - ;; ourself or if it is the hook which has done the job. - (if expand-point - (progn - (if (vectorp expand-list) - (expand-build-marks expand-point)) - (indent-region p expand-point nil)) - ;; an outside function can set expand-list to a list of - ;; markers in reverse order. - (if (listp expand-list) - (setq expand-index 0 - expand-pos (expand-list-to-markers expand-list) - expand-list nil))) - (run-hooks 'expand-expand-hook) - t) - nil)) - nil)) - -(defun expand-do-expansion () - (delete-char (- (length last-abbrev-text))) - (let* ((vect (symbol-value last-abbrev)) - (text (aref vect 0)) - (position (aref vect 1)) - (jump-args (aref vect 2)) - (hook (aref vect 3))) - (cond (text - (insert text) - (setq expand-point (point)))) - (if jump-args - (funcall #'expand-build-list (car jump-args) (cdr jump-args))) - (if position - (backward-char position)) - (if hook - (funcall hook)) - t)) - -(defun expand-abbrev-from-expand (word) - "Test if an abbrev has a hook." - (or - (and (intern-soft word local-abbrev-table) - (symbol-function (intern-soft word local-abbrev-table))) - (and (intern-soft word global-abbrev-table) - (symbol-function (intern-soft word global-abbrev-table))))) - -(defun expand-previous-word () - "Return the previous word." - (save-excursion - (let ((p (point))) - (backward-word 1) - (buffer-substring p (point))))) - -;;;###autoload -(defun expand-jump-to-previous-slot () - "Move the cursor to the previous slot in the last abbrev expansion. -This is used only in conjunction with `expand-add-abbrevs'." - (interactive) - (if expand-pos - (progn - (setq expand-index (1- expand-index)) - (if (< expand-index 0) - (setq expand-index (1- (length expand-pos)))) - (goto-char (aref expand-pos expand-index)) - (run-hooks 'expand-jump-hook)))) - -;;;###autoload -(defun expand-jump-to-next-slot () - "Move the cursor to the next slot in the last abbrev expansion. -This is used only in conjunction with `expand-add-abbrevs'." - (interactive) - (if expand-pos - (progn - (setq expand-index (1+ expand-index)) - (if (>= expand-index (length expand-pos)) - (setq expand-index 0)) - (goto-char (aref expand-pos expand-index)) - (run-hooks 'expand-jump-hook)))) - -;;;###autoload (define-key abbrev-map "p" 'expand-jump-to-previous-slot) -;;;###autoload (define-key abbrev-map "n" 'expand-jump-to-next-slot) - -(defun expand-build-list (len l) - "Build a vector of offset positions from the list of positions." - (expand-clear-markers) - (setq expand-list (vconcat l)) - (let ((i 0) - (lenlist (length expand-list))) - (while (< i lenlist) - (aset expand-list i (- len (1- (aref expand-list i)))) - (setq i (1+ i))))) - -(defun expand-build-marks (p) - "Transform the offsets vector into a marker vector." - (if expand-list - (progn - (setq expand-index 0) - (setq expand-pos (make-vector (length expand-list) nil)) - (let ((i (1- (length expand-list)))) - (while (>= i 0) - (aset expand-pos i (copy-marker (- p (aref expand-list i)))) - (setq i (1- i)))) - (setq expand-list nil)))) - -(defun expand-clear-markers () - "Make the markers point nowhere." - (if expand-pos - (progn - (let ((i (1- (length expand-pos)))) - (while (>= i 0) - (set-marker (aref expand-pos i) nil) - (setq i (1- i)))) - (setq expand-pos nil)))) - -(defun expand-in-literal () - "Test if we are in a comment or in a string." - (save-excursion - (let* ((lim (or (save-excursion - (beginning-of-defun) - (point)) - (point-min))) - (state (parse-partial-sexp lim (point)))) - (cond - ((nth 3 state) 'string) - ((nth 4 state) 'comment) - (t nil))))) - -;; support functions to add marks to jump from outside function - -(defun expand-list-to-markers (l) - "Transform a list of markers in reverse order into a vector in the correct order." - (let* ((len (1- (length l))) - (loop len) - (v (make-vector (+ len 1) nil))) - (while (>= loop 0) - (aset v loop (if (markerp (car l)) (car l) (copy-marker (car l)))) - (setq l (cdr l) - loop (1- loop))) - v)) - -;; integration with skeleton.el -;; Used in `skeleton-end-hook' to fetch the positions for @ skeleton tags. -;; See `skeleton-insert'. -(defun expand-skeleton-end-hook () - (if skeleton-positions - (setq expand-list skeleton-positions))) - -(add-hook 'skeleton-end-hook (function expand-skeleton-end-hook)) - -(provide 'expand) - -(run-hooks 'expand-load-hook) - -;;; expand.el ends here diff --git a/lisp/ido.el b/lisp/ido.el index 100d7aa8004..2a828fc0bc8 100644 --- a/lisp/ido.el +++ b/lisp/ido.el @@ -3343,32 +3343,21 @@ instead removed from the current item list." (let ((re (concat (regexp-quote (substring text 0 -1)) "[^/:]*/\\'")) (dirs ido-dir-file-cache) dir b d f) - (if nil ;; simple - (while dirs - (setq dir (car (car dirs)) - dirs (cdr dirs)) - (when (and (string-match re dir) - (not (ido-ignore-item-p dir ido-ignore-directories-merge)) - (file-directory-p dir)) - (setq b (substring dir 0 -1) - f (concat (file-name-nondirectory b) "/") - d (file-name-directory b) - res (cons (cons f d) res)))) - (while dirs - (setq dir (car dirs) - d (car dir) - dirs (cdr dirs)) - (when (not (ido-ignore-item-p d ido-ignore-directories-merge)) - (setq dir (cdr (cdr dir))) - (while dir - (setq f (car dir) - dir (cdr dir)) - (if (and (string-match re f) - (not (ido-ignore-item-p f ido-ignore-directories))) - (setq res (cons (cons f d) res))))) - (if (and auto (input-pending-p)) - (setq dirs nil - res t)))))) + (while dirs + (setq dir (car dirs) + d (car dir) + dirs (cdr dirs)) + (when (not (ido-ignore-item-p d ido-ignore-directories-merge)) + (setq dir (cdr (cdr dir))) + (while dir + (setq f (car dir) + dir (cdr dir)) + (if (and (string-match re f) + (not (ido-ignore-item-p f ido-ignore-directories))) + (setq res (cons (cons f d) res))))) + (if (and auto (input-pending-p)) + (setq dirs nil + res t))))) (if wide (setq res (ido-wide-find-dirs-or-files ido-current-directory text ido-enable-prefix nil)) diff --git a/lisp/mpc.el b/lisp/mpc.el index bcf027b391c..751d5a95178 100644 --- a/lisp/mpc.el +++ b/lisp/mpc.el @@ -219,33 +219,29 @@ PORT defaults to 6600 and HOST defaults to localhost." (defun mpc--proc-filter (proc string) (mpc--debug "Receive \"%s\"" string) (with-current-buffer (process-buffer proc) - (if (process-get proc 'ready) - (if nil ;; (string-match "\\`\\(OK\n\\)+\\'" string) - ;; I haven't figured out yet why I get those extraneous OKs, - ;; so I'll just ignore them for now. - nil - (delete-process proc) - (set-process-buffer proc nil) - (pop-to-buffer (clone-buffer)) - (error "MPD output while idle!?")) - (save-excursion - (let ((start (or (marker-position (process-mark proc)) (point-min)))) - (goto-char start) - (insert string) - (move-marker (process-mark proc) (point)) - (beginning-of-line) - (when (and (< start (point)) - (re-search-backward mpc--proc-end-re start t)) - (process-put proc 'ready t) - (unless (eq (match-end 0) (point-max)) - (error "Unexpected trailing text")) - (let ((error-text (match-string 1))) - (delete-region (point) (point-max)) - (let ((callback (process-get proc 'callback))) - (process-put proc 'callback nil) - (if error-text - (process-put proc 'mpc-proc-error error-text)) - (funcall callback))))))))) + (when (process-get proc 'ready) + (delete-process proc) + (set-process-buffer proc nil) + (pop-to-buffer (clone-buffer)) + (error "MPD output while idle!?")) + (save-excursion + (let ((start (or (marker-position (process-mark proc)) (point-min)))) + (goto-char start) + (insert string) + (move-marker (process-mark proc) (point)) + (beginning-of-line) + (when (and (< start (point)) + (re-search-backward mpc--proc-end-re start t)) + (process-put proc 'ready t) + (unless (eq (match-end 0) (point-max)) + (error "Unexpected trailing text")) + (let ((error-text (match-string 1))) + (delete-region (point) (point-max)) + (let ((callback (process-get proc 'callback))) + (process-put proc 'callback nil) + (if error-text + (process-put proc 'mpc-proc-error error-text)) + (funcall callback)))))))) (defun mpc--proc-connect (host) (let ((port 6600) @@ -659,13 +655,7 @@ The songs are returned as alists." ;; If `tag' is not one of the expected tags, MPD burps ;; about not having the relevant table. FIXME: check ;; the kind of error. - (error "Unknown tag %s" tag) - (let ((res ())) - (setq value (cons tag value)) - (dolist (song (mpc-proc-buf-to-alists - (mpc-proc-cmd "listallinfo"))) - (if (member value song) (push song res))) - res))))) + (error "Unknown tag %s" tag))))) mpc--find-memoize))) (defun mpc-cmd-list (tag &optional other-tag value) @@ -761,8 +751,7 @@ The songs are returned as alists." ;; If `tag' is not one of the expected tags, MPD burps about not ;; having the relevant table. ;; FIXME: check the kind of error. - (error "MPD does not know this tag %s" tag) - (mpc-assq-all tag (mpc-proc-cmd-to-alist "listallinfo"))))) + (error "MPD does not know this tag %s" tag)))) (t (condition-case nil (if (mpc-cmd-special-tag-p other-tag) diff --git a/lisp/treesit.el b/lisp/treesit.el index 5b763d0a9ce..f1b525375cc 100644 --- a/lisp/treesit.el +++ b/lisp/treesit.el @@ -1078,9 +1078,6 @@ name, it is ignored." (when (not (memq flag '(t nil append prepend keep))) (signal 'treesit-font-lock-error `("Value of :override should be one of t, nil, append, prepend, keep" - ,flag)) - (signal 'wrong-type-argument - `((or t nil append prepend keep) ,flag))) (setq current-override flag))) (:feature @@ -3751,8 +3748,7 @@ content as signal data, and erase buffer afterwards." (nthcdr 4 args)) " ") "Error output:" - (buffer-string))) - (erase-buffer))) + (buffer-string))))) (defun treesit--git-checkout-branch (repo-dir revision) "Checkout REVISION in a repo located in REPO-DIR." diff --git a/lisp/window.el b/lisp/window.el index 115eafb094b..68d599c0aa1 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -1310,67 +1310,9 @@ it is found." (dolist (frame (frame-list)) (window--sides-verticalize-frame frame))) -(defun window--sides-check-failed (frame) - "Helper function for `window--sides-check'." - (catch 'failed - ;; FRAME must have a main window. - (unless (window-main-window frame) - (error "Frame %s has no main window" frame) - (throw 'failed t)) - ;; Now check the side windows. - (dolist (side '(left top right bottom)) - (let ((window (window-with-parameter 'window-side side frame t))) - (when window - ;; If WINDOW is live there must be no other window on this frame - ;; with the same `window-side' parameter. - (if (window-live-p window) - (walk-window-tree - (lambda (this) - (when (and (eq (window-parameter this 'window-side) side) - (not (eq this window))) - (error "Window %s has same side %s as window %s but no common parent" - this side window) - (throw 'failed t))) - frame t 'nomini) - (walk-window-tree - (lambda (this) - (if (eq (window-parent this) window) - (unless (eq (window-parameter this 'window-side) side) - (error "Window %s has not same side %s as its parent %s" - this side window) - (throw 'failed t)) - (when (and (eq (window-parameter this 'window-side) side) - (not (eq this window))) - (error "Window %s has same side %s as major side window %s but its parent is %s" - this side window (window-parent this)) - (throw 'failed t)))) - frame t 'nomini))))))) - -(defun window--sides-check (frame) - "Check side windows configuration of FRAME. -In a valid side windows configuration there can be at most one -internal side window on each side and all its children must be -live and have the same `window-side' parameter and no other -window with the same `window-side' parameter exists on FRAME. If -there is no such internal window, there may be at most one window -with this side's `window-side' parameter on FRAME. - -If the configuration is invalid, reset the `window-side' -parameters of all windows on FRAME." - (when (and (not window--sides-inhibit-check) - (window-with-parameter 'window-side nil frame t) - (window--sides-check-failed frame)) - ;; Reset all `window-side' parameters. - (walk-window-tree - (lambda (window) - (set-window-parameter window 'window-side nil)) - frame t 'nomini) - (message "Side windows configuration reset for frame %s" frame))) - (defun window--check (&optional frame) "Check atomic and side windows on FRAME. FRAME defaults to the selected frame." - (window--sides-check frame) (window--atom-check frame)) ;; Dumping frame/window contents.