annotate admin/diff-tar-files @ 108750:3339da3cfeb3

Redesign bidi-aware edge positions of glyph rows, fix bug #6036. dispextern.h (struct glyph_row): New members minpos and maxpos. (MATRIX_ROW_START_CHARPOS, MATRIX_ROW_START_BYTEPOS) (MATRIX_ROW_END_CHARPOS, MATRIX_ROW_END_BYTEPOS): Reference minpos and maxpos members instead of start.pos and end.pos, respectively. xdisp.c (display_line): Compare IT_CHARPOS with the position in row->start.pos, rather than with MATRIX_ROW_START_CHARPOS. (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS. (try_window_reusing_current_matrix, try_window_id): Use ROW->minpos rather than ROW->start.pos. (init_from_display_pos, init_iterator): Use EMACS_INT for character and byte positions. (find_row_edges): Renamed from find_row_end. Accept additional arguments for minimum and maximum buffer positions seen by display_line for this row. Don't use iterator to find the position following the maximum one; instead, increment the position found by display_line directly. Fix logic; eol_pos should be tested before the rest. Handle the case of characters delivered from display vector (bug#6036). Fix tests related to it->method. Handle the truncated_on_right_p rows. (RECORD_MAX_MIN_POS): New macro. (display_line): Use it to record the minimum and maximum buffer positions for glyphs in the row being assembled. Record the position of the newline that terminates the line. If word wrap is in effect, restore minimum and maximum positions seen up to the wrap point, when iterator returns to it. (try_window_reusing_current_matrix): Give up if in bidi-reordered row and cursor not already at point. Restore original pre-bidi code for unidirectional buffers. dispnew.c (increment_row_positions, check_matrix_invariants): Increment and check row->start.pos and row->end.pos, in addition to MATRIX_ROW_START_CHARPOS and MATRIX_ROW_END_CHARPOS. .gdbinit (prowlims): Display row->minpos and row->maxpos. Display truncated_on_left_p and truncated_on_right_p flags. Formatting fixes. (pmtxrows): Display the ordinal number of each row. Don't display rows beyond the last one. bidi.c (bidi_cache_iterator_state): Don't zero out new_paragraph: it is not copied by bidi_copy_it.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 22 May 2010 22:32:21 +0300
parents 1d1d5d9bd884
children 376148b31b5e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1 #! /bin/sh
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
2
106815
1d1d5d9bd884 Add 2010 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 100971
diff changeset
3 # Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
75348
3d45362f1d38 Add 2007 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 74439
diff changeset
4 # Free Software Foundation, Inc.
94833
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
5
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
6 # This file is part of GNU Emacs.
94833
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
7
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
8 # GNU Emacs is free software: you can redistribute it and/or modify
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
9 # it under the terms of the GNU General Public License as published by
94833
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
10 # the Free Software Foundation, either version 3 of the License, or
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
11 # (at your option) any later version.
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
12
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
13 # GNU Emacs is distributed in the hope that it will be useful,
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
16 # GNU General Public License for more details.
94833
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
17
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
18 # You should have received a copy of the GNU General Public License
94833
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
19 # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
e6db9ee945b8 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79744
diff changeset
20
39058
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
21
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
22 if [ $# != 2 ]; then
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
23 cat <<EOF
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
24 Usage: $0 OLD-TAR NEW-TAR
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
25
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
26 Print a diff of the files in OLD-TAR and NEW-TAR. Used for checking
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
27 the contents of Emacs tar files.
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
28 EOF
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
29 exit 1;
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
30 fi
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
31
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
32 old_tar=$1
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
33 new_tar=$2
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
34
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
35 old_tmp=/tmp/old.$$
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
36 new_tmp=/tmp/new.$$
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
37 trap "rm -f $old_tmp $new_tmp; exit 1" 1 2 15
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
38
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
39 tar tzf $old_tar | sed -e 's,^[^/]*,,' | sort > $old_tmp
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
40 tar tzf $new_tar | sed -e 's,^[^/]*,,' | sort > $new_tmp
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
41 diff -u $old_tmp $new_tmp
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
42 rm -f $new_tmp $old_tmp
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
43
c296bfdefcc3 *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
44
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 39058
diff changeset
45 # arch-tag: ef2c96e2-ea67-4668-925c-d9a6f3d205cf