Mercurial > emacs
changeset 103308:49bdb788956d
* textmodes/two-column.el (2C-split): Call move-to-column, to
compensate for the 2007-10-19 change from next-line to
forward-line (Bug#3435). Account for fringe and scroll-bar when
setting 2C-window-width.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Thu, 04 Jun 2009 01:11:06 +0000 |
parents | e1566685f778 |
children | 87eafd3e9efc |
files | lisp/textmodes/two-column.el |
diffstat | 1 files changed, 12 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/textmodes/two-column.el Thu Jun 04 01:09:02 2009 +0000 +++ b/lisp/textmodes/two-column.el Thu Jun 04 01:11:06 2009 +0000 @@ -412,9 +412,9 @@ (erase-buffer)) (signal 'quit nil))) (let ((point (point)) - ; make next-line always come back to same column - (goal-column (current-column)) - ; a counter for empty lines in other buffer + ;; make next-line always come back to same column + (column (current-column)) + ;; a counter for empty lines in other buffer (n (1- (count-lines (point-min) (point)))) chars other) (save-excursion @@ -423,13 +423,17 @@ (skip-chars-forward " \t" point) (make-local-variable '2C-separator) (setq 2C-separator (buffer-substring (point) point) - 2C-window-width (current-column))) + 2C-window-width (+ (fringe-columns 'left) + (fringe-columns 'right) + (scroll-bar-columns 'left) + (scroll-bar-columns 'right) + (current-column)))) (2C-two-columns) (setq other (2C-other)) - ; now we're ready to actually split + ;; now we're ready to actually split (save-excursion (while (not (eobp)) - (if (not (and (= (current-column) goal-column) + (if (not (and (= (current-column) column) (string= chars (buffer-substring (point) (save-excursion @@ -448,7 +452,8 @@ (1+ (point))))) (delete-region point (point)) (setq n 0)) - (forward-line 1))))) + (forward-line 1) + (move-to-column column)))))