summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorRay Song2016-04-05 11:10:13 +0800
committerRay Song2016-04-05 11:10:13 +0800
commit0a717d7a13575713c212487b0168fabf41450008 (patch)
tree1efa2b857528a77c3e157691da2e663d8070280d
parent7209ffc81f4d349a6fe3527153588ae5aa49e66d (diff)
downloadaur-0a717d7a13575713c212487b0168fabf41450008.tar.gz
bump to 0.44.0
-rw-r--r--PKGBUILD13
-rw-r--r--fullwidth-emoji.patch62
2 files changed, 42 insertions, 33 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 35f816363728..3f92376625fc 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,26 +1,27 @@
-# $Id: PKGBUILD 161489 2016-02-13 22:22:08Z jelle $
+# $Id: PKGBUILD 161489 2016-04-05 22:22:08Z jelle $
# Maintainer: Ray Song <i@maskray.me>
pkgname=vte3-ng-fullwidth-emoji
-_basever=0.42.4
+_basever=0.44.0
pkgver=$_basever.a
pkgrel=1
pkgdesc="Enhanced Virtual Terminal Emulator widget for use with GTK3 (patched with support for fullwidth emoji)"
arch=('i686' 'x86_64')
license=('LGPL')
options=('!emptydirs')
-depends=('gtk3' 'vte-common')
+depends=('gtk3' 'vte-common' 'pcre2')
makedepends=('intltool' 'gobject-introspection' 'gtk3' 'vala' 'gtk-doc' 'gperf')
url="https://github.com/thestinger/vte-ng"
source=(https://github.com/thestinger/vte-ng/archive/$pkgver.tar.gz fullwidth-emoji.patch)
-sha256sums=('97f1572b1080614b9dcf261a8abe4c7bfd840f7dc91e9bb29ffe310525b28443'
- 'dfa3510b1c0839a337e1c12faa10b1a3049f0e44881d4ff2496eb0a3ad4335e1')
+sha256sums=('bfa4f4148a63e8b730ab272792f55d03c8afa632bb5c28a440e1a5a8134c4b1b'
+ '07a07525516576c34469a1ca9c554c740bc7fa89055a00002216fd6f89684785')
provides=(vte3=$_basever vte3-select-text=$_basever vte3-ng)
conflicts=(vte3 vte3-select-text vte3-ng)
replaces=(vte3-select-text vte3-ng)
prepare() {
- patch -p1 < ../fullwidth-emoji.patch
+ cd "vte-ng-$pkgver"
+ patch -p1 < $srcdir/fullwidth-emoji.patch
}
build() {
diff --git a/fullwidth-emoji.patch b/fullwidth-emoji.patch
index 15b28e9e5454..89ba62d84c32 100644
--- a/fullwidth-emoji.patch
+++ b/fullwidth-emoji.patch
@@ -1,5 +1,5 @@
---- a/vte-ng-0.42.4.a/src/vte.cc 2016-03-21 19:49:00.390775386 +0800
-+++ b/vte-ng-0.42.4.a/src/vte.cc 2016-03-21 19:50:22.627904117 +0800
+--- a/src/vte.cc 2016-03-21 19:49:00.390775386 +0800
++++ b/src/vte.cc 2016-03-21 19:50:22.627904117 +0800
@@ -206,6 +206,11 @@
return 0;
if (G_UNLIKELY (g_unichar_iswide (c)))
@@ -12,33 +12,41 @@
if (G_LIKELY (utf8_ambiguous_width == 1))
return 1;
if (G_UNLIKELY (g_unichar_iswide_cjk (c)))
---- a/vte-ng-0.42.4.a/src/vteseq.cc 2016-03-21 22:23:38.886288772 +0800
-+++ b/vte-ng-0.42.4.a/src/vteseq.cc 2016-03-21 23:02:19.447553445 +0800
-@@ -1533,12 +1533,23 @@
- static void
- vte_sequence_handler_backspace (VteTerminal *terminal, GValueArray *params)
+--- a/src/vteseq.cc 2016-04-05 10:56:49.875097322 +0800
++++ b/src/vteseq.cc 2016-04-05 10:56:39.522122540 +0800
+@@ -25,6 +25,7 @@
+ #ifdef HAVE_SYS_SYSLIMITS_H
+ #include <sys/syslimits.h>
+ #endif
++#include <termios.h>
+
+ #include <glib.h>
+
+@@ -1589,12 +1590,23 @@
+ void
+ VteTerminalPrivate::seq_backspace()
{
-+ struct termios tio;
- _vte_terminal_ensure_cursor_is_onscreen(terminal);
--
-- if (terminal->pvt->screen->cursor.col > 0) {
-- /* There's room to move left, so do so. */
-+ g_assert(tcgetattr(vte_pty_get_fd(terminal->pvt->pty), &tio) == 0);
-+ if (tio.c_lflag & ICANON && tio.c_iflag & IUTF8) {
-+ VteRowData *rowdata = _vte_terminal_ensure_row(terminal);
-+ int col = terminal->pvt->screen->cursor.col;
-+ if (col == 0)
-+ ;
-+ else if (col > rowdata->len)
-+ col--;
-+ else
-+ col = MAX(col - rowdata->cells[col-1].attr.columns, 0);
-+ terminal->pvt->screen->cursor.col = col;
-+ } else if (terminal->pvt->screen->cursor.col > 0) {
-+ /* There's room to move left, so do so. */
- terminal->pvt->screen->cursor.col--;
+- ensure_cursor_is_onscreen();
++ ensure_cursor_is_onscreen();
+
+- if (m_screen->cursor.col > 0) {
++ struct termios tio;
++ g_assert(tcgetattr(vte_pty_get_fd(m_pty), &tio) == 0);
++ if (tio.c_lflag & ICANON && tio.c_iflag & IUTF8) {
++ VteRowData *rowdata = ensure_row();
++ int col = m_screen->cursor.col;
++ if (col == 0)
++ ;
++ else if (col > rowdata->len)
++ col--;
++ else
++ col = MAX(col - rowdata->cells[col-1].attr.columns, 0);
++ m_screen->cursor.col = col;
++ } else if (m_screen->cursor.col > 0)
+ /* There's room to move left, so do so. */
+- m_screen->cursor.col--;
- }
-+ }
++ m_screen->cursor.col--;
}
/* Cursor left N columns. */