[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/visual-fill-column ccecfac6ca 029/137: Handle window split
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/visual-fill-column ccecfac6ca 029/137: Handle window splitting. |
Date: |
Sun, 2 Jan 2022 22:59:09 -0500 (EST) |
branch: elpa/visual-fill-column
commit ccecfac6cafec73285c1b047f36ecf0693f3a553
Author: Joost Kremers <joostkremers@fastmail.fm>
Commit: Joost Kremers <joostkremers@fastmail.fm>
Handle window splitting.
(visual-fill-column--split-window): new function, for use in
`split-window' window parameter. Unsets the window margins before trying
to split a window. Code kindly provided by Martin Rudalics, see
<https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01158.html>.
---
visual-fill-column.el | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/visual-fill-column.el b/visual-fill-column.el
index f14f4a8d67..e5ef650f63 100644
--- a/visual-fill-column.el
+++ b/visual-fill-column.el
@@ -1,6 +1,7 @@
;;; visual-fill-column.el --- fill-column for visual-line-mode -*-
lexical-binding: t -*-
;; Copyright (C) 2015-2016 Joost Kremers
+;; Copyright (C) 2016 Martin Rudalics
;; All rights reserved.
;; Author: Joost Kremers <joostkremers@fastmail.fm>
@@ -95,9 +96,29 @@ in which `visual-line-mode' is active as well."
(set-window-fringes (selected-window) nil)
(set-window-margins (selected-window) 0 0))
+(defun visual-fill-column--split-window (window size side)
+ "Split WINDOW, unsetting its margins first.
+SIZE and SIDE are passed on to `split-window'. This function is
+for use in the window parameter `split-window'."
+ (let ((horizontal (memq side '(t left right)))
+ margins new)
+ (when horizontal
+ ;; Reset margins.
+ (setq margins (window-margins window))
+ (set-window-margins window nil nil))
+ ;; Now try to split the window.
+ (set-window-parameter window 'split-window nil)
+ (unwind-protect
+ (setq new (split-window window size side))
+ (set-window-parameter window 'split-window
'visual-fill-column--split-window)
+ ;; Restore old margins if we failed.
+ (when (and horizontal (not new))
+ (set-window-margins window (car margins) (cdr margins))))))
+
(defun visual-fill-column--adjust-window ()
"Adjust the window margins and fringes."
(set-window-fringes (selected-window) nil nil
visual-fill-column-fringes-outside-margins)
+ (set-window-parameter nil 'split-window #'visual-fill-column--split-window)
(visual-fill-column--set-margins))
(defun visual-fill-column--window-max-text-width (&optional window)
- [nongnu] elpa/visual-fill-column 8b98476819 018/137: Update README.md, (continued)
- [nongnu] elpa/visual-fill-column 8b98476819 018/137: Update README.md, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 5908ad2422 019/137: Use package name in installation instructions, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 7ec32c974a 027/137: Some optical code improvements., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 6e6b71177d 025/137: Make calls to `add-hook' a bit more self-documenting., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 4223f9b6f9 034/137: Add PIXELWISE argument to visual-fill-column-split-window, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 62ecc38450 036/137: Make arguments of `visual-fill-column--split-window' optional., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 54b941caa6 057/137: Fix code quote in README., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 4b903a0adb 002/137: Implement visual-fill-column, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 15b5cd1410 007/137: Remove option to use a fraction for `visual-fill-column-width'., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column a017cb2a1e 013/137: Update version number to 1.2, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column ccecfac6ca 029/137: Handle window splitting.,
ELPA Syncer <=
- [nongnu] elpa/visual-fill-column 5e698470b6 038/137: Set window parameter properly in vfc-adjust-window, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 865c9b32ea 043/137: Merge pull request #16 from wbolster/patch-1, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 6c6074114d 068/137: Make visual-fill-column--adjust-frame global in `window-size-change-functions'., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column c8d61f0287 070/137: Take line number width into account., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column b3b953116b 046/137: Make `visual-fill-column-adjust-window' a public function., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 9a3a2ef3c7 074/137: Add Cask & ert-runner, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column da5a8d688a 066/137: Merge pull request #35 from yuhan0/patch-1, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 772d4b25ba 073/137: Merge pull request #38 from peterwvj/patch-1, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column b1a91caac6 075/137: Merge pull request #9 from xuchunyang/patch-1, ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 930c5b2c42 047/137: Add note about text size adjustments to README., ELPA Syncer, 2022/01/02