annotate src/installman.sh @ 34686:83875247fbc0 v9.1.0224

patch 9.1.0224: cursor may move too many lines over "right" & "below" virt text Commit: https://github.com/vim/vim/commit/515f734e687f28f7199b2a8042197624d9f3ec15 Author: Dylan Thacker-Smith <dylan.ah.smith@gmail.com> Date: Thu Mar 28 12:01:14 2024 +0100 patch 9.1.0224: cursor may move too many lines over "right" & "below" virt text Problem: If a line has "right" & "below" virtual text properties, where the "below" property may be stored first due to lack of ordering between them, then the line height is calculated to be 1 more and causes the cursor to far over the line. Solution: Remove some unnecessary setting of a `next_right_goes_below = TRUE` flag for "below" and "above" text properties. (Dylan Thacker-Smith) I modified a regression test I recently added to cover this case, leveraging the fact that "after", "right" & "below" text properties are being stored in the reverse of the order they are added in. The previous version of this regression test was crafted to workaround this issue so it can be addressed by this separate patch. closes: #14317 Signed-off-by: Dylan Thacker-Smith <dylan.ah.smith@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Mar 2024 12:15:03 +0100
parents a7b8f78dd868
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
1 #! /bin/sh
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
2 # installman.sh --- install or uninstall manpages for Vim
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
3 #
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
4 # arguments:
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
5 # 1 what: "install", "uninstall" or "xxd"
856
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
6 # 2 target directory e.g., "/usr/local/man/it/man1"
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
7 # 3 language addition e.g., "" or "-it"
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
8 # 4 vim location as used in manual pages e.g., "/usr/local/share/vim"
16378
3d6b282e2d6e patch 8.1.1194: typos and small problems in source files
Bram Moolenaar <Bram@vim.org>
parents: 14415
diff changeset
9 # 5 runtime dir for menu.vim et al. e.g., "/usr/local/share/vim/vim81"
856
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
10 # 6 runtime dir for global vimrc file e.g., "/usr/local/share/vim"
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
11 # 7 source dir for help files e.g., "../runtime/doc"
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
12 # 8 mode bits for manpages e.g., "644"
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
13 # 9 vim exe name e.g., "vim"
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
14 # 10 name of vimdiff exe e.g., "vimdiff"
8cd729851562 updated for version 7.0g
vimboss
parents: 819
diff changeset
15 # 11 name of evim exe e.g., "evim"
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
16
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
17 errstatus=0
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
18
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
19 what=$1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
20 destdir=$2
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
21 langadd=$3
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
22 vimloc=$4
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
23 scriptloc=$5
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
24 vimrcloc=$6
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
25 helpsource=$7
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
26 manmod=$8
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
27 exename=$9
819
23f82b5d2814 updated for version 7.0c10
vimboss
parents: 201
diff changeset
28 # older shells don't support ${10}
23f82b5d2814 updated for version 7.0c10
vimboss
parents: 201
diff changeset
29 shift
23f82b5d2814 updated for version 7.0c10
vimboss
parents: 201
diff changeset
30 vimdiffname=$9
23f82b5d2814 updated for version 7.0c10
vimboss
parents: 201
diff changeset
31 shift
23f82b5d2814 updated for version 7.0c10
vimboss
parents: 201
diff changeset
32 evimname=$9
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
33
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
34 helpsubloc=$scriptloc/doc
1698
f4f8014d516e updated for version 7.2c-000
vimboss
parents: 856
diff changeset
35 printsubloc=$scriptloc/print
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
36 synsubloc=$scriptloc/syntax
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
37 tutorsubloc=$scriptloc/tutor
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
38
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
39 if test $what = "install" -o $what = "xxd"; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
40 if test ! -d $destdir; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
41 echo creating $destdir
11382
3f399c28e4af patch 8.0.0576: can't build when configure choses "install-sh"
Christian Brabandt <cb@256bit.org>
parents: 5999
diff changeset
42 /bin/sh install-sh -c -d $destdir
27790
a7b8f78dd868 patch 8.2.4421: some installed files and directories have wrong permissions
Bram Moolenaar <Bram@vim.org>
parents: 16378
diff changeset
43 chmod 755 $destdir
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
44 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
45 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
46
5999
03f95f5e311b updated for version 7.4.340
Bram Moolenaar <bram@vim.org>
parents: 1698
diff changeset
47 # Note: setting LC_ALL to C is required to avoid illegal byte errors from sed
03f95f5e311b updated for version 7.4.340
Bram Moolenaar <bram@vim.org>
parents: 1698
diff changeset
48 # on some systems.
03f95f5e311b updated for version 7.4.340
Bram Moolenaar <bram@vim.org>
parents: 1698
diff changeset
49
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
50 if test $what = "install"; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
51 # vim.1
14415
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
52 if test -r $helpsource/vim$langadd.1; then
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
53 echo installing $destdir/$exename.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
54 LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
55 -e s+$vimloc/doc+$helpsubloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
56 -e s+$vimloc/print+$printsubloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
57 -e s+$vimloc/syntax+$synsubloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
58 -e s+$vimloc/tutor+$tutorsubloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
59 -e s+$vimloc/vimrc+$vimrcloc/vimrc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
60 -e s+$vimloc/gvimrc+$vimrcloc/gvimrc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
61 -e s+$vimloc/menu.vim+$scriptloc/menu.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
62 -e s+$vimloc/bugreport.vim+$scriptloc/bugreport.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
63 -e s+$vimloc/filetype.vim+$scriptloc/filetype.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
64 -e s+$vimloc/scripts.vim+$scriptloc/scripts.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
65 -e s+$vimloc/optwin.vim+$scriptloc/optwin.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
66 -e 's+$vimloc/\*.ps+$scriptloc/\*.ps+' \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
67 $helpsource/vim$langadd.1 > $destdir/$exename.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
68 chmod $manmod $destdir/$exename.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
69 fi
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
70
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
71 # vimtutor.1
14415
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
72 if test -r $helpsource/vimtutor$langadd.1; then
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
73 echo installing $destdir/$exename""tutor.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
74 LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
75 -e s+$vimloc/tutor+$tutorsubloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
76 $helpsource/vimtutor$langadd.1 > $destdir/$exename""tutor.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
77 chmod $manmod $destdir/$exename""tutor.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
78 fi
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
79
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
80 # vimdiff.1
14415
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
81 if test -r $helpsource/vimdiff$langadd.1; then
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
82 echo installing $destdir/$vimdiffname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
83 cp $helpsource/vimdiff$langadd.1 $destdir/$vimdiffname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
84 chmod $manmod $destdir/$vimdiffname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
85 fi
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
86
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
87 # evim.1
14415
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
88 if test -r $helpsource/evim$langadd.1; then
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
89 echo installing $destdir/$evimname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
90 LC_ALL=C sed -e s+/usr/local/lib/vim+$vimloc+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
91 -e s+$vimloc/evim.vim+$scriptloc/evim.vim+ \
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
92 $helpsource/evim$langadd.1 > $destdir/$evimname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
93 chmod $manmod $destdir/$evimname.1
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
94 fi
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
95 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
96
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
97 if test $what = "uninstall"; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
98 echo Checking for Vim manual pages in $destdir...
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
99 if test -r $destdir/$exename.1; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
100 echo deleting $destdir/$exename.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
101 rm -f $destdir/$exename.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
102 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
103 if test -r $destdir/$exename""tutor.1; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
104 echo deleting $destdir/$exename""tutor.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
105 rm -f $destdir/$exename""tutor.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
106 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
107 if test -r $destdir/$vimdiffname.1; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
108 echo deleting $destdir/$vimdiffname.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
109 rm -f $destdir/$vimdiffname.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
110 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
111 if test -r $destdir/$evimname.1; then
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
112 echo deleting $destdir/$evimname.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
113 rm -f $destdir/$evimname.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
114 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
115 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
116
14415
3d2bae2e6b80 patch 8.1.0222: errors are reported for "make install"
Christian Brabandt <cb@256bit.org>
parents: 11382
diff changeset
117 if test $what = "xxd" -a -r "$helpsource/xxd${langadd}.1"; then
40
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
118 echo installing $destdir/xxd.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
119 cp $helpsource/xxd$langadd.1 $destdir/xxd.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
120 chmod $manmod $destdir/xxd.1
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
121 fi
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
122
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
123 exit $errstatus
f1d2a58883b9 updated for version 7.0024
vimboss
parents:
diff changeset
124
201
300fac7c5a2b updated for version 7.0059
vimboss
parents: 40
diff changeset
125 # vim: set sw=3 sts=3 :