diff options
-rw-r--r-- | .SRCINFO | 30 | ||||
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | PKGBUILD | 42 | ||||
-rw-r--r-- | fix-smart-resize-with-x11-frame-borders.patch | 54 | ||||
-rw-r--r-- | font-width-fix.patch | 16 | ||||
-rw-r--r-- | line-spacing-fix.patch | 16 |
6 files changed, 53 insertions, 112 deletions
@@ -1,7 +1,7 @@ pkgbase = rxvt-unicode-patched pkgdesc = Unicode enabled rxvt-clone terminal emulator (urxvt) with fixed font spacing - pkgver = 9.22 - pkgrel = 10 + pkgver = 9.31 + pkgrel = 3 url = http://software.schmorp.de/pkg/rxvt-unicode.html arch = i686 arch = x86_64 @@ -10,25 +10,27 @@ pkgbase = rxvt-unicode-patched depends = perl depends = startup-notification depends = rxvt-unicode-terminfo + depends = libptytty optdepends = gtk2-perl: to use the urxvt-tabbed provides = rxvt-unicode conflicts = rxvt-unicode - source = http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-9.22.tar.bz2 + source = http://dist.schmorp.de/rxvt-unicode/rxvt-unicode-9.31.tar.bz2 source = urxvt.desktop source = urxvtc.desktop source = urxvt-tabbed.desktop source = font-width-fix.patch source = line-spacing-fix.patch - source = https://gist.githubusercontent.com/alexoj/df5bae7a4825cb596581/raw/75a1e75c2ae1ec5c0db68a29f8a6821e9e3d87a5/sgr-mouse-mode.patch - source = fix-smart-resize-with-x11-frame-borders.patch - sha1sums = e575b869782fbfed955f84f48b204ec888d91ba1 - sha1sums = b5a4507f85ebb7bac589db2e07d9bc40106720d9 - sha1sums = 62c4ffecfce6967def394dd4d418b68652372ea2 - sha1sums = cd204d608d114d39c80331efe0af0231ad6b7e18 - sha1sums = 01ee8f212add79a158dcd4ed78d0ea1324bdc59b - sha1sums = b7fde1c46af45e831828738874f14b092b1e795f - sha1sums = dfbc8729c545105eff21e20ef3a4a3841a68a192 - sha1sums = 6dfa49a211c48193c8d87fb9993ed459b2b4387b + sha256sums = aaa13fcbc149fe0f3f391f933279580f74a96fd312d6ed06b8ff03c2d46672e8 + sha256sums = 13b3ce60ef607b5c94c9e0e2aa5236781e7a4c1c69da2c0ea9ef30c52728ac69 + sha256sums = 9c1964776a1f7fe0ccfff937355e7dedca812c328e38970598bf2f62633ee121 + sha256sums = 1841d774887c4402f9fd431abc54776a914ac7f9d19cb1903035fb2afd6a79c4 + sha256sums = ee7ad6f56c22fa7379c1ac2594ff941bf7f99344152da0b813319d3dadd1395b + sha256sums = 8d5f2ee9dae827b7a99757fd5432416927a31cde2093e3ad1aefee0987d6ab8d + sha512sums = 4d14ecbbb62de1b1c717277f5aae5cfb536e11392f2d4b82c884c1713f437fce8e9dd69a328fa353a55d068d8ee4121a31900f45191acec172d5dc76652b6255 + sha512sums = cc363f2905cb58af0e7ab1c8532ccb1052b9689e257c7bd205a82fa3bc0adc2f6b9d90f2379ef5deaff5556806c9806090f7b2fc4d8ce1650504de6b211868c0 + sha512sums = ad936e502085b39993b48278c5b09b87ecf723a347bf15be82d9087d81d7e027b27c9c9e15481bb836c2da108a8e8e7ff2c78196e84141bdcf6230a0b54e29a4 + sha512sums = c4e77c7fda94494ccfecad683ec725054dafa4587d2876d5d0817abd87872fda2b18f4a90359c28bb9327b9d69ef76513c2c144533967e0c68c3eb4a4e457dab + sha512sums = 0336281f46e1fe0d8ce4abe7a9cd2de0d406c62afc9e63846526c72f88565e9bed9a97339104bb2d51af21fa11631dfdd6319f4c67b50514637c618f5dd85292 + sha512sums = a38be68512070af71245ac599611ef7eb91bdd4b6a405c651e2ad2260784dff5e20d57025e51b440814b1b9269322ef1cda45a482e6efe5c8e2ca8fdd6e883fa pkgname = rxvt-unicode-patched - diff --git a/Makefile b/Makefile deleted file mode 100644 index 7f9a3c3ec5f1..000000000000 --- a/Makefile +++ /dev/null @@ -1,7 +0,0 @@ -update: PKGBUILD .SRCINFO - -PKGBUILD: - updpkgsums - -.SRCINFO: PKGBUILD - makepkg --printsrcinfo > $@ @@ -1,4 +1,6 @@ -# Maintainer: Daniel Hahler <archlinux+aur@thequod.de> +# Maintainer: André Kugland <kugland@gmail.com> +# Contributor: Giorgi Kobakhidze <gk@koba.pvt.ge> +# Contributor: Daniel Hahler <archlinux+aur@thequod.de> # Contributor: Florian Bruhin (The-Compiler) <archlinux.org@the-compiler.org> # Contributor: Daniel Micay <danielmicay@gmail.com> # Contributor: Sébastien Luttringer <seblu@aur.archlinux.org> @@ -8,13 +10,13 @@ _pkgname=rxvt-unicode pkgname=rxvt-unicode-patched -pkgver=9.22 -pkgrel=10 +pkgver=9.31 +pkgrel=3 pkgdesc='Unicode enabled rxvt-clone terminal emulator (urxvt) with fixed font spacing' arch=('i686' 'x86_64') url='http://software.schmorp.de/pkg/rxvt-unicode.html' license=('GPL') -depends=('libxft' 'perl' 'startup-notification' 'rxvt-unicode-terminfo') +depends=('libxft' 'perl' 'startup-notification' 'rxvt-unicode-terminfo' 'libptytty') optdepends=('gtk2-perl: to use the urxvt-tabbed') provides=(rxvt-unicode) conflicts=(rxvt-unicode) @@ -24,25 +26,25 @@ source=(http://dist.schmorp.de/rxvt-unicode/$_pkgname-$pkgver.tar.bz2 'urxvt-tabbed.desktop' 'font-width-fix.patch' 'line-spacing-fix.patch' - 'https://gist.githubusercontent.com/alexoj/df5bae7a4825cb596581/raw/75a1e75c2ae1ec5c0db68a29f8a6821e9e3d87a5/sgr-mouse-mode.patch' - 'fix-smart-resize-with-x11-frame-borders.patch' # will be in 9.22+ ) -sha1sums=('e575b869782fbfed955f84f48b204ec888d91ba1' - 'b5a4507f85ebb7bac589db2e07d9bc40106720d9' - '62c4ffecfce6967def394dd4d418b68652372ea2' - 'cd204d608d114d39c80331efe0af0231ad6b7e18' - '01ee8f212add79a158dcd4ed78d0ea1324bdc59b' - 'b7fde1c46af45e831828738874f14b092b1e795f' - 'dfbc8729c545105eff21e20ef3a4a3841a68a192' - '6dfa49a211c48193c8d87fb9993ed459b2b4387b') +sha256sums=('aaa13fcbc149fe0f3f391f933279580f74a96fd312d6ed06b8ff03c2d46672e8' + '13b3ce60ef607b5c94c9e0e2aa5236781e7a4c1c69da2c0ea9ef30c52728ac69' + '9c1964776a1f7fe0ccfff937355e7dedca812c328e38970598bf2f62633ee121' + '1841d774887c4402f9fd431abc54776a914ac7f9d19cb1903035fb2afd6a79c4' + 'ee7ad6f56c22fa7379c1ac2594ff941bf7f99344152da0b813319d3dadd1395b' + '8d5f2ee9dae827b7a99757fd5432416927a31cde2093e3ad1aefee0987d6ab8d') +sha512sums=('4d14ecbbb62de1b1c717277f5aae5cfb536e11392f2d4b82c884c1713f437fce8e9dd69a328fa353a55d068d8ee4121a31900f45191acec172d5dc76652b6255' + 'cc363f2905cb58af0e7ab1c8532ccb1052b9689e257c7bd205a82fa3bc0adc2f6b9d90f2379ef5deaff5556806c9806090f7b2fc4d8ce1650504de6b211868c0' + 'ad936e502085b39993b48278c5b09b87ecf723a347bf15be82d9087d81d7e027b27c9c9e15481bb836c2da108a8e8e7ff2c78196e84141bdcf6230a0b54e29a4' + 'c4e77c7fda94494ccfecad683ec725054dafa4587d2876d5d0817abd87872fda2b18f4a90359c28bb9327b9d69ef76513c2c144533967e0c68c3eb4a4e457dab' + '0336281f46e1fe0d8ce4abe7a9cd2de0d406c62afc9e63846526c72f88565e9bed9a97339104bb2d51af21fa11631dfdd6319f4c67b50514637c618f5dd85292' + 'a38be68512070af71245ac599611ef7eb91bdd4b6a405c651e2ad2260784dff5e20d57025e51b440814b1b9269322ef1cda45a482e6efe5c8e2ca8fdd6e883fa') prepare() { cd $_pkgname-$pkgver patch -p0 -i ../font-width-fix.patch patch -p0 -i ../line-spacing-fix.patch - patch -p0 -i ../sgr-mouse-mode.patch - patch -p1 -i ../fix-smart-resize-with-x11-frame-borders.patch } build() { @@ -74,11 +76,14 @@ build() { --enable-xft \ --enable-xim \ --enable-xterm-scroll + + # workaround terminfo installation + sed -Eie '/(^[[:blank:]]+\/usr\/bin\/tic)/s//#&/g' doc/Makefile + make } package() { - # install freedesktop menu for _f in urxvt urxvtc urxvt-tabbed; do install -Dm644 $_f.desktop "$pkgdir/usr/share/applications/$_f.desktop" @@ -86,9 +91,6 @@ package() { cd $_pkgname-$pkgver - # workaround terminfo installation - export TERMINFO="$srcdir/terminfo" - install -d "$TERMINFO" make DESTDIR="$pkgdir" install # install the tabbing wrapper ( requires gtk2-perl! ) diff --git a/fix-smart-resize-with-x11-frame-borders.patch b/fix-smart-resize-with-x11-frame-borders.patch deleted file mode 100644 index 9311f9d70d8d..000000000000 --- a/fix-smart-resize-with-x11-frame-borders.patch +++ /dev/null @@ -1,54 +0,0 @@ -commit bec3f19 -Author: Emanuele Giaquinta <e.giaquinta@glauco.it> -Date: Tue Jun 28 21:56:17 2016 +0000 - - Fix invalid moves when smart resize is enabled and the wm uses X11 borders for the frame windows. - - Patch by Uli Schlachter. ---- - src/main.C | 25 +++++++++++++++++++++++-- - 1 file changed, 23 insertions(+), 2 deletions(-) - -diff --git a/src/main.C b/src/main.C -index 39aa5ec..5fa605e 100644 ---- a/src/main.C -+++ b/src/main.C -@@ -1054,6 +1054,25 @@ rxvt_term::alias_color (int dst, int src) - pix_colors[dst].set (this, rs[Rs_color + dst] = rs[Rs_color + src]); - } - -+#ifdef SMART_RESIZE -+static unsigned int -+get_parent_bw (Display *dpy, Window w) -+{ -+ int idummy; -+ unsigned int udummy; -+ Window wdummy, parent; -+ Window *children; -+ unsigned int nchildren, border_width; -+ -+ XQueryTree (dpy, w, &wdummy, &parent, &children, &nchildren); -+ XFree (children); -+ XGetGeometry (dpy, parent, &wdummy, &idummy, &idummy, -+ &udummy, &udummy, &border_width, &udummy); -+ -+ return border_width; -+} -+#endif -+ - /* -------------------------------------------------------------------- * - * - WINDOW RESIZING - * - * -------------------------------------------------------------------- */ -@@ -1098,8 +1117,10 @@ rxvt_term::resize_all_windows (unsigned int newwidth, unsigned int newheight, in - */ - if (x1 != x || y1 != y) - { -- x -= x1; -- y -= y1; -+ unsigned int border_width = get_parent_bw (dpy, parent); -+ -+ x -= x1 + border_width; -+ y -= y1 + border_width; - } - - x1 = (DisplayWidth (dpy, display->screen) - old_width ) / 2; diff --git a/font-width-fix.patch b/font-width-fix.patch index 811d9e615ab4..17829c26aa24 100644 --- a/font-width-fix.patch +++ b/font-width-fix.patch @@ -1,18 +1,18 @@ ---- src/rxvtfont.C.bukind 2007-11-30 14:36:33.000000000 +0600 -+++ src/rxvtfont.C 2007-11-30 14:39:29.000000000 +0600 -@@ -1171,12 +1171,21 @@ +--- src/rxvtfont.C.orig 2021-11-21 16:33:25.000000000 -0300 ++++ src/rxvtfont.C 2023-08-02 01:22:01.978928240 -0300 +@@ -1304,12 +1304,21 @@ XGlyphInfo g; XftTextExtents16 (disp, f, &ch, 1, &g); - -+/* + ++/* + * bukind: don't use g.width as a width of a character! + * instead use g.xOff, see e.g.: http://keithp.com/~keithp/render/Xft.tutorial + g.width -= g.x; - + int wcw = WCWIDTH (ch); if (wcw > 0) g.width = (g.width + wcw - 1) / wcw; - + if (width < g.width ) width = g.width; + */ + int wcw = WCWIDTH (ch); @@ -22,5 +22,3 @@ if (height < g.height ) height = g.height; if (glheight < g.height - g.y) glheight = g.height - g.y; } - - diff --git a/line-spacing-fix.patch b/line-spacing-fix.patch index 8431c4fa0cb4..6eced372bba4 100644 --- a/line-spacing-fix.patch +++ b/line-spacing-fix.patch @@ -1,9 +1,9 @@ ---- src/rxvtfont.C.orig 2011-07-20 22:19:29.878012201 -0300 -+++ src/rxvtfont.C 2011-07-20 22:19:33.634671723 -0300 -@@ -1237,11 +1237,22 @@ - - FT_Face face = XftLockFace (f); - +--- src/rxvtfont.C.orig 2023-08-02 01:24:19.511500140 -0300 ++++ src/rxvtfont.C 2023-08-02 01:24:19.834839535 -0300 +@@ -1276,11 +1276,22 @@ + break; + } + +/* + * use ascent, descent and height from XftFont *f instead of FT_Face face. + * this somehow reproduces the behaviour of the line height as seen on xterm. @@ -12,7 +12,7 @@ descent = (-face->size->metrics.descender + 63) >> 6; height = max (ascent + descent, (face->size->metrics.height + 63) >> 6); width = 0; - + + */ + + ascent = f->ascent; @@ -21,5 +21,5 @@ + width = 0; + bool scalable = face->face_flags & FT_FACE_FLAG_SCALABLE; - + XftUnlockFace (f); |