[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/posframe 60069dc 1/6: Add posframe-benchmark.el
From: |
ELPA Syncer |
Subject: |
[elpa] externals/posframe 60069dc 1/6: Add posframe-benchmark.el |
Date: |
Wed, 2 Jun 2021 21:57:20 -0400 (EDT) |
branch: externals/posframe
commit 60069dc0699c5bee6b2c0f6ea7da381df091cece
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>
Add posframe-benchmark.el
---
posframe-benchmark.el | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)
diff --git a/posframe-benchmark.el b/posframe-benchmark.el
new file mode 100644
index 0000000..aae6692
--- /dev/null
+++ b/posframe-benchmark.el
@@ -0,0 +1,66 @@
+;;; posframe-benchmark.el --- Benchmark tool for posframe -*-
lexical-binding:t -*-
+
+;; Copyright (C) 2018-2020 Free Software Foundation, Inc.
+
+;; Author: Feng Shu <tumashu@163.com>
+;; Maintainer: Feng Shu <tumashu@163.com>
+;; URL: https://github.com/tumashu/posframe
+;; Version: 1.0.3
+;; Keywords: convenience, tooltip
+;; Package-Requires: ((emacs "26"))
+
+;; 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 <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;; Code:
+(require 'cl-lib)
+(require 'posframe)
+
+(defun posframe-benchmark ()
+ "Benchmark tool for posframe."
+ (interactive)
+ (let ((str (with-temp-buffer
+ (insert-file-contents (locate-library "posframe.el"))
+ (buffer-string)))
+ (n 10000))
+
+ (message "\n* Benchmark `font-at' %s times ..." n)
+ (benchmark n '(font-at (point-min)))
+
+ (message "\n* Benchmark `redraw-display' %s times ..." n)
+ (benchmark n '(redraw-display))
+
+ (message "\n* Benchmark `remove-text-properties' %s times ..." n)
+ (benchmark n `(remove-text-properties
+ 0 (length str) '(read-only t)
+ ,str))
+
+ (message "\n* Benchmark `posframe--mouse-banish' %s times ..." n)
+ (benchmark n `(posframe--mouse-banish (window-frame)))
+
+ (message "\n* Benchmark `mouse-position' %s times ..." n)
+ (benchmark n '(mouse-position))
+
+ (message "\n* Benchmark `default-font-width' %s times ..." n)
+ (benchmark n '(default-font-width))
+
+ (message "\n Finished.")))
+
+
+(provide 'posframe-benchmark)
+
+;;; posframe.el ends here
- [elpa] externals/posframe updated (cb86df8 -> c54ff5a), ELPA Syncer, 2021/06/02
- [elpa] externals/posframe 60069dc 1/6: Add posframe-benchmark.el,
ELPA Syncer <=
- [elpa] externals/posframe cf2391b 2/6: Update posframe-benchmark.el, ELPA Syncer, 2021/06/02
- [elpa] externals/posframe faa90e0 5/6: * posframe-benchmark.el (posframe-benchmark-alist): Add set-mouse-position benchmark., ELPA Syncer, 2021/06/02
- [elpa] externals/posframe 54f3f58 3/6: * posframe-benchmark.el (posframe-benchmark-alist): Fix remove-text-properties benchmark., ELPA Syncer, 2021/06/02
- [elpa] externals/posframe bba0fd3 4/6: * posframe-benchmark.el (posframe-benchmark): Improve., ELPA Syncer, 2021/06/02
- [elpa] externals/posframe c54ff5a 6/6: * posframe-benchmark.el (posframe-benchmark-alist): Add frame-parameter benchmark., ELPA Syncer, 2021/06/02