rxvt-unicode: nuevo

Esta es una versión custom en la que se le han eliminado funciones que no se utilizan
This commit is contained in:
Tuxliban Torvalds 2021-12-26 14:42:32 -06:00
parent 11da31109a
commit 9b874f5083
5 changed files with 165 additions and 0 deletions

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -0,0 +1,26 @@
--- a/src/rxvtfont.C.bukind 2007-11-30 14:36:33.000000000 +0600
+++ b/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

@ -0,0 +1,25 @@
--- a/src/rxvtfont.C 2011-07-20 22:19:29.878012201 -0300
+++ b/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

@ -0,0 +1,104 @@
# Template file for 'rxvt-unicode'
pkgname=rxvt-unicode
version=9.30
revision=2
build_style=gnu-configure
configure_args="
--enable-xft --enable-xim --disable-fallback --disable-pixbuf --disable-startup-notification
--disable-transparency --disable-rxvt-scroll --disable-next-scroll --disable-xterm-scroll
--disable-keepscrolling --disable-text-blink --disable-pointer-blank --disable-iso14755
--disable-8bitctrls --without-codesets --disable-smart-resize --enable-256-color
--with-terminfo=/usr/share/terminfo --with-term=rxvt-unicode-256color"
hostmakedepends="pkg-config perl"
makedepends="xorgproto fontconfig-devel libXrender-devel libXft-devel
libSM-devel libXt-devel libptytty-devel perl"
depends="ncurses rxvt-unicode-terminfo-${version}_${revision}"
short_desc="Terminal emulator supporting Xft fonts and Unicode"
maintainer="Tuxliban Torvalds <tenshalito@gmail.com>"
license="GPL-3.0-or-later"
homepage="http://software.schmorp.de/pkg/rxvt-unicode.html"
distfiles="http://dist.schmorp.de/${pkgname}/${pkgname}-${version}.tar.bz2"
checksum=fe1c93d12f385876457a989fc3ae05c0915d2692efc59289d0f70fabe5b44d2d
##### Lista de funciones #####
# --with-term: Cambia la variable de entorno de la terminal al nombre
# especificado
# --disable-everything: Desactiva todas las funciones excepto las especificadas
# explícitamente
# --enable-slipwheeling:Agregar soporte para el desplazamiento continuo
# (usando la rueda del mouse como acelerador) mientras se mantiene
# presionada la tecla de control. Esta opción requiere que también
# se especifique --enable-mousewheel.
# --enable.mousewheel: Agregar soporte para el desplazamiento a través de la rueda
# del mouse o los botones 4 y 5
# --enable-selectionscrolling: Agregar soporte para el desplazamiento cuando la
# selección se mueve a la parte superior o inferior de la pantalla
# --enable-fading: Agregar soporte para atenuar el texto cuando se pierde el enfoque.
# --enable-combining: Habilitar la composición automática de la combinación de caracteres
# en caracteres compuestos. Esto es necesario para ver correctamente el texto
# donde los acentos están codificados como caracteres Unicode separados
# --enable-xim: Agregar soporte para el protocolo XIM (X Input Method). Esto permite utilizar
# métodos de entrada alternativos (por ejemplo, kinput2) y también configurará
# correctamente la entrada para las personas que utilizan teclas muertas o teclas
# de composición
# --enable-font-styles: Agregar soporte para negrita, cursiva y negrita cursiva
# --enable-perl: Activar soporte de plugins perl
# --enable-resources: Activa soporte para la verificación de recursos
# --enable-xft: Agregar soporte para fuentes Xft (anti-aliased, entre otras). Las fuentes
# Xft son más lentas y requieren mucha memoria siempre y cuando no las use
# --without-codesets: desactiva la función de compilar para admitir grupos de conjuntos de códigos
# (codificación) adicionales. Estas tablas de conjuntos de códigos se utilizan para
# controlar las fuentes principales de X11, no son necesarias para las fuentes Xft,
# aunque tenerlas compiladas permite que rxvt-unicode elija fuentes de reemplazo de manera
# más inteligente
# --disable-text-blink: Desactiva el soporte para texto parpadeante
# --enable-256-color: Forza el uso del llamado modo de 256 colores, para evitar aplicaciones con errores
# que no admiten termcap/terminfo
_cross_perl() {
if [ "$CROSS_BUILD" ]; then
sed -e "s#/usr/lib#${XBPS_CROSS_BASE}\0#g" \
-e "s#/usr/share#${XBPS_CROSS_BASE}\0#g" \
-e "s# -m[^ ]*##g"
else
cat
fi
}
do_configure() {
if [ "$build_option_perl" ]; then
./configure $configure_args \
PERL=perl \
PERL_O=rxvtperl.o \
PERLFLAGS="$(perl -MExtUtils::Embed -e ccopts | _cross_perl)" \
PERLLIB="$(perl -MExtUtils::Embed -e ldopts | _cross_perl)" \
PERLPRIVLIBEXP="$(perl -MConfig -e 'print $Config{privlibexp}' | _cross_perl)"
else
./configure $configure_args
fi
}
pre_configure() {
if [ "$build_option_perl" ]; then
sed -i 's/rxvt_perl_link=no/rxvt_perl_link=yes/' configure
sed -i '/PERLFLAGS=/d' configure
fi
}
pre_install() {
export TERMINFO="${DESTDIR}/usr/share/terminfo"
mkdir -p $TERMINFO
}
post_install() {
vinstall doc/etc/rxvt-unicode.terminfo 644 usr/share/terminfo/r
vinstall ${FILESDIR}/${pkgname}.desktop 644 usr/share/applications
vinstall ${FILESDIR}/${pkgname}.png 644 usr/share/pixmaps
}
rxvt-unicode-terminfo_package() {
short_desc+=" - terminfo data"
pkg_install() {
vmove usr/share/terminfo
}
}