[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 6b88eaa 10/50: on-screen-treat-cut-lines, default nil (fas
From: |
Michael Heerdegen |
Subject: |
[elpa] master 6b88eaa 10/50: on-screen-treat-cut-lines, default nil (faster) |
Date: |
Mon, 09 Nov 2015 03:35:42 +0000 |
branch: master
commit 6b88eaad55b79d3071a4859c8ee67ac6dcaae202
Author: Michael Heerdegen <address@hidden>
Commit: Michael Heerdegen <address@hidden>
on-screen-treat-cut-lines, default nil (faster)
---
on-screen.el | 19 +++++++++++++++----
1 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/on-screen.el b/on-screen.el
index 7fb1da4..745cb12 100644
--- a/on-screen.el
+++ b/on-screen.el
@@ -197,6 +197,17 @@ drawn highlighting will remain fixed relative to the text
even
if you scroll further until `on-screen-delay' is over."
:group 'on-screen :type 'boolean)
+(defcustom on-screen-treat-cut-lines nil
+ "Whether to care about vertically cut lines.
+If nil, always count lines at the window start or end that are
+only partially visible as part of the visible area. Else, a
+number between 0 and 1, meaning that lines will count as visible
+when the hidden part of them is less than this number. Note that
+a non-nil value may make scrolling stuttering on slow computers."
+ :group 'on-screen
+ :type '(choice (const :tag "Count vertically cut lines as visible" nil)
+ (float :tag "Count lines with hidden part less than this as
visible"
+ :value .4)))
;;; Other variables
@@ -241,11 +252,11 @@ Type M-x customize-group on-screen RET for configuration."
(defun on-screen-window-start (&optional window)
"Like `window-start', but exclude partially visible lines."
(let* ((start (window-start window))
- (vis (pos-visible-in-window-p start window t)))
+ (vis (and on-screen-treat-cut-lines (pos-visible-in-window-p start
window t))))
(if (not (cddr vis))
start
(destructuring-bind (_x _y rtop _rbot rowh _vpos) vis
- (if (< (/ (float rtop) (+ rtop rowh)) .4) ;; count as visible
+ (if (< (/ (float rtop) (+ rtop rowh)) on-screen-treat-cut-lines) ;;
count as visible
start
(with-current-buffer (window-buffer window)
(save-excursion
@@ -256,11 +267,11 @@ Type M-x customize-group on-screen RET for configuration."
(defun on-screen-window-end (&optional window)
"Like `window-end', but exclude partially visible lines."
(let* ((end (window-end window))
- (vis (pos-visible-in-window-p (1- end) window t)))
+ (vis (and on-screen-treat-cut-lines (pos-visible-in-window-p (1- end)
window t))))
(if (not (cddr vis))
end
(destructuring-bind (_x _y _rtop rbot rowh _vpos) vis
- (if (< (/ (float rbot) (+ rbot rowh)) .4) ;; count as visible
+ (if (< (/ (float rbot) (+ rbot rowh)) on-screen-treat-cut-lines) ;;
count as visible
end
(with-current-buffer (window-buffer window)
(save-excursion
- [elpa] master updated (872014e -> 65bbd8d), Michael Heerdegen, 2015/11/08
- [elpa] master d43980c 05/50: wrapped on-screen-record-data in condition-case, Michael Heerdegen, 2015/11/08
- [elpa] master 00b25ac 06/50: minor correction, Michael Heerdegen, 2015/11/08
- [elpa] master 0caf472 02/50: increased def value of on-screen-delay, Michael Heerdegen, 2015/11/08
- [elpa] master 5120be6 04/50: mc, Michael Heerdegen, 2015/11/08
- [elpa] master 6316701 03/50: Doc and name cleanups, Michael Heerdegen, 2015/11/08
- [elpa] master 1d46de7 07/50: removed lexical-binding: t (confusing because not necessary), Michael Heerdegen, 2015/11/08
- [elpa] master 1606351 12/50: new-var on-screen-overlay-priority, Michael Heerdegen, 2015/11/08
- [elpa] master 83dd4f5 13/50: comment in on-screen-make-narrow-line-overlay, Michael Heerdegen, 2015/11/08
- [elpa] master 6b88eaa 10/50: on-screen-treat-cut-lines, default nil (faster),
Michael Heerdegen <=
- [elpa] master a898176 14/50: defface on-screen-shadow: make slightly more colorful, Michael Heerdegen, 2015/11/08
- [elpa] master cdf787a 08/50: removed optional arg of on-screen-record-ranges (not used), Michael Heerdegen, 2015/11/08
- [elpa] master be07506 01/50: Initial commit, Michael Heerdegen, 2015/11/08
- [elpa] master 6aaa211 11/50: remove visual line stuff, Michael Heerdegen, 2015/11/08
- [elpa] master c083518 09/50: added homepage to header, Michael Heerdegen, 2015/11/08
- [elpa] master dd6de11 15/50: minor change, Michael Heerdegen, 2015/11/08
- [elpa] master 38b4a11 19/50: add missing autoload for global-on-screen-mode alias, Michael Heerdegen, 2015/11/08
- [elpa] master 4f4c320 20/50: Update copyright, Michael Heerdegen, 2015/11/08
- [elpa] master 350a979 23/50: add workaround for bug#16796, Michael Heerdegen, 2015/11/08
- [elpa] master 03ddd52 16/50: after-scroll: don't remove highlighting when called in succession, Michael Heerdegen, 2015/11/08