aboutsummaryrefslogtreecommitdiff
path: root/elisp/emms-later-do.el
diff options
context:
space:
mode:
authorBardofSprites <[email protected]>2024-09-29 14:24:31 -0400
committerBardofSprites <[email protected]>2024-09-29 14:24:31 -0400
commit7b7beacb673a85b11a6b45f597b4e074fc8b7e8d (patch)
tree2c00174cac3980f6e47c4f676d624ae0f222b364 /elisp/emms-later-do.el
parentbc9371998c564a4161cafefc82dbc693a65dda37 (diff)
remove elisp dir
Diffstat (limited to 'elisp/emms-later-do.el')
-rw-r--r--elisp/emms-later-do.el86
1 files changed, 0 insertions, 86 deletions
diff --git a/elisp/emms-later-do.el b/elisp/emms-later-do.el
deleted file mode 100644
index d41d8b1..0000000
--- a/elisp/emms-later-do.el
+++ /dev/null
@@ -1,86 +0,0 @@
-;;; emms-later-do.el --- Execute Lisp code ... later -*- lexical-binding: t; -*-
-
-;; Copyright (C) 2004-2021 Free Software Foundation, Inc.
-
-;; Author: Jorgen Schaefer <[email protected]>
-
-;; This program 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.
-
-;; This program 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 this program; if not, write to the Free Software
-;; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-;; 02110-1301 USA
-
-;;; Commentary
-
-;; This file will execute lisp code ``later on''. This way it is
-;; possible to work while elisp does some longer calculations, if you
-;; can convert those calculations into a sequence of function calls.
-
-;; 2020-09-22: Name changed from later-do to emms-later-do in order to
-;; avoid polluting the namespace.
-
-;;; Code:
-
-(defvar emms-later-do-version "0.2emms4 (2018-04-07)"
- "Version string of emms-later-do.")
-
-(defgroup emms-later-do nil
- "*Running functions ... later!"
- :prefix "emms-later-do-"
- :group 'development)
-
-(defcustom emms-later-do-interval 0.5
- "How many seconds to wait between running events."
- :type 'number)
-
-(defcustom emms-later-do-batch 20
- "How many functions to process before waiting `emms-later-do-interval'.
-The functions are processed from `emms-later-do-list'. Must be 1 or
-greater. Too high a value might make Emacs slower while the
-list is being processed."
- :type 'number)
-
-(defvar emms-later-do-list nil
- "A list of functions to be called later on.")
-
-(defvar emms-later-do-timer nil
- "The timer that emms-later-do uses.")
-
-(defun emms-later-do (function &rest args)
- "Apply FUNCTION to ARGS later on. This is an unspecified
-amount of time after this call, and definitely not while lisp is
-still executing. Code added using `emms-later-do' is guaranteed to be
-executed in the sequence it was added."
- (setq emms-later-do-list (nconc emms-later-do-list
- (list (cons function args))))
- (unless emms-later-do-timer
- (setq emms-later-do-timer
- (run-with-timer emms-later-do-interval nil 'emms-later-do-timer))))
-
-(defun emms-later-do-timer ()
- "Run the next element in `emms-later-do-list', or do nothing if it's
-empty."
- (if (null emms-later-do-list)
- (setq emms-later-do-timer nil)
- (let (res)
- (unwind-protect
- (dotimes (_b (min emms-later-do-batch (length emms-later-do-list)) res)
- (let ((fun (caar emms-later-do-list))
- (args (cdar emms-later-do-list)))
- (setq emms-later-do-list (cdr emms-later-do-list))
- (setq res (apply fun args)))))
- (setq emms-later-do-timer (run-with-timer emms-later-do-interval
- nil
- 'emms-later-do-timer)))))
-
-(provide 'emms-later-do)
-;;; emms-later-do.el ends here