[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 1e9a122 2/7: Fix picture-mode wrt double-width char
From: |
Paul Eggert |
Subject: |
[Emacs-diffs] master 1e9a122 2/7: Fix picture-mode wrt double-width characters |
Date: |
Tue, 22 Mar 2016 00:06:00 +0000 |
branch: master
commit 1e9a1229b170a4b3b0e0ab4fc228b2281b42ec25
Author: Alan J Third <address@hidden>
Commit: Paul Eggert <address@hidden>
Fix picture-mode wrt double-width characters
* lisp/textmodes/picture.el (picture-insert): Check the width of
the character being replaced, not just that of the replacement.
(Bug#1808)
[This reapplies commit b70dba4e18514411ed38b5bbb846558158842ace,
which was inadvertently lost by merge commit
7823745acbe9b87eea2db4ef434e379fc903ec35.]
Copyright-paperwork-exempt: yes
---
lisp/textmodes/picture.el | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/lisp/textmodes/picture.el b/lisp/textmodes/picture.el
index 4aee273..b77f8e9 100644
--- a/lisp/textmodes/picture.el
+++ b/lisp/textmodes/picture.el
@@ -272,7 +272,11 @@ Use \"\\[command-apropos] picture-movement\" to see
commands which control motio
(or (eolp)
(let ((pos (point)))
(move-to-column col t)
- (delete-region pos (point)))))
+ (let ((old-width (string-width (buffer-substring pos (point)))))
+ (delete-region pos (point))
+ (when (> old-width width)
+ (insert-char ? (- old-width width))
+ (goto-char pos))))))
(insert ch)
(forward-char -1)
(picture-move))))
- [Emacs-diffs] master updated (5283593 -> 515ce25), Paul Eggert, 2016/03/21
- [Emacs-diffs] master 5a78876 5/7: In comment-dwim with style `extra-line', respect indent-tabs-mode., Paul Eggert, 2016/03/21
- [Emacs-diffs] master 515ce25 7/7: Don't confuse "::" with ":" when trying to parse member initializers., Paul Eggert, 2016/03/21
- [Emacs-diffs] master fa5c69c 1/7: ; * etc/NEWS: Remove unneeded text., Paul Eggert, 2016/03/21
- [Emacs-diffs] master 1e9a122 2/7: Fix picture-mode wrt double-width characters,
Paul Eggert <=
- [Emacs-diffs] master a17bdde 6/7: Ensure positive number of glyphs for margins of positive width, Paul Eggert, 2016/03/21
- [Emacs-diffs] master 05b6268 4/7: Merge doc fixes for 'random' lost in previous merge, Paul Eggert, 2016/03/21
- [Emacs-diffs] master a1f71da 3/7: Unhide the --no-line-directive option to 'etags', Paul Eggert, 2016/03/21