1
0
forked from extern/nix-config

PKGBUILDs: Remove tari-urxvt

It turns out that kitty has support to change all of its colors
independently from the current terminal with a simple command. This
was the only issue I had with making pywal and kitty work together,
so I'm glad I found it.

Additionally, kitty supports DPI changes immediately (at least with
xrdb). There is no need to detach a session and open a new terminal
since kitty will handle DPI changes automatically, compared to other
terminals like urxvt, which would require a new instance. Even then,
the border padding for urxvt is not adjusted to the new DPI; kitty
is simply the way to go if your monitor setup is non-trivial.

As a side note, the kitty documentation is very good. I highly
recommend reading it if you plan to use kitty (which you should).
This commit is contained in:
Donovan Glover 2018-11-15 17:27:47 -05:00
parent 823a1f4728
commit 4387ab119c
No known key found for this signature in database
GPG Key ID: EA7408A77AE1BE65
6 changed files with 0 additions and 275 deletions

View File

@ -1,70 +0,0 @@
_urxvtver='9.22'
_urxvt="rxvt-unicode-${_urxvtver}"
pkgname=tari-urxvt
pkgver=0.1.0
pkgrel=1
pkgdesc="The popular terminal emulator with image support through w3m."
arch=('any')
provides=('rxvt-unicode')
conflicts=('rxvt-unicode')
depends=('libxft' 'perl' 'startup-notification' 'rxvt-unicode-terminfo' 'w3m')
source=('urxvtc.desktop' 'font-width-fix.patch' 'line-spacing-fix.patch'
'sgr-mouse-mode.patch' 'fix-smart-resize-with-x11-frame-borders.patch'
"http://dist.schmorp.de/rxvt-unicode/${_urxvt}.tar.bz2")
sha256sums=('9c1964776a1f7fe0ccfff937355e7dedca812c328e38970598bf2f62633ee121'
'4aa9d068e80413da25cef227f6246c41d42e3e4fe6507afd0f61ca4f690a674a'
'adba89fdbf6a84564d54f22eed0f62c05470d76c29f1e811dd3d34f380646fdd'
'aa87121fc41e80c5c56740b1bc98e965920463e04aae5c0b2b6717d38162479f'
'927299576f5c9eae8820ba5de8b452f00c4a241f5dda32b6c60fd2d5c98da0b1'
'e94628e9bcfa0adb1115d83649f898d6edb4baced44f5d5b769c2eeb8b95addd')
prepare() {
cd "${_urxvt}"
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() {
cd "${_urxvt}"
./configure \
--prefix=/usr \
--enable-256-color \
--enable-combining \
--enable-fading \
--enable-font-styles \
--enable-iso14755 \
--enable-keepscrolling \
--enable-lastlog \
--enable-mousewheel \
--enable-next-scroll \
--enable-perl \
--enable-pointer-blank \
--enable-rxvt-scroll \
--enable-selectionscrolling \
--enable-slipwheeling \
--enable-smart-resize \
--enable-startup-notification \
--enable-transparency \
--enable-unicode3 \
--enable-utmp \
--enable-wtmp \
--enable-xft \
--enable-xim \
--enable-xterm-scroll
make
}
package() {
install -Dm 644 urxvtc.desktop "$pkgdir"/usr/share/applications/urxvtc.desktop
cd "${_urxvt}"
export TERMINFO="$srcdir/terminfo"
install -d "$TERMINFO"
make DESTDIR="$pkgdir" install
}

View File

@ -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;

View File

@ -1,26 +0,0 @@
--- 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 @@
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);
+ if (wcw > 1) g.xOff = g.xOff / wcw;
+ if (width < g.xOff) width = g.xOff;
+
if (height < g.height ) height = g.height;
if (glheight < g.height - g.y) glheight = g.height - g.y;
}

View File

@ -1,25 +0,0 @@
--- 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);
+/*
+ * 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.
+
ascent = (face->size->metrics.ascender + 63) >> 6;
descent = (-face->size->metrics.descender + 63) >> 6;
height = max (ascent + descent, (face->size->metrics.height + 63) >> 6);
width = 0;
+ */
+
+ ascent = f->ascent;
+ descent = f->descent;
+ height = max (ascent + descent, f->height);
+ width = 0;
+
bool scalable = face->face_flags & FT_FACE_FLAG_SCALABLE;
XftUnlockFace (f);

View File

