[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] scratch/add-vdiff 1102da8 129/258: Avoid subtraction overlays lar
From: |
Justin Burkett |
Subject: |
[elpa] scratch/add-vdiff 1102da8 129/258: Avoid subtraction overlays larger than window-height |
Date: |
Wed, 17 May 2017 08:13:37 -0400 (EDT) |
branch: scratch/add-vdiff
commit 1102da8c1d9a3b7d18e31047bb83e7b204effb81
Author: justbur <address@hidden>
Commit: justbur <address@hidden>
Avoid subtraction overlays larger than window-height
---
vdiff.el | 28 +++++++++++++++++++++-------
1 file changed, 21 insertions(+), 7 deletions(-)
diff --git a/vdiff.el b/vdiff.el
index 3208adf..b8721d9 100644
--- a/vdiff.el
+++ b/vdiff.el
@@ -562,13 +562,27 @@ of a \"word\"."
'vdiff--insertion-arrow vdiff--insertion-arrow-bits nil 8 'top)
(defun vdiff--make-subtraction-string (n-lines)
- (let ((n-lines (if (eq 'single vdiff-subtraction-style)
- 1
- n-lines))
- string)
- (dotimes (_ n-lines)
- (push (make-string (1- (vdiff--min-window-width))
- vdiff-subtraction-fill-char) string))
+ (let* ((width (1- (vdiff--min-window-width)))
+ (win-height (window-height))
+ (max-lines (floor (* 0.7 win-height)))
+ (truncate (> n-lines max-lines))
+ (trunc-n-lines
+ (cond ((eq 'single vdiff-subtraction-style) 1)
+ (truncate max-lines)
+ (t n-lines)))
+ (truncate-prefix-len 2)
+ string truncate-message)
+ (dotimes (_ trunc-n-lines)
+ (push (make-string width vdiff-subtraction-fill-char) string))
+ (when truncate
+ (setq truncate-message (format " +%d lines " (- n-lines trunc-n-lines)))
+ (push (concat (make-string truncate-prefix-len
vdiff-subtraction-fill-char)
+ truncate-message
+ (make-string (- width truncate-prefix-len
+ (length truncate-message))
+ vdiff-subtraction-fill-char))
+ string)
+ (setq string (nreverse string)))
(if (eq vdiff-subtraction-style 'fringe)
(propertize
" "
- [elpa] scratch/add-vdiff f041c58 102/258: Sync lines after sending changes, (continued)
- [elpa] scratch/add-vdiff f041c58 102/258: Sync lines after sending changes, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 88ce867 088/258: Initial attempt at refine commands, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff f3ca6cb 110/258: Tweak vscroll function, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 84380fb 113/258: Delete unused lexical vars, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 40351c6 079/258: Exit hydra on vdiff exit, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 4bb84e4 073/258: Add update command to hydra, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 81478be 117/258: Lock diff data for certain operations, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 20bd4b4 092/258: Change terminology, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 3d8e224 127/258: Simplify insertion arrow code, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff bd80900 126/258: Merge pull request #7 from syohex/fix-package, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 1102da8 129/258: Avoid subtraction overlays larger than window-height,
Justin Burkett <=
- [elpa] scratch/add-vdiff 7135738 132/258: Version 0.1, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 2e7f076 141/258: Simplify bitmap creation, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 001ae43 152/258: Fix modification of buffer list, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 477eb88 161/258: Fix refinement bug, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff f1eca80 165/258: Disable refine-all-hunks for diff3, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 30b85fe 164/258: Fix sending changes with diff3, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 816fe2a 182/258: Fix subtraction string width, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 582d13d 180/258: Fix compiler warnings, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff cd9dad4 191/258: Fix refresh function call sequence, Justin Burkett, 2017/05/17
- [elpa] scratch/add-vdiff 2847cd6 183/258: Add callback support on quit, Justin Burkett, 2017/05/17