@ -1,90 +0,0 @@
--- src/command.C 2014-12-13 13:22:09.000000000 +0100
+++ src/command.C 2016-01-13 04:50:39.161862513 +0100
@@ -1280,6 +1280,8 @@
int x, y;
int code = 32;
+ if (priv_modes & PrivMode_ExtMouseSgr) code = 0;
+
x = Pixel2Col (ev.x) + 1;
y = Pixel2Row (ev.y) + 1;
@@ -1293,11 +1295,18 @@
code += 32;
}
- if (MEvent.button == AnyButton)
+ if (!(priv_modes & PrivMode_ExtMouseSgr) && MEvent.button == AnyButton)
button_number = 3;
else
{
- button_number = MEvent.button - Button1;
+ if (ev.type == MotionNotify) {
+ if (ev.state & Button1Mask) button_number = 0;
+ else if (ev.state & Button2Mask) button_number = 1;
+ else if (ev.state & Button3Mask) button_number = 2;
+ else return;
+ } else {
+ button_number = ev.button - Button1;
+ }
/* add 0x3D for wheel events, like xterm does */
if (button_number >= 3)
button_number += 64 - 3;
@@ -1347,16 +1356,22 @@
#endif
#if ENABLE_FRILLS
+ if (priv_modes & PrivMode_ExtMouseSgr)
+ tt_printf ("\033[<%d;%d;%d%c",
+ code + button_number + key_state,
+ x,
+ y,
+ (ev.type == ButtonRelease ? 'm' : 'M'));
- if (priv_modes & PrivMode_ExtMouseRight)
+ else if (priv_modes & PrivMode_ExtMouseRight)
tt_printf ("\033[%d;%d;%dM",
code + button_number + key_state,
x,
y);
else if (priv_modes & PrivMode_ExtModeMouse)
tt_printf ("\033[M%c%lc%lc",
code + button_number + key_state,
wint_t (32 + x),
wint_t (32 + y));
else
#endif
tt_printf ("\033[M%c%c%c",
@@ -2908,7 +2913,7 @@
scr_soft_reset ();
static const int pm_h[] = { 7, 25 };
- static const int pm_l[] = { 1, 3, 4, 5, 6, 9, 66, 1000, 1001, 1005, 1015, 1049 };
+ static const int pm_l[] = { 1, 3, 4, 5, 6, 9, 66, 1000, 1001, 1002, 1003, 1005, 1006, 1015, 1049 };
process_terminal_mode ('h', 0, ecb_array_length (pm_h), pm_h);
process_terminal_mode ('l', 0, ecb_array_length (pm_l), pm_l);
@@ -3713,13 +3718,14 @@
{ 1002, PrivMode_MouseBtnEvent },
{ 1003, PrivMode_MouseAnyEvent },
#if ENABLE_FRILLS
{ 1005, PrivMode_ExtModeMouse },
+ { 1006, PrivMode_ExtMouseSgr },
#endif
{ 1010, PrivMode_TtyOutputInh }, // rxvt extension
{ 1011, PrivMode_Keypress }, // rxvt extension
#if ENABLE_FRILLS
{ 1015, PrivMode_ExtMouseRight }, // urxvt extension of 1005
#endif
// 1035 enable modifiers for alt, numlock NYI
// 1036 send ESC for meta keys NYI
// 1037 send DEL for keypad delete NYI
--- src/rxvt.h 2014-12-17 16:33:08.000000000 +0100
+++ src/rxvt.h 2016-01-13 03:42:31.508911380 +0100
@@ -644,6 +644,7 @@
#define PrivMode_ExtModeMouse (1UL<<23) // xterm pseudo-utf-8 hack
#define PrivMode_ExtMouseRight (1UL<<24) // xterm pseudo-utf-8, but works in non-utf-8-locales
#define PrivMode_BlinkingCursor (1UL<<25)
+#define PrivMode_ExtMouseSgr (1UL<<26) // sgr mouse extension
#define PrivMode_mouse_report (PrivMode_MouseX10|PrivMode_MouseX11|PrivMode_MouseBtnEvent|PrivMode_MouseAnyEvent)

View File

@ -1,10 +0,0 @@
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=urxvt (client)
Comment=An unicode capable rxvt clone client for urxvtd
Exec=urxvtc
Icon=terminal
Terminal=false
Type=Application
Categories=Application;System;TerminalEmulator;